Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/.vale/gitlab/spelling-exceptions.txt31
-rw-r--r--doc/README.md2
-rw-r--r--doc/administration/auth/ldap/index.md9
-rw-r--r--doc/administration/consul.md2
-rw-r--r--doc/administration/gitaly/index.md2
-rw-r--r--doc/administration/integration/plantuml.md297
-rw-r--r--doc/administration/integration/terminal.md2
-rw-r--r--doc/administration/invalidate_markdown_cache.md4
-rw-r--r--doc/administration/issue_closing_pattern.md2
-rw-r--r--doc/administration/monitoring/index.md22
-rw-r--r--doc/administration/monitoring/performance/performance_bar.md4
-rw-r--r--doc/administration/object_storage.md12
-rw-r--r--doc/administration/packages/dependency_proxy.md4
-rw-r--r--doc/administration/packages/index.md4
-rw-r--r--doc/administration/pages/index.md11
-rw-r--r--doc/administration/raketasks/github_import.md4
-rw-r--r--doc/administration/reference_architectures/10k_users.md81
-rw-r--r--doc/administration/reference_architectures/25k_users.md45
-rw-r--r--doc/administration/reference_architectures/2k_users.md29
-rw-r--r--doc/administration/reference_architectures/3k_users.md46
-rw-r--r--doc/administration/reference_architectures/50k_users.md45
-rw-r--r--doc/administration/reference_architectures/5k_users.md45
-rw-r--r--doc/administration/repository_checks.md2
-rw-r--r--doc/administration/repository_storage_paths.md29
-rw-r--r--doc/administration/static_objects_external_storage.md2
-rw-r--r--doc/api/README.md2
-rw-r--r--doc/api/graphql/index.md5
-rw-r--r--doc/api/graphql/reference/gitlab_schema.graphql29539
-rw-r--r--doc/api/graphql/reference/gitlab_schema.json85944
-rw-r--r--doc/api/graphql/reference/index.md280
-rw-r--r--doc/api/invitations.md2
-rw-r--r--doc/api/merge_request_context_commits.md2
-rw-r--r--doc/api/merge_requests.md2
-rw-r--r--doc/api/notification_settings.md3
-rw-r--r--doc/api/openapi/openapi_interactive.md2
-rw-r--r--doc/api/project_snippets.md2
-rw-r--r--doc/api/project_templates.md4
-rw-r--r--doc/api/projects.md2
-rw-r--r--doc/api/services.md4
-rw-r--r--doc/api/snippets.md4
-rw-r--r--doc/api/wikis.md2
-rw-r--r--doc/ci/README.md3
-rw-r--r--doc/ci/ci_cd_for_external_repos/github_integration.md2
-rw-r--r--doc/ci/cloud_deployment/ecs/img/container-name.pngbin0 -> 8813 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/container-port-mapping.pngbin0 -> 8994 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/ecs-launch-status.pngbin0 -> 35530 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/ecs-policy.pngbin0 -> 10342 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/ecs-task-definitions.pngbin0 -> 27730 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/initial-pipeline.pngbin0 -> 8114 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/rails-template.pngbin0 -> 13497 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/registry.pngbin0 -> 5647 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/service-parameter.pngbin0 -> 20121 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/service-running.pngbin0 -> 5207 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/view-running-app-2.pngbin0 -> 5082 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/img/view-running-app.pngbin0 -> 5181 bytes
-rw-r--r--doc/ci/cloud_deployment/ecs/quick_start_guide.md250
-rw-r--r--doc/ci/cloud_deployment/index.md7
-rw-r--r--doc/ci/docker/index.md19
-rw-r--r--doc/ci/docker/using_docker_build.md4
-rw-r--r--doc/ci/docker/using_docker_images.md2
-rw-r--r--doc/ci/docker/using_kaniko.md2
-rw-r--r--doc/ci/environments/index.md2
-rw-r--r--doc/ci/environments/protected_environments.md2
-rw-r--r--doc/ci/examples/authenticating-with-hashicorp-vault/index.md4
-rw-r--r--doc/ci/examples/end_to_end_testing_webdriverio/index.md3
-rw-r--r--doc/ci/examples/laravel_with_gitlab_and_envoy/index.md4
-rw-r--r--doc/ci/jobs/index.md2
-rw-r--r--doc/ci/pipelines/settings.md30
-rw-r--r--doc/ci/quick_start/index.md13
-rw-r--r--doc/ci/review_apps/index.md4
-rw-r--r--doc/ci/ssh_keys/index.md6
-rw-r--r--doc/ci/triggers/README.md22
-rw-r--r--doc/ci/unit_test_reports.md2
-rw-r--r--doc/ci/yaml/README.md12
-rw-r--r--doc/development/agent/user_stories.md2
-rw-r--r--doc/development/api_graphql_styleguide.md2
-rw-r--r--doc/development/architecture.md12
-rw-r--r--doc/development/auto_devops.md4
-rw-r--r--doc/development/cicd/templates.md2
-rw-r--r--doc/development/code_intelligence/index.md2
-rw-r--r--doc/development/code_review.md4
-rw-r--r--doc/development/contributing/issue_workflow.md2
-rw-r--r--doc/development/contributing/style_guides.md14
-rw-r--r--doc/development/database_query_comments.md17
-rw-r--r--doc/development/distributed_tracing.md2
-rw-r--r--doc/development/documentation/testing.md6
-rw-r--r--doc/development/elasticsearch.md46
-rw-r--r--doc/development/fe_guide/accessibility.md193
-rw-r--r--doc/development/fe_guide/dark_mode.md4
-rw-r--r--doc/development/fe_guide/editor_lite.md2
-rw-r--r--doc/development/fe_guide/graphql.md20
-rw-r--r--doc/development/fe_guide/index.md2
-rw-r--r--doc/development/fe_guide/style/html.md23
-rw-r--r--doc/development/fe_guide/style/index.md2
-rw-r--r--doc/development/fe_guide/style/javascript.md2
-rw-r--r--doc/development/fe_guide/style/scss.md10
-rw-r--r--doc/development/fe_guide/style/vue.md36
-rw-r--r--doc/development/fe_guide/tooling.md85
-rw-r--r--doc/development/feature_flags/controls.md12
-rw-r--r--doc/development/features_inside_dot_gitlab.md4
-rw-r--r--doc/development/go_guide/index.md14
-rw-r--r--doc/development/graphql_guide/index.md2
-rw-r--r--doc/development/image_scaling.md2
-rw-r--r--doc/development/integrations/jira_connect.md2
-rw-r--r--doc/development/integrations/secure.md10
-rw-r--r--doc/development/integrations/secure_partner_integration.md2
-rw-r--r--doc/development/internal_api.md2
-rw-r--r--doc/development/namespaces_storage_statistics.md6
-rw-r--r--doc/development/new_fe_guide/development/components.md2
-rw-r--r--doc/development/performance.md8
-rw-r--r--doc/development/pipelines.md16
-rw-r--r--doc/development/prometheus.md8
-rw-r--r--doc/development/query_performance.md2
-rw-r--r--doc/development/redis.md9
-rw-r--r--doc/development/secure_coding_guidelines.md2
-rw-r--r--doc/development/sidekiq_style_guide.md2
-rw-r--r--doc/development/snowplow.md5
-rw-r--r--doc/development/sql.md14
-rw-r--r--doc/development/testing_guide/best_practices.md13
-rw-r--r--doc/development/testing_guide/frontend_testing.md6
-rw-r--r--doc/development/usage_ping.md165
-rw-r--r--doc/development/usage_ping/dictionary.md26151
-rw-r--r--doc/development/usage_ping/metrics_dictionary.md7
-rw-r--r--doc/development/wikis.md2
-rw-r--r--doc/gitlab-basics/index.md2
-rw-r--r--doc/install/index.md6
-rw-r--r--doc/integration/README.md2
-rw-r--r--doc/integration/akismet.md2
-rw-r--r--doc/integration/auth0.md2
-rw-r--r--doc/integration/azure.md106
-rw-r--r--doc/integration/bitbucket.md2
-rw-r--r--doc/integration/cas.md2
-rw-r--r--doc/integration/elasticsearch.md9
-rw-r--r--doc/integration/external-issue-tracker.md2
-rw-r--r--doc/integration/facebook.md2
-rw-r--r--doc/integration/github.md4
-rw-r--r--doc/integration/gitlab.md2
-rw-r--r--doc/integration/gitpod.md7
-rw-r--r--doc/integration/gmail_action_buttons_for_gitlab.md2
-rw-r--r--doc/integration/google.md2
-rw-r--r--doc/integration/jenkins_deprecated.md4
-rw-r--r--doc/integration/oauth2_generic.md2
-rw-r--r--doc/integration/omniauth.md2
-rw-r--r--doc/integration/openid_connect_provider.md2
-rw-r--r--doc/integration/recaptcha.md2
-rw-r--r--doc/integration/salesforce.md2
-rw-r--r--doc/integration/saml.md20
-rw-r--r--doc/integration/shibboleth.md2
-rw-r--r--doc/integration/slash_commands.md2
-rw-r--r--doc/integration/trello_power_up.md2
-rw-r--r--doc/integration/twitter.md2
-rw-r--r--doc/intro/index.md2
-rw-r--r--doc/operations/feature_flags.md6
-rw-r--r--doc/operations/incident_management/incidents.md2
-rw-r--r--doc/ssh/README.md310
-rw-r--r--doc/subscriptions/bronze_starter.md2
-rw-r--r--doc/topics/autodevops/customize.md60
-rw-r--r--doc/topics/autodevops/img/alexj_autodevops_min_v13_8.pngbin20836 -> 0 bytes
-rw-r--r--doc/topics/autodevops/img/kai_autodevops_min_v13_8.pngbin39770 -> 0 bytes
-rw-r--r--doc/topics/autodevops/index.md297
-rw-r--r--doc/topics/autodevops/quick_start_guide.md6
-rw-r--r--doc/topics/autodevops/requirements.md8
-rw-r--r--doc/topics/autodevops/stages.md28
-rw-r--r--doc/topics/autodevops/troubleshooting.md247
-rw-r--r--doc/topics/autodevops/upgrading_auto_deploy_dependencies.md8
-rw-r--r--doc/topics/autodevops/upgrading_postgresql.md2
-rw-r--r--doc/topics/git/index.md4
-rw-r--r--doc/topics/git/numerous_undo_possibilities_in_git/index.md2
-rw-r--r--doc/topics/git/tags.md41
-rw-r--r--doc/topics/git/troubleshooting_git.md2
-rw-r--r--doc/university/index.md6
-rw-r--r--doc/university/training/index.md1
-rw-r--r--doc/university/training/topics/tags.md52
-rw-r--r--doc/update/index.md61
-rw-r--r--doc/user/admin_area/analytics/usage_trends.md19
-rw-r--r--doc/user/admin_area/approving_users.md49
-rw-r--r--doc/user/admin_area/credentials_inventory.md2
-rw-r--r--doc/user/admin_area/index.md20
-rw-r--r--doc/user/admin_area/settings/account_and_limit_settings.md16
-rw-r--r--doc/user/admin_area/settings/index.md2
-rw-r--r--doc/user/admin_area/settings/project_integration_management.md2
-rw-r--r--doc/user/admin_area/settings/sign_up_restrictions.md44
-rw-r--r--doc/user/analytics/img/mr_mean_time_to_merge_metric_v13_9.pngbin0 -> 12299 bytes
-rw-r--r--doc/user/analytics/merge_request_analytics.md9
-rw-r--r--doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_collection_edit_variable.pngbin0 -> 22389 bytes
-rw-r--r--doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_environment_edit_variable.pngbin0 -> 17801 bytes
-rw-r--r--doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_request_edit.pngbin0 -> 21915 bytes
-rw-r--r--doc/user/application_security/api_fuzzing/index.md191
-rw-r--r--doc/user/application_security/configuration/index.md49
-rw-r--r--doc/user/application_security/container_scanning/index.md2
-rw-r--r--doc/user/application_security/dast/index.md11
-rw-r--r--doc/user/application_security/dependency_scanning/index.md11
-rw-r--r--doc/user/application_security/sast/index.md5
-rw-r--r--doc/user/application_security/secret_detection/index.md2
-rw-r--r--doc/user/application_security/security_dashboard/img/pipeline_security_dashboard_v13_10.pngbin0 -> 167108 bytes
-rw-r--r--doc/user/application_security/security_dashboard/index.md4
-rw-r--r--doc/user/application_security/vulnerabilities/index.md10
-rw-r--r--doc/user/application_security/vulnerability_report/index.md46
-rw-r--r--doc/user/clusters/agent/index.md72
-rw-r--r--doc/user/clusters/applications.md18
-rw-r--r--doc/user/compliance/license_compliance/index.md11
-rw-r--r--doc/user/discussions/index.md2
-rw-r--r--doc/user/group/img/groups.pngbin61507 -> 0 bytes
-rw-r--r--doc/user/group/import/index.md20
-rw-r--r--doc/user/group/index.md112
-rw-r--r--doc/user/group/repositories_analytics/index.md3
-rw-r--r--doc/user/group/roadmap/index.md2
-rw-r--r--doc/user/group/saml_sso/index.md2
-rw-r--r--doc/user/group/saml_sso/scim_setup.md4
-rw-r--r--doc/user/index.md4
-rw-r--r--doc/user/infrastructure/index.md4
-rw-r--r--doc/user/infrastructure/terraform_state.md10
-rw-r--r--doc/user/markdown.md2
-rw-r--r--doc/user/packages/go_proxy/index.md2
-rw-r--r--doc/user/packages/index.md4
-rw-r--r--doc/user/packages/npm_registry/index.md11
-rw-r--r--doc/user/packages/workflows/monorepo.md9
-rw-r--r--doc/user/profile/img/busy_indicator_note_header_v13_9.pngbin0 -> 69887 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_notes_v13_9.pngbin0 -> 102516 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_profile_page_v13_6.pngbin0 -> 78509 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_settings_menu_v13_6.pngbin0 -> 87157 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_sidebar_collapsed_v13_9.pngbin0 -> 23305 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_sidebar_v13_9.pngbin0 -> 59898 bytes
-rw-r--r--doc/user/profile/img/busy_indicator_user_popovers_v13_6.pngbin0 -> 105329 bytes
-rw-r--r--doc/user/profile/index.md20
-rw-r--r--doc/user/profile/notifications.md2
-rw-r--r--doc/user/profile/personal_access_tokens.md2
-rw-r--r--doc/user/profile/preferences.md8
-rw-r--r--doc/user/project/clusters/add_eks_clusters.md2
-rw-r--r--doc/user/project/clusters/index.md1
-rw-r--r--doc/user/project/clusters/protect/container_host_security/quick_start_guide.md2
-rw-r--r--doc/user/project/clusters/protect/container_network_security/quick_start_guide.md2
-rw-r--r--doc/user/project/code_intelligence.md5
-rw-r--r--doc/user/project/deploy_boards.md4
-rw-r--r--doc/user/project/deploy_tokens/index.md9
-rw-r--r--doc/user/project/description_templates.md73
-rw-r--r--doc/user/project/import/github.md4
-rw-r--r--doc/user/project/integrations/bamboo.md2
-rw-r--r--doc/user/project/integrations/bugzilla.md2
-rw-r--r--doc/user/project/integrations/custom_issue_tracker.md2
-rw-r--r--doc/user/project/integrations/discord_notifications.md2
-rw-r--r--doc/user/project/integrations/emails_on_push.md2
-rw-r--r--doc/user/project/integrations/github.md2
-rw-r--r--doc/user/project/integrations/hangouts_chat.md2
-rw-r--r--doc/user/project/integrations/hipchat.md2
-rw-r--r--doc/user/project/integrations/index.md2
-rw-r--r--doc/user/project/integrations/irker.md2
-rw-r--r--doc/user/project/integrations/jira.md20
-rw-r--r--doc/user/project/integrations/jira_cloud_configuration.md2
-rw-r--r--doc/user/project/integrations/jira_integrations.md2
-rw-r--r--doc/user/project/integrations/jira_server_configuration.md2
-rw-r--r--doc/user/project/integrations/mattermost.md2
-rw-r--r--doc/user/project/integrations/mattermost_slash_commands.md2
-rw-r--r--doc/user/project/integrations/microsoft_teams.md2
-rw-r--r--doc/user/project/integrations/mock_ci.md2
-rw-r--r--doc/user/project/integrations/overview.md2
-rw-r--r--doc/user/project/integrations/redmine.md2
-rw-r--r--doc/user/project/integrations/servicenow.md2
-rw-r--r--doc/user/project/integrations/services_templates.md2
-rw-r--r--doc/user/project/integrations/slack.md2
-rw-r--r--doc/user/project/integrations/unify_circuit.md2
-rw-r--r--doc/user/project/integrations/webex_teams.md2
-rw-r--r--doc/user/project/integrations/webhooks.md2
-rw-r--r--doc/user/project/integrations/youtrack.md2
-rw-r--r--doc/user/project/issue_board.md84
-rw-r--r--doc/user/project/issues/index.md2
-rw-r--r--doc/user/project/merge_requests/allow_collaboration.md2
-rw-r--r--doc/user/project/merge_requests/authorization_for_merge_requests.md2
-rw-r--r--doc/user/project/merge_requests/browser_performance_testing.md3
-rw-r--r--doc/user/project/merge_requests/code_quality.md3
-rw-r--r--doc/user/project/merge_requests/creating_merge_requests.md2
-rw-r--r--doc/user/project/merge_requests/getting_started.md45
-rw-r--r--doc/user/project/merge_requests/index.md4
-rw-r--r--doc/user/project/merge_requests/merge_request_approvals.md4
-rw-r--r--doc/user/project/merge_requests/merge_request_dependencies.md2
-rw-r--r--doc/user/project/merge_requests/merge_when_pipeline_succeeds.md2
-rw-r--r--doc/user/project/merge_requests/resolve_conflicts.md2
-rw-r--r--doc/user/project/merge_requests/revert_changes.md2
-rw-r--r--doc/user/project/merge_requests/reviewing_and_managing_merge_requests.md2
-rw-r--r--doc/user/project/merge_requests/work_in_progress_merge_requests.md2
-rw-r--r--doc/user/project/milestones/burndown_charts.md8
-rw-r--r--doc/user/project/pages/getting_started/pages_from_scratch.md2
-rw-r--r--doc/user/project/pages/index.md2
-rw-r--r--doc/user/project/repository/file_finder.md2
-rw-r--r--doc/user/project/repository/repository_mirroring.md32
-rw-r--r--doc/user/project/repository/web_editor.md2
-rw-r--r--doc/user/project/service_desk.md4
-rw-r--r--doc/user/project/settings/import_export.md2
-rw-r--r--doc/user/project/static_site_editor/index.md2
-rw-r--r--doc/user/project/web_ide/img/solarized_dark_theme_v13_1.pngbin117131 -> 43014 bytes
-rw-r--r--doc/user/project/web_ide/img/solarized_light_theme_v13_0.pngbin99981 -> 0 bytes
-rw-r--r--doc/user/project/web_ide/index.md15
-rw-r--r--doc/user/project/working_with_projects.md2
-rw-r--r--doc/user/search/index.md15
-rw-r--r--doc/user/snippets.md2
295 files changed, 29160 insertions, 117320 deletions
diff --git a/doc/.vale/gitlab/spelling-exceptions.txt b/doc/.vale/gitlab/spelling-exceptions.txt
index 375cecfdee4..88d1d2555f1 100644
--- a/doc/.vale/gitlab/spelling-exceptions.txt
+++ b/doc/.vale/gitlab/spelling-exceptions.txt
@@ -41,6 +41,7 @@ autoscales
autoscaling
awardable
awardables
+Ayoa
Axios
Azure
B-tree
@@ -56,6 +57,7 @@ backtracing
badging
Bamboo
Bazel
+Bhyve
Bitbucket
blockquote
blockquoted
@@ -89,6 +91,7 @@ Certbot
changeset
changesets
chai
+ChaosKube
chatbot
chatbots
ChatOps
@@ -111,6 +114,8 @@ Contentful
Corosync
Coursier
cron
+cronjob
+cronjobs
crons
crontab
crontabs
@@ -122,6 +127,8 @@ CrowdIn
CSV
cybersecurity
Dangerfile
+datasource
+datasources
datetime
Debian
Decompressor
@@ -280,6 +287,7 @@ kaniko
Karma
Kerberos
keyset
+keyspace
keytab
keytabs
Kibana
@@ -350,6 +358,7 @@ mixins
mockup
mockups
ModSecurity
+Monokai
monorepo
monorepos
multiline
@@ -373,6 +382,7 @@ nullable
Nurtch
nyc
OAuth
+Octokit
offboarded
offboarding
offboards
@@ -404,9 +414,11 @@ Poedit
polyfill
polyfills
pooler
+postfixed
postgres.ai
PostgreSQL
precompile
+precompiled
preconfigure
preconfigured
preconfigures
@@ -421,6 +433,7 @@ prepend
prepended
prepending
prepends
+prepopulated
Prettifier
Pritaly
Priyanka
@@ -443,6 +456,7 @@ queryable
Quicktime
Rackspace
Raspbian
+rbtrace
Rdoc
reachability
Realplayer
@@ -477,6 +491,7 @@ reinitialize
reinitializing
relicensing
remediations
+replicables
repmgr
repmgrd
repurposing
@@ -519,10 +534,12 @@ Salesforce
sandboxing
sanitization
sbt
+scalers
scatterplot
scatterplots
Schemastore
scrollable
+Semgrep
Sendmail
Sentry
serializer
@@ -538,11 +555,13 @@ Sidekiq
Silverlight
Sisense
Sitespeed
+skippable
Slack
Slackbot
Slony
smartcard
smartcards
+snapshotting
Sobelow
Solarized
Sourcegraph
@@ -561,6 +580,9 @@ strace
strikethrough
strikethroughs
stunnel
+stylelint
+subchart
+subcharts
subfolder
subfolders
subgraph
@@ -620,12 +642,14 @@ todos
tokenizer
Tokenizers
tokenizing
+tolerations
toolchain
toolchains
toolkit
toolkits
tooltip
tooltips
+transactionally
transpile
transpiled
transpiles
@@ -634,6 +658,7 @@ Trello
triaged
triages
triaging
+Trivy
truthy
Truststore
Twilio
@@ -665,6 +690,9 @@ unencoded
unencoder
unencodes
unencrypted
+unfollow
+unfollowed
+unfollows
Unicorn
unindexed
unlink
@@ -703,6 +731,7 @@ unreplicated
unresolve
unresolved
unresolving
+unreviewed
unsanitized
unschedule
unscoped
@@ -720,6 +749,7 @@ unstash
unstashed
unstashing
unsynced
+unsynchronized
untarred
untracked
untrusted
@@ -772,3 +802,4 @@ Yubico
Zeitwerk
Zendesk
zsh
+Zstandard
diff --git a/doc/README.md b/doc/README.md
index 4c4b0cd3a15..8dd6354b388 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -67,7 +67,7 @@ We have the following documentation to rapidly uplift your GitLab knowledge:
| Topic | Description |
|:--------------------------------------------------------------------------------------------------|:------------|
| [GitLab basics guides](gitlab-basics/index.md) | Start working on the command line and with GitLab. |
-| [GitLab workflow overview](https://about.gitlab.com/blog/2016/10/25/gitlab-workflow-an-overview/) | Enhance your workflow with the best of GitLab Workflow. |
+| [GitLab workflow overview](https://about.gitlab.com/topics/version-control/what-is-gitlab-workflow/) | Enhance your workflow with the best of GitLab Workflow. |
| [Get started with GitLab CI/CD](ci/quick_start/index.md) | Quickly implement GitLab CI/CD. |
| [Auto DevOps](topics/autodevops/index.md) | Learn more about Auto DevOps in GitLab. |
| [GitLab Markdown](user/markdown.md) | Advanced formatting system (GitLab Flavored Markdown). |
diff --git a/doc/administration/auth/ldap/index.md b/doc/administration/auth/ldap/index.md
index 466ae8e108c..4180c57e3c7 100644
--- a/doc/administration/auth/ldap/index.md
+++ b/doc/administration/auth/ldap/index.md
@@ -180,9 +180,16 @@ production:
| `allow_username_or_email_login` | If enabled, GitLab ignores everything after the first `@` in the LDAP username submitted by the user on sign-in. If you are using `uid: 'userPrincipalName'` on ActiveDirectory you need to disable this setting, because the userPrincipalName contains an `@`. | no | boolean |
| `block_auto_created_users` | To maintain tight control over the number of billable users on your GitLab installation, enable this setting to keep new users blocked until they have been cleared by an administrator (default: false). | no | boolean |
| `base` | Base where we can search for users. | yes | `'ou=people,dc=gitlab,dc=example'` or `'DC=mydomain,DC=com'` |
-| `user_filter` | Filter LDAP users. Format: [RFC 4515](https://tools.ietf.org/search/rfc4515) Note: GitLab does not support `omniauth-ldap`'s custom filter syntax. | no | `'(employeeType=developer)'` or `'(&(objectclass=user)(|(samaccountname=momo)(samaccountname=toto)))'` |
+| `user_filter` | Filter LDAP users. Format: [RFC 4515](https://tools.ietf.org/search/rfc4515) Note: GitLab does not support `omniauth-ldap`'s custom filter syntax. | no | For examples, read [Examples of user filters](#examples-of-user-filters). |
| `lowercase_usernames` | If lowercase_usernames is enabled, GitLab converts the name to lower case. | no | boolean |
+#### Examples of user filters
+
+Some examples of the `user_filter` field syntax:
+
+- `'(employeeType=developer)'`
+- `'(&(objectclass=user)(|(samaccountname=momo)(samaccountname=toto)))'`
+
### SSL Configuration Settings **(FREE SELF)**
| Setting | Description | Required | Examples |
diff --git a/doc/administration/consul.md b/doc/administration/consul.md
index dfc859e30c2..926267a414a 100644
--- a/doc/administration/consul.md
+++ b/doc/administration/consul.md
@@ -146,7 +146,7 @@ sudo gitlab-ctl restart consul
### Consul nodes unable to communicate
By default, Consul will attempt to
-[bind](https://www.consul.io/docs/agent/options.html#_bind) to `0.0.0.0`, but
+[bind](https://www.consul.io/docs/agent/options#_bind) to `0.0.0.0`, but
it will advertise the first private IP address on the node for other Consul nodes
to communicate with it. If the other nodes cannot communicate with a node on
this address, then the cluster will have a failed status.
diff --git a/doc/administration/gitaly/index.md b/doc/administration/gitaly/index.md
index f02b9b8fc1a..7bb99bd1018 100644
--- a/doc/administration/gitaly/index.md
+++ b/doc/administration/gitaly/index.md
@@ -816,7 +816,7 @@ exceed 1, and the concurrency limiter has no effect.
## Background Repository Optimization
-Empty directories and unneeded config settings may accumulate in a repository and
+Empty directories and unneeded configuration settings may accumulate in a repository and
slow down Git operations. Gitaly can schedule a daily background task with a maximum duration
to clean up these items and improve performance.
diff --git a/doc/administration/integration/plantuml.md b/doc/administration/integration/plantuml.md
index dbbe17cccc8..834f4047fdd 100644
--- a/doc/administration/integration/plantuml.md
+++ b/doc/administration/integration/plantuml.md
@@ -5,22 +5,94 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference, howto
---
-# PlantUML & GitLab **(FREE)**
-
-> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/8537) in GitLab 8.16.
+# PlantUML and GitLab **(FREE)**
When [PlantUML](https://plantuml.com) integration is enabled and configured in
-GitLab you can create diagrams in AsciiDoc and Markdown documents
-created in snippets, wikis, and repositories.
+GitLab, you can create diagrams in snippets, wikis, and repositories. To set up
+the integration, you must:
+
+1. [Configure your PlantUML server](#configure-your-plantuml-server).
+1. [Configure local PlantUML access](#configure-local-plantuml-access).
+1. [Configure PlantUML security](#configure-plantuml-security).
+1. [Enable the integration](#enable-plantuml-integration).
+
+After completing the integration, PlantUML converts `plantuml`
+blocks to an HTML image tag, with the source pointing to the PlantUML instance. The PlantUML
+diagram delimiters `@startuml`/`@enduml` aren't required, as these are replaced
+by the `plantuml` block:
+
+- **Markdown**
+
+ ````markdown
+ ```plantuml
+ Bob -> Alice : hello
+ Alice -> Bob : hi
+ ```
+ ````
+
+- **AsciiDoc**
+
+ ```plaintext
+ [plantuml, format="png", id="myDiagram", width="200px"]
+ ----
+ Bob->Alice : hello
+ Alice -> Bob : hi
+ ----
+ ```
+
+- **reStructuredText**
-## PlantUML Server
+ ```plaintext
+ .. plantuml::
+ :caption: Caption with **bold** and *italic*
+
+ Bob -> Alice: hello
+ Alice -> Bob: hi
+ ```
-Before you can enable PlantUML in GitLab; set up your own PlantUML
-server to generate the diagrams.
+ Although you can use the `uml::` directive for compatibility with
+ [`sphinxcontrib-plantuml`](https://pypi.org/project/sphinxcontrib-plantuml/),
+ GitLab supports only the `caption` option.
+
+If the PlantUML server is correctly configured, these examples should render a
+diagram instead of the code block:
+
+```plantuml
+Bob -> Alice : hello
+Alice -> Bob : hi
+```
+
+Inside the block you can add any of the diagrams PlantUML supports, such as:
+
+- [Activity](https://plantuml.com/activity-diagram-legacy)
+- [Class](https://plantuml.com/class-diagram)
+- [Component](https://plantuml.com/component-diagram)
+- [Object](https://plantuml.com/object-diagram)
+- [Sequence](https://plantuml.com/sequence-diagram)
+- [State](https://plantuml.com/state-diagram)
+- [Use Case](https://plantuml.com/use-case-diagram)
+
+You can add parameters to block definitions:
+
+- `format`: Can be either `png` (default) or `svg`. Use `svg` with care, as it's
+ not supported by all browsers, and isn't supported by Markdown.
+- `id`: A CSS ID added to the diagram HTML tag.
+- `width`: Width attribute added to the image tag.
+- `height`: Height attribute added to the image tag.
+
+Markdown does not support any parameters, and always uses PNG format.
+
+## Configure your PlantUML server
+
+Before you can enable PlantUML in GitLab, set up your own PlantUML
+server to generate the diagrams:
+
+- [In Docker](#docker).
+- [In Debian/Ubuntu](#debianubuntu).
### Docker
-With Docker, you can just run a container like this:
+To run a PlantUML container in Docker, run this command:
```shell
docker run -d --name plantuml -p 8080:8080 plantuml/plantuml-server:tomcat
@@ -29,8 +101,9 @@ docker run -d --name plantuml -p 8080:8080 plantuml/plantuml-server:tomcat
The **PlantUML URL** is the hostname of the server running the container.
When running GitLab in Docker, it must have access to the PlantUML container.
-You can achieve that by using [Docker Compose](https://docs.docker.com/compose/).
-A basic `docker-compose.yml` file could contain:
+To achieve that, use [Docker Compose](https://docs.docker.com/compose/).
+In this basic `docker-compose.yml` file, PlantUML is accessible to GitLab at the URL
+`http://plantuml:8080/`:
```yaml
version: "3"
@@ -46,37 +119,32 @@ services:
container_name: plantuml
```
-In this scenario, PlantUML is accessible to GitLab at the URL
-`http://plantuml:8080/`.
-
### Debian/Ubuntu
-You can also install and configure a PlantUML server in Debian/Ubuntu distributions using Tomcat.
+You can install and configure a PlantUML server in Debian/Ubuntu distributions
+using Tomcat:
-First you need to create a `plantuml.war` file from the source code:
+1. Run these commands to create a `plantuml.war` file from the source code:
-```shell
-sudo apt-get install graphviz openjdk-8-jdk git-core maven
-git clone https://github.com/plantuml/plantuml-server.git
-cd plantuml-server
-mvn package
-```
+ ```shell
+ sudo apt-get install graphviz openjdk-8-jdk git-core maven
+ git clone https://github.com/plantuml/plantuml-server.git
+ cd plantuml-server
+ mvn package
+ ```
-The above sequence of commands generates a `.war` file you can deploy with Tomcat:
+1. Deploy the `.war` file from the previous step with these commands:
-```shell
-sudo apt-get install tomcat8
-sudo cp target/plantuml.war /var/lib/tomcat8/webapps/plantuml.war
-sudo chown tomcat8:tomcat8 /var/lib/tomcat8/webapps/plantuml.war
-sudo service tomcat8 restart
-```
+ ```shell
+ sudo apt-get install tomcat8
+ sudo cp target/plantuml.war /var/lib/tomcat8/webapps/plantuml.war
+ sudo chown tomcat8:tomcat8 /var/lib/tomcat8/webapps/plantuml.war
+ sudo service tomcat8 restart
+ ```
-After the Tomcat service restarts, the PlantUML service is ready and
-listening for requests on port 8080:
-
-```plaintext
-http://localhost:8080/plantuml
-```
+The Tomcat service should restart. After the restart is complete, the
+PlantUML service is ready and listening for requests on port 8080:
+`http://localhost:8080/plantuml`
To change these defaults, edit the `/etc/tomcat8/server.xml` file.
@@ -85,40 +153,44 @@ The default URL is different when using this approach. The Docker-based image
makes the service available at the root URL, with no relative path. Adjust
the configuration below accordingly.
-### Making local PlantUML accessible using custom GitLab setup
+## Configure local PlantUML access
-The PlantUML server runs locally on your server, so it is not accessible
-externally by default. As such, it is necessary to catch external PlantUML
-calls and redirect them to the local server.
+The PlantUML server runs locally on your server, so it can't be accessed
+externally by default. Your server must catch external PlantUML
+calls to `https://gitlab.example.com/-/plantuml/` and redirect them to the
+local PlantUML server. Depending on your setup, the URL is either of the
+following:
-The idea is to redirect each call to `https://gitlab.example.com/-/plantuml/`
-to the local PlantUML server `http://plantuml:8080/` or `http://localhost:8080/plantuml/`, depending on your setup.
+- `http://plantuml:8080/`
+- `http://localhost:8080/plantuml/`
-To enable the redirection, add the following line in `/etc/gitlab/gitlab.rb`:
+If you're running [GitLab with TLS](https://docs.gitlab.com/omnibus/settings/ssl.html)
+you must configure this redirection, because PlantUML uses the insecure HTTP protocol.
+Newer browsers such as [Google Chrome 86+](https://www.chromestatus.com/feature/4926989725073408)
+don't load insecure HTTP resources on pages served over HTTPS.
-```ruby
-# Docker deployment
-nginx['custom_gitlab_server_config'] = "location /-/plantuml/ { \n proxy_cache off; \n proxy_pass http://plantuml:8080/; \n}\n"
+To enable this redirection:
-# Built from source
-nginx['custom_gitlab_server_config'] = "location /-/plantuml { \n rewrite ^/-/(plantuml.*) /$1 break;\n proxy_cache off; \n proxy_pass http://localhost:8080/plantuml; \n}\n"
-```
+1. Add the following line in `/etc/gitlab/gitlab.rb`, depending on your setup method:
-To activate the changes, run the following command:
+ ```ruby
+ # Docker deployment
+ nginx['custom_gitlab_server_config'] = "location /-/plantuml/ { \n proxy_cache off; \n proxy_pass http://plantuml:8080/; \n}\n"
-```shell
-sudo gitlab-ctl reconfigure
-```
+ # Built from source
+ nginx['custom_gitlab_server_config'] = "location /-/plantuml { \n rewrite ^/-/(plantuml.*) /$1 break;\n proxy_cache off; \n proxy_pass http://localhost:8080/plantuml; \n}\n"
+ ```
-Note that the redirection through GitLab must be configured
-when running [GitLab with TLS](https://docs.gitlab.com/omnibus/settings/ssl.html)
-due to PlantUML's use of the insecure HTTP protocol. Newer browsers such
-as [Google Chrome 86+](https://www.chromestatus.com/feature/4926989725073408)
-do not load insecure HTTP resources on a page served over HTTPS.
+1. To activate the changes, run the following command:
-### Security
+ ```shell
+ sudo gitlab-ctl reconfigure
+ ```
-PlantUML has features that allow fetching network resources.
+### Configure PlantUML security
+
+PlantUML has features that allow fetching network resources. If you self-host the
+PlantUML server, put network controls in place to isolate it.
```plaintext
@startuml
@@ -129,98 +201,29 @@ stop;
@enduml
```
-**If you self-host the PlantUML server, network controls should be put in place to isolate it.**
-
-## GitLab
+## Enable PlantUML integration
-You need to enable PlantUML integration from Settings under Admin Area. To do
-that, sign in with an Administrator account, and then do following:
+After configuring your local PlantUML server, you're ready to enable the PlantUML integration:
-1. In GitLab, go to **Admin Area > Settings > General**.
-1. Expand the **PlantUML** section.
+1. Sign in to GitLab as an [Administrator](../../user/permissions.md) user.
+1. In the top menu, click **{admin}** **Admin Area**.
+1. In the left sidebar, go to **Settings > General** and expand the **PlantUML** section.
1. Select the **Enable PlantUML** check box.
-1. Set the PlantUML instance as `https://gitlab.example.com/-/plantuml/`.
-
-NOTE:
-If you are using a PlantUML server running v1.2020.9 and
-above (for example, [plantuml.com](https://plantuml.com)), set the `PLANTUML_ENCODING`
-environment variable to enable the `deflate` compression. On Omnibus GitLab,
-this can be set in `/etc/gitlab.rb`:
-
-```ruby
-gitlab_rails['env'] = { 'PLANTUML_ENCODING' => 'deflate' }
-```
-
-From GitLab 13.1 and later, PlantUML integration now
-[requires a header prefix in the URL](https://github.com/plantuml/plantuml/issues/117#issuecomment-6235450160)
-to distinguish different encoding types.
-
-## Creating Diagrams
-
-With PlantUML integration enabled and configured, we can start adding diagrams to
-our AsciiDoc snippets, wikis, and repositories using delimited blocks:
-
-- **Markdown**
-
- ````markdown
- ```plantuml
- Bob -> Alice : hello
- Alice -> Bob : hi
- ```
- ````
-
-- **AsciiDoc**
-
- ```plaintext
- [plantuml, format="png", id="myDiagram", width="200px"]
- ----
- Bob->Alice : hello
- Alice -> Bob : hi
- ----
- ```
-
-- **reStructuredText**
-
- ```plaintext
- .. plantuml::
- :caption: Caption with **bold** and *italic*
-
- Bob -> Alice: hello
- Alice -> Bob: hi
- ```
+1. Set the PlantUML instance as `https://gitlab.example.com/-/plantuml/`,
+ and click **Save changes**.
- You can also use the `uml::` directive for compatibility with
- [`sphinxcontrib-plantuml`](https://pypi.org/project/sphinxcontrib-plantuml/),
- but GitLab only supports the `caption` option.
+Depending on your PlantUML and GitLab version numbers, you may also need to take
+these steps:
-The above blocks are converted to an HTML image tag with source pointing to the
-PlantUML instance. If the PlantUML server is correctly configured, this should
-render a nice diagram instead of the block:
+- For PlantUML servers running v1.2020.9 and above, such as [plantuml.com](https://plantuml.com),
+ you must set the `PLANTUML_ENCODING` environment variable to enable the `deflate`
+ compression. In Omnibus GitLab, you can set this value in `/etc/gitlab.rb` with
+ this command:
-```plantuml
-Bob -> Alice : hello
-Alice -> Bob : hi
-```
-
-Inside the block you can add any of the diagrams PlantUML supports, such as:
-
-- [Sequence](https://plantuml.com/sequence-diagram)
-- [Use Case](https://plantuml.com/use-case-diagram)
-- [Class](https://plantuml.com/class-diagram)
-- [Activity](https://plantuml.com/activity-diagram-legacy)
-- [Component](https://plantuml.com/component-diagram)
-- [State](https://plantuml.com/state-diagram),
-- [Object](https://plantuml.com/object-diagram)
-
-You do not need to use the PlantUML
-diagram delimiters `@startuml`/`@enduml`, as these are replaced by the AsciiDoc `plantuml` block.
-
-Some parameters can be added to the AsciiDoc block definition:
-
-- `format`: Can be either `png` or `svg`. Note that `svg` is not supported by
- all browsers so use with care. The default is `png`.
-- `id`: A CSS ID added to the diagram HTML tag.
-- `width`: Width attribute added to the image tag.
-- `height`: Height attribute added to the image tag.
+ ```ruby
+ gitlab_rails['env'] = { 'PLANTUML_ENCODING' => 'deflate' }
+ ```
-Markdown does not support any parameters and always uses PNG format.
+- For GitLab versions 13.1 and later, PlantUML integration now
+ [requires a header prefix in the URL](https://github.com/plantuml/plantuml/issues/117#issuecomment-6235450160)
+ to distinguish different encoding types.
diff --git a/doc/administration/integration/terminal.md b/doc/administration/integration/terminal.md
index 0f26eb83d17..644e2d905ae 100644
--- a/doc/administration/integration/terminal.md
+++ b/doc/administration/integration/terminal.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Web terminals
+# Web terminals **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/7690) in GitLab 8.15.
diff --git a/doc/administration/invalidate_markdown_cache.md b/doc/administration/invalidate_markdown_cache.md
index 211316534ee..7a880c81843 100644
--- a/doc/administration/invalidate_markdown_cache.md
+++ b/doc/administration/invalidate_markdown_cache.md
@@ -1,6 +1,6 @@
---
-stage: Create
-group: Source Code
+stage: Plan
+group: Project Management
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
---
diff --git a/doc/administration/issue_closing_pattern.md b/doc/administration/issue_closing_pattern.md
index 32d367bb15e..6b1922fe142 100644
--- a/doc/administration/issue_closing_pattern.md
+++ b/doc/administration/issue_closing_pattern.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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
---
diff --git a/doc/administration/monitoring/index.md b/doc/administration/monitoring/index.md
index ac09acf2d2e..d2e5f40b171 100644
--- a/doc/administration/monitoring/index.md
+++ b/doc/administration/monitoring/index.md
@@ -11,9 +11,19 @@ Explore our features to monitor your GitLab instance:
- [GitLab self-monitoring](gitlab_self_monitoring_project/index.md): The
GitLab instance administration project helps to monitor the GitLab instance and
take action on alerts.
-- [Performance monitoring](performance/index.md): GitLab Performance Monitoring makes it possible to measure a wide variety of statistics of your instance.
-- [Prometheus](prometheus/index.md): Prometheus is a powerful time-series monitoring service, providing a flexible platform for monitoring GitLab and other software products.
-- [GitHub imports](github_imports.md): Monitor the health and progress of the GitHub importer with various Prometheus metrics.
-- [Monitoring uptime](../../user/admin_area/monitoring/health_check.md): Check the server status using the health check endpoint.
- - [IP whitelists](ip_whitelist.md): Configure GitLab for monitoring endpoints that provide health check information when probed.
-- [`nginx_status`](https://docs.gitlab.com/omnibus/settings/nginx.html#enablingdisabling-nginx_status): Monitor your NGINX server status
+- [Performance monitoring](performance/index.md): GitLab Performance Monitoring
+ makes it possible to measure a wide variety of statistics of your instance.
+- [Prometheus](prometheus/index.md): Prometheus is a powerful time-series monitoring
+ service, providing a flexible platform for monitoring GitLab and other software
+ products.
+- [GitHub imports](github_imports.md): Monitor the health and progress of the GitHub
+ importer with various Prometheus metrics.
+- [Monitoring uptime](../../user/admin_area/monitoring/health_check.md): Check the
+ server status using the health check endpoint.
+ - [IP whitelists](ip_whitelist.md): Configure GitLab for monitoring endpoints that
+ provide health check information when probed.
+- [`nginx_status`](https://docs.gitlab.com/omnibus/settings/nginx.html#enablingdisabling-nginx_status):
+ Monitor your NGINX server status.
+- [Auto Monitoring](../../topics/autodevops/stages.md#auto-monitoring): Automated
+ monitoring for your application’s server and response metrics, provided by
+ [Auto DevOps](../../topics/autodevops/index.md).
diff --git a/doc/administration/monitoring/performance/performance_bar.md b/doc/administration/monitoring/performance/performance_bar.md
index 0516cbc2f8b..ff1bdbe3bd8 100644
--- a/doc/administration/monitoring/performance/performance_bar.md
+++ b/doc/administration/monitoring/performance/performance_bar.md
@@ -6,6 +6,8 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# Performance Bar **(FREE SELF)**
+> The **Stats** field [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/271551) in GitLab SaaS 13.9.
+
You can display the GitLab Performance Bar to see statistics for the performance
of a page. When activated, it looks as follows:
@@ -53,6 +55,8 @@ From left to right, it displays:
- **Request Selector**: a select box displayed on the right-hand side of the
Performance Bar which enables you to view these metrics for any requests made while
the current page was open. Only the first two requests per unique URL are captured.
+- **Stats** (optional): if the `GITLAB_PERFORMANCE_BAR_STATS_URL` environment variable is set,
+ this URL is displayed in the bar. In GitLab 13.9 and later, used only in GitLab SaaS.
## Request warnings
diff --git a/doc/administration/object_storage.md b/doc/administration/object_storage.md
index 3cad18dc497..a14f902db91 100644
--- a/doc/administration/object_storage.md
+++ b/doc/administration/object_storage.md
@@ -570,13 +570,15 @@ See the following additional guides:
## Warnings, limitations, and known issues
-### Separate buckets required when using Helm
+### Use separate buckets
-Generally, using the same bucket for your Object Storage is fine to do
-for convenience.
+Using separate buckets for each data type is the recommended approach for GitLab.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
-However, if you're using or planning to use Helm, separate buckets will
-be required as there is a [known limitation with restorations of Helm chart backups](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer).
+Helm-based installs require separate buckets to
+[handle backup restorations](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
### S3 API compatibility issues
diff --git a/doc/administration/packages/dependency_proxy.md b/doc/administration/packages/dependency_proxy.md
index 16cfdc8c784..720734bf344 100644
--- a/doc/administration/packages/dependency_proxy.md
+++ b/doc/administration/packages/dependency_proxy.md
@@ -47,6 +47,10 @@ To enable the dependency proxy feature:
Since Puma is already the default web server for installations from source as of GitLab 12.9,
no further changes are needed.
+**Multi-node GitLab installations**
+
+Follow the steps for **Omnibus GitLab installation** for each Web and Sidekiq nodes.
+
## Changing the storage path
By default, the dependency proxy files are stored locally, but you can change the default
diff --git a/doc/administration/packages/index.md b/doc/administration/packages/index.md
index b1d2a82e31a..012afd6a419 100644
--- a/doc/administration/packages/index.md
+++ b/doc/administration/packages/index.md
@@ -43,14 +43,14 @@ guides you through the process.
| CocoaPods | [#36890](https://gitlab.com/gitlab-org/gitlab/-/issues/36890) |
| Conda | [#36891](https://gitlab.com/gitlab-org/gitlab/-/issues/36891) |
| CRAN | [#36892](https://gitlab.com/gitlab-org/gitlab/-/issues/36892) |
-| Debian | [WIP: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/44746) |
+| Debian | [Draft: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/50438) |
| Opkg | [#36894](https://gitlab.com/gitlab-org/gitlab/-/issues/36894) |
| P2 | [#36895](https://gitlab.com/gitlab-org/gitlab/-/issues/36895) |
| Puppet | [#36897](https://gitlab.com/gitlab-org/gitlab/-/issues/36897) |
| RPM | [#5932](https://gitlab.com/gitlab-org/gitlab/-/issues/5932) |
| RubyGems | [#803](https://gitlab.com/gitlab-org/gitlab/-/issues/803) |
| SBT | [#36898](https://gitlab.com/gitlab-org/gitlab/-/issues/36898) |
-| Terraform | [WIP: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18834) |
+| Terraform | [Draft: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18834) |
| Vagrant | [#36899](https://gitlab.com/gitlab-org/gitlab/-/issues/36899) |
<!-- vale gitlab.Spelling = YES -->
diff --git a/doc/administration/pages/index.md b/doc/administration/pages/index.md
index 655e35c3e60..4febd8648d1 100644
--- a/doc/administration/pages/index.md
+++ b/doc/administration/pages/index.md
@@ -178,13 +178,16 @@ outside world.
pages_external_url 'https://example.io'
pages_nginx['redirect_http_to_https'] = true
+ ```
+
+1. If you haven’t named your certificate and key `example.io.crt` and `example.io.key`
+then you'll need to also add the full paths as shown below:
+
+ ```ruby
pages_nginx['ssl_certificate'] = "/etc/gitlab/ssl/pages-nginx.crt"
pages_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/pages-nginx.key"
```
- where `pages-nginx.crt` and `pages-nginx.key` are the SSL cert and key,
- respectively.
-
1. [Reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
### Additional configuration for Docker container
@@ -720,7 +723,7 @@ preferred source is `gitlab`, which uses [API-based configuration](#gitlab-api-b
For more details see this [blog post](https://about.gitlab.com/blog/2020/08/03/how-gitlab-pages-uses-the-gitlab-api-to-serve-content/).
-### Deprecated domain_config_source
+### Deprecated `domain_config_source`
WARNING:
The flag `gitlab_pages['domain_config_source']` is deprecated for use in [GitLab 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/217913),
diff --git a/doc/administration/raketasks/github_import.md b/doc/administration/raketasks/github_import.md
index c29865be56c..0338732e886 100644
--- a/doc/administration/raketasks/github_import.md
+++ b/doc/administration/raketasks/github_import.md
@@ -19,8 +19,8 @@ before/after the brackets. Also, some shells (for example, `zsh`) can interpret
## Caveats
-If the GitHub [rate limit](https://docs.github.com/v3/#rate-limiting) is reached while importing,
-the importing process waits (`sleep()`) until it can continue importing.
+If the GitHub [rate limit](https://docs.github.com/en/rest/reference/rate-limit) is reached while
+importing, the importing process waits (`sleep()`) until it can continue importing.
## Importing multiple projects
diff --git a/doc/administration/reference_architectures/10k_users.md b/doc/administration/reference_architectures/10k_users.md
index d4d522ab1b8..d6a38e1b713 100644
--- a/doc/administration/reference_architectures/10k_users.md
+++ b/doc/administration/reference_architectures/10k_users.md
@@ -17,23 +17,23 @@ full list of reference architectures, see
| Service | Nodes | Configuration | GCP | AWS | Azure |
|--------------------------------------------|-------------|-------------------------|-----------------|-------------|----------|
-| External load balancing node | 1 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| Consul | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| PostgreSQL | 3 | 8 vCPU, 30 GB memory | n1-standard-8 | m5.2xlarge | D8s v3 |
-| PgBouncer | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| Internal load balancing node | 1 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| Redis - Cache | 3 | 4 vCPU, 15 GB memory | n1-standard-4 | m5.xlarge | D4s v3 |
-| Redis - Queues / Shared State | 3 | 4 vCPU, 15 GB memory | n1-standard-4 | m5.xlarge | D4s v3 |
-| Redis Sentinel - Cache | 3 | 1 vCPU, 1.7 GB memory | g1-small | t3.small | B1MS |
-| Redis Sentinel - Queues / Shared State | 3 | 1 vCPU, 1.7 GB memory | g1-small | t3.small | B1MS |
-| Gitaly Cluster | 3 | 16 vCPU, 60 GB memory | n1-standard-16 | m5.4xlarge | D16s v3 |
-| Praefect | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| Praefect PostgreSQL | 1+* | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | c5.large | F2s v2 |
-| Sidekiq | 4 | 4 vCPU, 15 GB memory | n1-standard-4 | m5.xlarge | D4s v3 |
-| GitLab Rails | 3 | 32 vCPU, 28.8 GB memory | n1-highcpu-32 | c5.9xlarge | F32s v2 |
-| Monitoring node | 1 | 4 vCPU, 3.6 GB memory | n1-highcpu-4 | c5.xlarge | F4s v2 |
+| External load balancing node | 1 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| Consul | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| PostgreSQL | 3 | 8 vCPU, 30 GB memory | n1-standard-8 | `m5.2xlarge` | D8s v3 |
+| PgBouncer | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| Internal load balancing node | 1 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| Redis - Cache | 3 | 4 vCPU, 15 GB memory | n1-standard-4 | `m5.xlarge` | D4s v3 |
+| Redis - Queues / Shared State | 3 | 4 vCPU, 15 GB memory | n1-standard-4 | `m5.xlarge` | D4s v3 |
+| Redis Sentinel - Cache | 3 | 1 vCPU, 1.7 GB memory | g1-small | `t3.small` | B1MS |
+| Redis Sentinel - Queues / Shared State | 3 | 1 vCPU, 1.7 GB memory | g1-small | `t3.small` | B1MS |
+| Gitaly Cluster | 3 | 16 vCPU, 60 GB memory | n1-standard-16 | `m5.4xlarge` | D16s v3 |
+| Praefect | 3 | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| Praefect PostgreSQL | 1+* | 2 vCPU, 1.8 GB memory | n1-highcpu-2 | `c5.large` | F2s v2 |
+| Sidekiq | 4 | 4 vCPU, 15 GB memory | n1-standard-4 | `m5.xlarge` | D4s v3 |
+| GitLab Rails | 3 | 32 vCPU, 28.8 GB memory | n1-highcpu-32 | `c5.9xlarge` | F32s v2 |
+| Monitoring node | 1 | 4 vCPU, 3.6 GB memory | n1-highcpu-4 | `c5.xlarge` | F4s v2 |
| Object storage | n/a | n/a | n/a | n/a | n/a |
-| NFS server | 1 | 4 vCPU, 3.6 GB memory | n1-highcpu-4 | c5.xlarge | F4s v2 |
+| NFS server | 1 | 4 vCPU, 3.6 GB memory | n1-highcpu-4 | `c5.xlarge` | F4s v2 |
```plantuml
@startuml 10k
@@ -1508,7 +1508,7 @@ Praefect requires several secret tokens to secure communications across the Clus
Gitaly Cluster nodes are configured in Praefect via a `virtual storage`. Each storage contains
the details of each Gitaly node that makes up the cluster. Each storage is also given a name
-and this name is used in several areas of the config. In this guide, the name of the storage will be
+and this name is used in several areas of the configuration. In this guide, the name of the storage will be
`default`. Also, this guide is geared towards new installs, if upgrading an existing environment
to use Gitaly Cluster, you may need to use a different name.
Refer to the [Praefect documentation](../gitaly/praefect.md#praefect) for more info.
@@ -1756,7 +1756,7 @@ Note the following:
necessary.
- The Internal Load Balancer will also access to the certificates and need to be configured
- to allow for TLS passthrough.
+ to allow for TLS pass-through.
Refer to the load balancers documentation on how to configure this.
To configure Praefect with TLS:
@@ -1940,13 +1940,13 @@ To configure the Sidekiq nodes, on each one:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Copy the `/etc/gitlab/gitlab-secrets.json` file from your Consul server, and replace
@@ -2069,13 +2069,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Save the file and [reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
@@ -2303,20 +2303,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is separately configured.
-[We have an issue for improving this](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-and easily using one bucket with separate folders is one improvement that this might bring.
-
-There is at least one specific issue with using the same bucket:
-when GitLab is deployed with the Helm chart restore from backup
-[will not properly function](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
-unless separate buckets are used.
-
-One risk of using a single bucket would be if your organization decided to
-migrate GitLab to the Helm deployment in the future. GitLab would run, but the situation with
-backups might not be realized until the organization had a critical requirement for the backups to
-work.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/reference_architectures/25k_users.md b/doc/administration/reference_architectures/25k_users.md
index 48c72bb930d..d02f7ea66ac 100644
--- a/doc/administration/reference_architectures/25k_users.md
+++ b/doc/administration/reference_architectures/25k_users.md
@@ -1637,13 +1637,13 @@ To configure the Sidekiq nodes, on each one:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Copy the `/etc/gitlab/gitlab-secrets.json` file from your Consul server, and replace
@@ -1769,13 +1769,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Save the file and [reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
@@ -2002,20 +2002,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is separately configured.
-[We have an issue for improving this](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-and easily using one bucket with separate folders is one improvement that this might bring.
-
-There is at least one specific issue with using the same bucket:
-when GitLab is deployed with the Helm chart restore from backup
-[will not properly function](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
-unless separate buckets are used.
-
-One risk of using a single bucket would be if your organization decided to
-migrate GitLab to the Helm deployment in the future. GitLab would run, but the situation with
-backups might not be realized until the organization had a critical requirement for the backups to
-work.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/reference_architectures/2k_users.md b/doc/administration/reference_architectures/2k_users.md
index 9ad6054104a..62f0c993213 100644
--- a/doc/administration/reference_architectures/2k_users.md
+++ b/doc/administration/reference_architectures/2k_users.md
@@ -668,13 +668,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
## Uncomment and edit the following options if you have set up NFS
##
@@ -920,18 +920,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is
-separately configured. We have an [issue](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-for improving this, which would allow for one bucket with separate folders.
-
-Using a single bucket when GitLab is deployed with the Helm chart causes
-restoring from a backup to
-[not function properly](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer).
-Although you may not be using a Helm deployment right now, if you migrate
-GitLab to a Helm deployment later, GitLab would still work, but you may not
-realize backups aren't working correctly until a critical requirement for
-functioning backups is encountered.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/reference_architectures/3k_users.md b/doc/administration/reference_architectures/3k_users.md
index 175c4318d78..593bfaf7282 100644
--- a/doc/administration/reference_architectures/3k_users.md
+++ b/doc/administration/reference_architectures/3k_users.md
@@ -1322,13 +1322,14 @@ To configure the Sidekiq nodes, one each one:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
+
```
1. Save the file and [reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
@@ -1489,13 +1490,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. If you're using [Gitaly with TLS support](#gitaly-tls-support), make sure the
@@ -1697,20 +1698,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is separately configured.
-[We have an issue for improving this](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-and easily using one bucket with separate folders is one improvement that this might bring.
-
-There is at least one specific issue with using the same bucket:
-when GitLab is deployed with the Helm chart restore from backup
-[will not properly function](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
-unless separate buckets are used.
-
-One risk of using a single bucket would be if your organization decided to
-migrate GitLab to the Helm deployment in the future. GitLab would run, but the situation with
-backups might not be realized until the organization had a critical requirement for the backups to
-work.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/reference_architectures/50k_users.md b/doc/administration/reference_architectures/50k_users.md
index 0b22a2d3602..04ce39046d8 100644
--- a/doc/administration/reference_architectures/50k_users.md
+++ b/doc/administration/reference_architectures/50k_users.md
@@ -1637,13 +1637,13 @@ To configure the Sidekiq nodes, on each one:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Copy the `/etc/gitlab/gitlab-secrets.json` file from your Consul server, and replace
@@ -1769,13 +1769,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Save the file and [reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
@@ -2002,20 +2002,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is separately configured.
-[We have an issue for improving this](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-and easily using one bucket with separate folders is one improvement that this might bring.
-
-There is at least one specific issue with using the same bucket:
-when GitLab is deployed with the Helm chart restore from backup
-[will not properly function](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
-unless separate buckets are used.
-
-One risk of using a single bucket would be if your organization decided to
-migrate GitLab to the Helm deployment in the future. GitLab would run, but the situation with
-backups might not be realized until the organization had a critical requirement for the backups to
-work.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/reference_architectures/5k_users.md b/doc/administration/reference_architectures/5k_users.md
index 37d35c299fa..37e67b0ab73 100644
--- a/doc/administration/reference_architectures/5k_users.md
+++ b/doc/administration/reference_architectures/5k_users.md
@@ -1319,13 +1319,13 @@ To configure the Sidekiq nodes, one each one:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
```
1. Save the file and [reconfigure GitLab](../restart_gitlab.md#omnibus-gitlab-reconfigure).
@@ -1471,13 +1471,13 @@ On each node perform the following:
'google_project' => '<gcp-project-name>',
'google_json_key_location' => '<path-to-gcp-service-account-key>'
}
- gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-bucket-name>"
- gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-bucket-name>"
+ gitlab_rails['object_store']['objects']['artifacts']['bucket'] = "<gcp-artifacts-bucket-name>"
+ gitlab_rails['object_store']['objects']['external_diffs']['bucket'] = "<gcp-external-diffs-bucket-name>"
+ gitlab_rails['object_store']['objects']['lfs']['bucket'] = "<gcp-lfs-bucket-name>"
+ gitlab_rails['object_store']['objects']['uploads']['bucket'] = "<gcp-uploads-bucket-name>"
+ gitlab_rails['object_store']['objects']['packages']['bucket'] = "<gcp-packages-bucket-name>"
+ gitlab_rails['object_store']['objects']['dependency_proxy']['bucket'] = "<gcp-dependency-proxy-bucket-name>"
+ gitlab_rails['object_store']['objects']['terraform_state']['bucket'] = "<gcp-terraform-state-bucket-name>"
## Uncomment and edit the following options if you have set up NFS
##
@@ -1694,20 +1694,9 @@ on what features you intend to use:
| [Terraform state files](../terraform_state.md#using-object-storage) | Yes |
Using separate buckets for each data type is the recommended approach for GitLab.
-
-A limitation of our configuration is that each use of object storage is separately configured.
-[We have an issue for improving this](https://gitlab.com/gitlab-org/gitlab/-/issues/23345)
-and easily using one bucket with separate folders is one improvement that this might bring.
-
-There is at least one specific issue with using the same bucket:
-when GitLab is deployed with the Helm chart restore from backup
-[will not properly function](https://docs.gitlab.com/charts/advanced/external-object-storage/#lfs-artifacts-uploads-packages-external-diffs-pseudonymizer)
-unless separate buckets are used.
-
-One risk of using a single bucket would be if your organization decided to
-migrate GitLab to the Helm deployment in the future. GitLab would run, but the situation with
-backups might not be realized until the organization had a critical requirement for the backups to
-work.
+This ensures there are no collisions across the various types of data GitLab stores.
+There are plans to [enable the use of a single bucket](https://gitlab.com/gitlab-org/gitlab/-/issues/292958)
+in the future.
<div align="right">
<a type="button" class="btn btn-default" href="#setup-components">
diff --git a/doc/administration/repository_checks.md b/doc/administration/repository_checks.md
index 404a7bd77c1..059acbd12f8 100644
--- a/doc/administration/repository_checks.md
+++ b/doc/administration/repository_checks.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference
---
-# Repository checks
+# Repository checks **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/3232) in GitLab 8.7.
diff --git a/doc/administration/repository_storage_paths.md b/doc/administration/repository_storage_paths.md
index 5884a8b3283..6f373089bf2 100644
--- a/doc/administration/repository_storage_paths.md
+++ b/doc/administration/repository_storage_paths.md
@@ -23,7 +23,7 @@ several mount points. For example:
```ruby
git_data_dirs({
'default' => { 'gitaly_address' => 'tcp://gitaly1.internal:8075' },
- 'storage1' => { 'gitaly_address' => 'tcp://gitaly2.internal:8075' },
+ 'storage2' => { 'gitaly_address' => 'tcp://gitaly2.internal:8075' },
})
```
@@ -31,18 +31,23 @@ several mount points. For example:
```plaintext
default:
- path: /mnt/git-storage-1
+ gitaly_address: tcp://gitaly1.example:8075
storage2:
- path: /mnt/git-storage-2
+ gitaly_address: tcp://gitaly2.example:8075
```
-For more information on
+For more information on:
- Configuring Gitaly, see [Configure Gitaly](gitaly/index.md#configure-gitaly).
- Configuring direct repository access, see the following section below.
## Configure repository storage paths
+WARNING:
+The following information is for configuring GitLab to directly access repositories. This
+configuration option is deprecated in favor of using [Gitaly](gitaly/index.md) and is scheduled to
+[be removed in GitLab 14.0](https://gitlab.com/gitlab-org/gitaly/-/issues/1690).
+
To configure repository storage paths:
1. Edit the necessary configuration files:
@@ -96,10 +101,6 @@ For compatibility reasons `gitlab.yml` has a different structure than Omnibus Gi
example. Then Omnibus GitLab creates a `repositories` directory under that path to use with
`gitlab.yml`.
-NOTE:
-This example uses NFS. We do not recommend using EFS for storage as it may impact GitLab performance.
-Read the [relevant documentation](nfs.md#avoid-using-awss-elastic-file-system-efs) for more details.
-
**For installations from source**
1. Edit `gitlab.yml` and add the storage paths:
@@ -111,10 +112,10 @@ Read the [relevant documentation](nfs.md#avoid-using-awss-elastic-file-system-ef
storages: # You must have at least a 'default' repository storage path.
default:
path: /home/git/repositories
- nfs_1:
- path: /mnt/nfs1/repositories
- nfs_2:
- path: /mnt/nfs2/repositories
+ storage1:
+ path: /mnt/storage1/repositories
+ storage2:
+ path: /mnt/storage2/repositories
```
1. [Restart GitLab](restart_gitlab.md#installations-from-source) for the changes to take effect.
@@ -126,8 +127,8 @@ Edit `/etc/gitlab/gitlab.rb` by appending the rest of the paths to the default o
```ruby
git_data_dirs({
"default" => { "path" => "/var/opt/gitlab/git-data" },
- "nfs_1" => { "path" => "/mnt/nfs1/git-data" },
- "nfs_2" => { "path" => "/mnt/nfs2/git-data" }
+ "storage1" => { "path" => "/mnt/storage1/git-data" },
+ "storage2" => { "path" => "/mnt/storage2/git-data" }
})
```
diff --git a/doc/administration/static_objects_external_storage.md b/doc/administration/static_objects_external_storage.md
index 0f3dab743e9..5d26ff7cad6 100644
--- a/doc/administration/static_objects_external_storage.md
+++ b/doc/administration/static_objects_external_storage.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference
---
-# Static objects external storage
+# Static objects external storage **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/31025) in GitLab 12.3.
diff --git a/doc/api/README.md b/doc/api/README.md
index d6119fbfa43..cf21a4888ad 100644
--- a/doc/api/README.md
+++ b/doc/api/README.md
@@ -750,7 +750,7 @@ specifically used by GitLab.com, see
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),
+In [GitLab 13.10 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),
diff --git a/doc/api/graphql/index.md b/doc/api/graphql/index.md
index 7a68b1cdf16..726c448c33b 100644
--- a/doc/api/graphql/index.md
+++ b/doc/api/graphql/index.md
@@ -160,11 +160,6 @@ The GitLab GraphQL reference [is available](reference/index.md).
It is automatically generated from the GitLab GraphQL schema and embedded in a Markdown file.
-Machine-readable versions are also available:
-
-- [JSON format](reference/gitlab_schema.json)
-- [IDL format](reference/gitlab_schema.graphql)
-
## Generate updates for documentation
If you've changed the GraphQL schema, you should set up an MR to gain approval of your changes.
diff --git a/doc/api/graphql/reference/gitlab_schema.graphql b/doc/api/graphql/reference/gitlab_schema.graphql
deleted file mode 100644
index 4e89f663efc..00000000000
--- a/doc/api/graphql/reference/gitlab_schema.graphql
+++ /dev/null
@@ -1,29539 +0,0 @@
-"""
-Represents the access level of a relationship between a User and object that it is related to
-"""
-type AccessLevel {
- """
- Integer representation of access level.
- """
- integerValue: Int
-
- """
- String representation of access level.
- """
- stringValue: AccessLevelEnum
-}
-
-"""
-Access level to a resource
-"""
-enum AccessLevelEnum {
- DEVELOPER
- GUEST
- MAINTAINER
- NO_ACCESS
- OWNER
- REPORTER
-}
-
-"""
-Autogenerated input type of AddAwardEmoji
-"""
-input AddAwardEmojiInput {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of AddAwardEmoji
-"""
-type AddAwardEmojiPayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of AddProjectToSecurityDashboard
-"""
-input AddProjectToSecurityDashboardInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the project to be added to Instance Security Dashboard.
- """
- id: ProjectID!
-}
-
-"""
-Autogenerated return type of AddProjectToSecurityDashboard
-"""
-type AddProjectToSecurityDashboardPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Project that was added to the Instance Security Dashboard.
- """
- project: Project
-}
-
-"""
-Autogenerated input type of AdminSidekiqQueuesDeleteJobs
-"""
-input AdminSidekiqQueuesDeleteJobsInput {
- """
- Delete jobs matching caller_id in the context metadata
- """
- callerId: String
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Delete jobs matching feature_category in the context metadata
- """
- featureCategory: String
-
- """
- Delete jobs matching project in the context metadata
- """
- project: String
-
- """
- The name of the queue to delete jobs from.
- """
- queueName: String!
-
- """
- Delete jobs matching related_class in the context metadata
- """
- relatedClass: String
-
- """
- Delete jobs matching remote_ip in the context metadata
- """
- remoteIp: String
-
- """
- Delete jobs matching root_namespace in the context metadata
- """
- rootNamespace: String
-
- """
- Delete jobs matching subscription_plan in the context metadata
- """
- subscriptionPlan: String
-
- """
- Delete jobs matching user in the context metadata
- """
- user: String
-}
-
-"""
-Autogenerated return type of AdminSidekiqQueuesDeleteJobs
-"""
-type AdminSidekiqQueuesDeleteJobsPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Information about the status of the deletion request.
- """
- result: DeleteJobsResponse
-}
-
-"""
-Describes an alert from the project's Alert Management
-"""
-type AlertManagementAlert implements Noteable {
- """
- Assignees of the alert.
- """
- assignees(
- """
- 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
- ): UserConnection
-
- """
- Timestamp the alert was created.
- """
- createdAt: Time
-
- """
- Description of the alert.
- """
- description: String
-
- """
- Alert details.
- """
- details: JSON
-
- """
- The URL of the alert detail page.
- """
- detailsUrl: String!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Timestamp the alert ended.
- """
- endedAt: Time
-
- """
- Environment for the alert.
- """
- environment: Environment
-
- """
- Number of events of this alert.
- """
- eventCount: Int
-
- """
- List of hosts the alert came from.
- """
- hosts: [String!]
-
- """
- Internal ID of the alert.
- """
- iid: ID!
-
- """
- Internal ID of the GitLab issue attached to the alert.
- """
- issueIid: ID
-
- """
- URL for metrics embed for the alert.
- """
- metricsDashboardUrl: String
-
- """
- Monitoring tool the alert came from.
- """
- monitoringTool: String
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- The alert condition for Prometheus.
- """
- prometheusAlert: PrometheusAlert
-
- """
- Runbook for the alert as defined in alert details.
- """
- runbook: String
-
- """
- Service the alert came from.
- """
- service: String
-
- """
- Severity of the alert.
- """
- severity: AlertManagementSeverity
-
- """
- Timestamp the alert was raised.
- """
- startedAt: Time
-
- """
- Status of the alert.
- """
- status: AlertManagementStatus
-
- """
- Title of the alert.
- """
- title: String
-
- """
- To-do items of the current user for the alert.
- """
- todos(
- """
- The action to be filtered.
- """
- action: [TodoActionEnum!]
-
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- The ID of an author.
- """
- authorId: [ID!]
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- The ID of a group.
- """
- groupId: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The ID of a project.
- """
- projectId: [ID!]
-
- """
- The state of the todo.
- """
- state: [TodoStateEnum!]
-
- """
- The type of the todo.
- """
- type: [TodoTargetEnum!]
- ): TodoConnection
-
- """
- Timestamp the alert was last updated.
- """
- updatedAt: Time
-}
-
-"""
-The connection type for AlertManagementAlert.
-"""
-type AlertManagementAlertConnection {
- """
- A list of edges.
- """
- edges: [AlertManagementAlertEdge]
-
- """
- A list of nodes.
- """
- nodes: [AlertManagementAlert]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type AlertManagementAlertEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: AlertManagementAlert
-}
-
-"""
-Values for sorting alerts
-"""
-enum AlertManagementAlertSort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Created time by ascending order
- """
- CREATED_TIME_ASC
-
- """
- Created time by descending order
- """
- CREATED_TIME_DESC
-
- """
- End time by ascending order
- """
- ENDED_AT_ASC
-
- """
- End time by descending order
- """
- ENDED_AT_DESC
-
- """
- Events count by ascending order
- """
- EVENT_COUNT_ASC
-
- """
- Events count by descending order
- """
- EVENT_COUNT_DESC
-
- """
- Severity from less critical to more critical
- """
- SEVERITY_ASC
-
- """
- Severity from more critical to less critical
- """
- SEVERITY_DESC
-
- """
- Start time by ascending order
- """
- STARTED_AT_ASC
-
- """
- Start time by descending order
- """
- STARTED_AT_DESC
-
- """
- Status by order: Ignored > Resolved > Acknowledged > Triggered
- """
- STATUS_ASC
-
- """
- Status by order: Triggered > Acknowledged > Resolved > Ignored
- """
- STATUS_DESC
-
- """
- Updated at ascending order
- """
- UPDATED_ASC
-
- """
- Updated at descending order
- """
- UPDATED_DESC
-
- """
- Created time by ascending order
- """
- UPDATED_TIME_ASC
-
- """
- Created time by descending order
- """
- UPDATED_TIME_DESC
-
- """
- Created at ascending order
- """
- created_asc @deprecated(reason: "Use CREATED_ASC. Deprecated in 13.5.")
-
- """
- Created at descending order
- """
- created_desc @deprecated(reason: "Use CREATED_DESC. Deprecated in 13.5.")
-
- """
- Updated at ascending order
- """
- updated_asc @deprecated(reason: "Use UPDATED_ASC. Deprecated in 13.5.")
-
- """
- Updated at descending order
- """
- updated_desc @deprecated(reason: "Use UPDATED_DESC. Deprecated in 13.5.")
-}
-
-"""
-Represents total number of alerts for the represented categories
-"""
-type AlertManagementAlertStatusCountsType {
- """
- Number of alerts with status ACKNOWLEDGED for the project
- """
- acknowledged: Int
-
- """
- Total number of alerts for the project.
- """
- all: Int
-
- """
- Number of alerts with status IGNORED for the project
- """
- ignored: Int
-
- """
- Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project.
- """
- open: Int
-
- """
- Number of alerts with status RESOLVED for the project
- """
- resolved: Int
-
- """
- Number of alerts with status TRIGGERED for the project
- """
- triggered: Int
-}
-
-"""
-Filters the alerts based on given domain
-"""
-enum AlertManagementDomainFilter {
- """
- Alerts for operations domain
- """
- operations
-
- """
- Alerts for threat monitoring domain
- """
- threat_monitoring
-}
-
-"""
-An endpoint and credentials used to accept alerts for a project
-"""
-type AlertManagementHttpIntegration implements AlertManagementIntegration {
- """
- Whether the endpoint is currently accepting alerts.
- """
- active: Boolean
-
- """
- URL at which Prometheus metrics can be queried to populate the metrics dashboard.
- """
- apiUrl: String
-
- """
- ID of the integration.
- """
- id: ID!
-
- """
- Name of the integration.
- """
- name: String
-
- """
- Token used to authenticate alert notification requests.
- """
- token: String
-
- """
- Type of integration.
- """
- type: AlertManagementIntegrationType!
-
- """
- Endpoint which accepts alert notifications.
- """
- url: String
-}
-
-"""
-Identifier of AlertManagement::HttpIntegration.
-"""
-scalar AlertManagementHttpIntegrationID
-
-interface AlertManagementIntegration {
- """
- Whether the endpoint is currently accepting alerts.
- """
- active: Boolean
-
- """
- URL at which Prometheus metrics can be queried to populate the metrics dashboard.
- """
- apiUrl: String
-
- """
- ID of the integration.
- """
- id: ID!
-
- """
- Name of the integration.
- """
- name: String
-
- """
- Token used to authenticate alert notification requests.
- """
- token: String
-
- """
- Type of integration.
- """
- type: AlertManagementIntegrationType!
-
- """
- Endpoint which accepts alert notifications.
- """
- url: String
-}
-
-"""
-The connection type for AlertManagementIntegration.
-"""
-type AlertManagementIntegrationConnection {
- """
- A list of edges.
- """
- edges: [AlertManagementIntegrationEdge]
-
- """
- A list of nodes.
- """
- nodes: [AlertManagementIntegration]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type AlertManagementIntegrationEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: AlertManagementIntegration
-}
-
-"""
-Values of types of integrations
-"""
-enum AlertManagementIntegrationType {
- """
- Integration with any monitoring tool
- """
- HTTP
-
- """
- Prometheus integration
- """
- PROMETHEUS
-}
-
-"""
-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 {
- """
- A GitLab alert field name.
- """
- fieldName: AlertManagementPayloadAlertFieldName!
-
- """
- Human-readable label of the payload path.
- """
- label: String
-
- """
- Path to value inside payload JSON.
- """
- path: [String!]!
-
- """
- Type of the parsed value.
- """
- type: AlertManagementPayloadAlertFieldType!
-}
-
-"""
-Values for alert field names used in the custom mapping
-"""
-enum AlertManagementPayloadAlertFieldName {
- """
- A high-level summary of the problem.
- """
- DESCRIPTION
-
- """
- The resolved time of the incident.
- """
- END_TIME
-
- """
- The unique identifier of the alert. This can be used to group occurrences of the same alert.
- """
- FINGERPRINT
-
- """
- The name of the associated GitLab environment.
- """
- GITLAB_ENVIRONMENT_NAME
-
- """
- One or more hosts, as to where this incident occurred.
- """
- HOSTS
-
- """
- The name of the associated monitoring tool.
- """
- MONITORING_TOOL
-
- """
- The affected service.
- """
- SERVICE
-
- """
- The severity of the alert.
- """
- SEVERITY
-
- """
- The time of the incident.
- """
- START_TIME
-
- """
- The title of the incident.
- """
- TITLE
-}
-
-"""
-Values for alert field types used in the custom mapping
-"""
-enum AlertManagementPayloadAlertFieldType {
- """
- Array field type
- """
- ARRAY
-
- """
- DateTime field type
- """
- DATETIME
-
- """
- String field type
- """
- STRING
-}
-
-"""
-An endpoint and credentials used to accept Prometheus alerts for a project
-"""
-type AlertManagementPrometheusIntegration implements AlertManagementIntegration {
- """
- Whether the endpoint is currently accepting alerts.
- """
- active: Boolean
-
- """
- URL at which Prometheus metrics can be queried to populate the metrics dashboard.
- """
- apiUrl: String
-
- """
- ID of the integration.
- """
- id: ID!
-
- """
- Name of the integration.
- """
- name: String
-
- """
- Token used to authenticate alert notification requests.
- """
- token: String
-
- """
- Type of integration.
- """
- type: AlertManagementIntegrationType!
-
- """
- Endpoint which accepts alert notifications.
- """
- url: String
-}
-
-"""
-Alert severity values
-"""
-enum AlertManagementSeverity {
- """
- Critical severity
- """
- CRITICAL
-
- """
- High severity
- """
- HIGH
-
- """
- Info severity
- """
- INFO
-
- """
- Low severity
- """
- LOW
-
- """
- Medium severity
- """
- MEDIUM
-
- """
- Unknown severity
- """
- UNKNOWN
-}
-
-"""
-Alert status values
-"""
-enum AlertManagementStatus {
- """
- Acknowledged status
- """
- ACKNOWLEDGED
-
- """
- Ignored status
- """
- IGNORED
-
- """
- Resolved status
- """
- RESOLVED
-
- """
- Triggered status
- """
- TRIGGERED
-}
-
-"""
-Autogenerated input type of AlertSetAssignees
-"""
-input AlertSetAssigneesInput {
- """
- The usernames to assign to the alert. Replaces existing assignees by default.
- """
- assigneeUsernames: [String!]!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the alert to mutate.
- """
- iid: String!
-
- """
- The operation to perform. Defaults to REPLACE.
- """
- operationMode: MutationOperationMode
-
- """
- The project the alert to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of AlertSetAssignees
-"""
-type AlertSetAssigneesPayload {
- """
- The alert after mutation.
- """
- alert: AlertManagementAlert
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue created after mutation.
- """
- issue: Issue
-
- """
- The to-do item after mutation.
- """
- todo: Todo
-}
-
-"""
-Autogenerated input type of AlertTodoCreate
-"""
-input AlertTodoCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the alert to mutate.
- """
- iid: String!
-
- """
- The project the alert to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of AlertTodoCreate
-"""
-type AlertTodoCreatePayload {
- """
- The alert after mutation.
- """
- alert: AlertManagementAlert
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue created after mutation.
- """
- issue: Issue
-
- """
- The to-do item after mutation.
- """
- todo: Todo
-}
-
-"""
-Identifier of Analytics::DevopsAdoption::Segment.
-"""
-scalar AnalyticsDevopsAdoptionSegmentID
-
-"""
-Data associated with configuring API fuzzing scans in GitLab CI
-"""
-type ApiFuzzingCiConfiguration {
- """
- All available scan modes.
- """
- scanModes: [ApiFuzzingScanMode!]
-
- """
- All default scan profiles.
- """
- scanProfiles: [ApiFuzzingScanProfile!]
-}
-
-"""
-Autogenerated input type of ApiFuzzingCiConfigurationCreate
-"""
-input ApiFuzzingCiConfigurationCreateInput {
- """
- File path or URL to the file that defines the API surface for scanning. Must
- be in the format specified by the `scanMode` argument.
- """
- apiSpecificationFile: String!
-
- """
- CI variable containing the password for authenticating with the target API.
- """
- authPassword: String
-
- """
- CI variable containing the username for authenticating with the target API.
- """
- authUsername: String
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full path of the project.
- """
- projectPath: ID!
-
- """
- The mode for API fuzzing scans.
- """
- scanMode: ApiFuzzingScanMode!
-
- """
- Name of a default profile to use for scanning. Ex: Quick-10.
- """
- scanProfile: String
-
- """
- URL for the target of API fuzzing scans.
- """
- target: String!
-}
-
-"""
-Autogenerated return type of ApiFuzzingCiConfigurationCreate
-"""
-type ApiFuzzingCiConfigurationCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- A YAML snippet that can be inserted into the project's `.gitlab-ci.yml` to set up API fuzzing scans.
- """
- configurationYaml: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The location at which the project's `.gitlab-ci.yml` file can be edited in the browser.
- """
- gitlabCiYamlEditPath: String
-}
-
-"""
-All possible ways to specify the API surface for an API fuzzing scan
-"""
-enum ApiFuzzingScanMode {
- """
- The API surface is specified by a HAR file.
- """
- HAR
-
- """
- The API surface is specified by a OPENAPI file.
- """
- OPENAPI
-}
-
-"""
-An API Fuzzing scan profile.
-"""
-type ApiFuzzingScanProfile {
- """
- A short description of the profile.
- """
- description: String
-
- """
- The unique name of the profile.
- """
- name: String
-
- """
- A syntax highlit HTML representation of the YAML.
- """
- yaml: String
-}
-
-"""
-User availability status
-"""
-enum AvailabilityEnum {
- """
- Busy
- """
- BUSY
-
- """
- Not Set
- """
- NOT_SET
-}
-
-"""
-An emoji awarded by a user
-"""
-type AwardEmoji {
- """
- The emoji description.
- """
- description: String!
-
- """
- The emoji as an icon.
- """
- emoji: String!
-
- """
- The emoji name.
- """
- name: String!
-
- """
- The emoji in Unicode.
- """
- unicode: String!
-
- """
- The Unicode version for this emoji.
- """
- unicodeVersion: String!
-
- """
- The user who awarded the emoji.
- """
- user: User!
-}
-
-"""
-Autogenerated input type of AwardEmojiAdd
-"""
-input AwardEmojiAddInput {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of AwardEmojiAdd
-"""
-type AwardEmojiAddPayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-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 {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of AwardEmojiRemove
-"""
-type AwardEmojiRemovePayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of AwardEmojiToggle
-"""
-input AwardEmojiToggleInput {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of AwardEmojiToggle
-"""
-type AwardEmojiTogglePayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Indicates the status of the emoji. True if the toggle awarded the emoji, and false if the toggle removed the emoji.
- """
- toggledOn: Boolean!
-}
-
-"""
-Identifier of Awardable.
-"""
-scalar AwardableID
-
-type BaseService implements Service {
- """
- Indicates if the service is active.
- """
- active: Boolean
-
- """
- Class name of the service.
- """
- type: String
-}
-
-"""
-Represents non-fractional signed whole numeric values. Since the value may
-exceed the size of a 32-bit integer, it's encoded as a string.
-"""
-scalar BigInt
-
-type Blob implements Entry {
- """
- Flat path of the entry.
- """
- flatPath: String!
-
- """
- ID of the entry.
- """
- id: ID!
-
- """
- LFS ID of the blob.
- """
- lfsOid: String
-
- """
- Blob mode in numeric format.
- """
- mode: String
-
- """
- Name of the entry.
- """
- name: String!
-
- """
- Path of the entry.
- """
- path: String!
-
- """
- Last commit SHA for the entry.
- """
- sha: String!
-
- """
- Type of tree entry.
- """
- type: EntryType!
-
- """
- Web path of the blob.
- """
- webPath: String
-
- """
- Web URL of the blob.
- """
- webUrl: String
-}
-
-"""
-The connection type for Blob.
-"""
-type BlobConnection {
- """
- A list of edges.
- """
- edges: [BlobEdge]
-
- """
- A list of nodes.
- """
- nodes: [Blob]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type BlobEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Blob
-}
-
-"""
-Types of blob viewers
-"""
-enum BlobViewersType {
- auxiliary
- rich
- simple
-}
-
-"""
-Represents a project or group board
-"""
-type Board {
- """
- The board assignee.
- """
- assignee: User
-
- """
- Epics associated with board issues.
- """
- epics(
- """
- 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
-
- """
- Filters applied when selecting issues on the board.
- """
- issueFilters: BoardIssueInput
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): BoardEpicConnection
-
- """
- Whether or not backlog list is hidden.
- """
- hideBacklogList: Boolean
-
- """
- Whether or not closed list is hidden.
- """
- hideClosedList: Boolean
-
- """
- ID (global ID) of the board.
- """
- id: ID!
-
- """
- The board iteration.
- """
- iteration: Iteration
-
- """
- Labels of the board.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- Lists of the board.
- """
- lists(
- """
- 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
-
- """
- Find a list by its global ID.
- """
- id: ListID
-
- """
- Filters applied when getting issue metadata in the board list.
- """
- issueFilters: BoardIssueInput
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): BoardListConnection
-
- """
- The board milestone.
- """
- milestone: Milestone
-
- """
- Name of the board.
- """
- name: String
-
- """
- Web path of the board.
- """
- webPath: String!
-
- """
- Web URL of the board.
- """
- webUrl: String!
-
- """
- Weight of the board.
- """
- weight: Int
-}
-
-"""
-The connection type for Board.
-"""
-type BoardConnection {
- """
- A list of edges.
- """
- edges: [BoardEdge]
-
- """
- A list of nodes.
- """
- nodes: [Board]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type BoardEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Board
-}
-
-"""
-Represents an epic on an issue board
-"""
-type BoardEpic implements CurrentUserTodos & Eventable & Noteable {
- """
- Author of the epic.
- """
- author: User!
-
- """
- 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(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Filter epics by author.
- """
- authorUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Filter epics by given confidentiality.
- """
- confidential: Boolean
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the epic, e.g., "1".
- """
- iid: ID
-
- """
- Filter epics by IID for autocomplete.
- """
- iidStartsWith: String
-
- """
- List of IIDs of epics, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- Include epics from descendant groups.
- """
- includeDescendantGroups: Boolean = true
-
- """
- Filter epics by labels.
- """
- labelName: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter epics by milestone title, computed from epic's issues.
- """
- milestoneTitle: String
-
- """
- Search query for epic title or description.
- """
- search: String
-
- """
- List epics by sort order.
- """
- sort: EpicSort
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter epics by state.
- """
- state: EpicState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
- ): EpicConnection
-
- """
- Timestamp of when the epic was closed.
- """
- closedAt: Time
-
- """
- Indicates if the epic is confidential.
- """
- confidential: Boolean
-
- """
- Timestamp of when the epic was created.
- """
- createdAt: Time
-
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- Number of open and closed descendant epics and issues.
- """
- descendantCounts: EpicDescendantCount
-
- """
- Total weight of open and closed issues in the epic and its descendants.
- """
- descendantWeightSum: EpicDescendantWeights
-
- """
- Description of the epic.
- """
- description: String
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Number of downvotes the epic has received.
- """
- downvotes: Int!
-
- """
- Due date of the epic.
- """
- dueDate: Time
-
- """
- Fixed due date of the epic.
- """
- dueDateFixed: Time
-
- """
- Inherited due date of the epic from milestones.
- """
- dueDateFromMilestones: Time
-
- """
- Indicates if the due date has been manually set.
- """
- dueDateIsFixed: Boolean
-
- """
- A list of events associated with the object.
- """
- events(
- """
- 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
- ): EventConnection
-
- """
- Group to which the epic belongs.
- """
- group: Group!
-
- """
- Indicates if the epic has children.
- """
- hasChildren: Boolean!
-
- """
- Indicates if the epic has direct issues.
- """
- hasIssues: Boolean!
-
- """
- Indicates if the epic has a parent epic.
- """
- hasParent: Boolean!
-
- """
- Current health status of the epic.
- """
- healthStatus: EpicHealthStatus
-
- """
- ID of the epic.
- """
- id: ID!
-
- """
- Internal ID of the epic.
- """
- iid: ID!
-
- """
- A list of issues associated with the epic.
- """
- issues(
- """
- 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
- ): EpicIssueConnection
-
- """
- Labels assigned to the epic.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- Parent epic of the epic.
- """
- parent: Epic
-
- """
- List of participants for the epic.
- """
- participants(
- """
- 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
- ): UserConnection
-
- """
- Internal reference of the epic. Returned in shortened format by default.
- """
- reference(
- """
- Indicates if the reference should be returned in full.
- """
- full: Boolean = false
- ): String!
-
- """
- URI path of the epic-issue relationship.
- """
- relationPath: String
-
- """
- The relative position of the epic in the epic tree.
- """
- relativePosition: Int
-
- """
- Start date of the epic.
- """
- startDate: Time
-
- """
- Fixed start date of the epic.
- """
- startDateFixed: Time
-
- """
- Inherited start date of the epic from milestones.
- """
- startDateFromMilestones: Time
-
- """
- Indicates if the start date has been manually set.
- """
- startDateIsFixed: Boolean
-
- """
- State of the epic.
- """
- state: EpicState!
-
- """
- Indicates the currently logged in user is subscribed to the epic.
- """
- subscribed: Boolean!
-
- """
- Title of the epic.
- """
- title: String
-
- """
- Timestamp of when the epic was updated.
- """
- updatedAt: Time
-
- """
- Number of upvotes the epic has received.
- """
- upvotes: Int!
-
- """
- Number of user discussions in the epic.
- """
- userDiscussionsCount: Int!
-
- """
- Number of user notes of the epic.
- """
- userNotesCount: Int!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: EpicPermissions!
-
- """
- User preferences for the epic on the issue board.
- """
- userPreferences: BoardEpicUserPreferences
-
- """
- Web path of the epic.
- """
- webPath: String!
-
- """
- Web URL of the epic.
- """
- webUrl: String!
-}
-
-"""
-The connection type for BoardEpic.
-"""
-type BoardEpicConnection {
- """
- A list of edges.
- """
- edges: [BoardEpicEdge]
-
- """
- A list of nodes.
- """
- nodes: [BoardEpic]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type BoardEpicEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: BoardEpic
-}
-
-"""
-Represents user preferences for a board epic
-"""
-type BoardEpicUserPreferences {
- """
- Indicates epic should be displayed as collapsed.
- """
- collapsed: Boolean!
-}
-
-"""
-Identifier of Board.
-"""
-scalar BoardID
-
-input BoardIssueInput {
- """
- Filter by assignee username.
- """
- assigneeUsername: [String]
-
- """
- Filter by author username.
- """
- authorUsername: String
-
- """
- Filter by epic ID. Incompatible with epicWildcardId.
- """
- epicId: EpicID
-
- """
- Filter by epic ID wildcard. Incompatible with epicId.
- """
- epicWildcardId: EpicWildcardId
-
- """
- Filter by iteration title.
- """
- iterationTitle: String
-
- """
- Filter by iteration ID wildcard.
- """
- iterationWildcardId: IterationWildcardId
-
- """
- Filter by label name.
- """
- labelName: [String]
-
- """
- Filter by milestone title.
- """
- milestoneTitle: String
-
- """
- Filter by reaction emoji.
- """
- myReactionEmoji: String
-
- """
- List of negated params. Warning: this argument is experimental and a subject to change in future.
- """
- not: NegatedBoardIssueInput
-
- """
- Filter by release tag.
- """
- releaseTag: String
-
- """
- Search query for issue title or description.
- """
- search: String
-
- """
- Filter by weight.
- """
- weight: String
-}
-
-"""
-Represents a list for an issue board
-"""
-type BoardList {
- """
- Assignee in the list.
- """
- assignee: User
-
- """
- Indicates if list is collapsed for this user.
- """
- collapsed: Boolean
-
- """
- ID (global ID) of the list.
- """
- id: ID!
-
- """
- Board issues.
- """
- issues(
- """
- 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
-
- """
- Filters applied when selecting issues in the board list.
- """
- filters: BoardIssueInput
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): IssueConnection
-
- """
- Count of issues in the list.
- """
- issuesCount: Int
-
- """
- Iteration of the list.
- """
- iteration: Iteration
-
- """
- Label of the list.
- """
- label: Label
-
- """
- The current limit metric for the list.
- """
- limitMetric: ListLimitMetric
-
- """
- Type of the list.
- """
- listType: String!
-
- """
- Maximum number of issues in the list.
- """
- maxIssueCount: Int
-
- """
- Maximum weight of issues in the list.
- """
- maxIssueWeight: Int
-
- """
- Milestone of the list.
- """
- milestone: Milestone
-
- """
- Position of list within the board.
- """
- position: Int
-
- """
- Title of the list.
- """
- title: String!
-
- """
- Total weight of all issues in the list.
- """
- totalWeight: Int
-}
-
-"""
-The connection type for BoardList.
-"""
-type BoardListConnection {
- """
- A list of edges.
- """
- edges: [BoardListEdge]
-
- """
- A list of nodes.
- """
- nodes: [BoardList]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of BoardListCreate
-"""
-input BoardListCreateInput {
- """
- Global ID of an existing user.
- """
- assigneeId: UserID
-
- """
- Create the backlog list.
- """
- backlog: Boolean
-
- """
- Global ID of the issue board to mutate.
- """
- boardId: BoardID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of an existing iteration.
- """
- iterationId: IterationID
-
- """
- Global ID of an existing label.
- """
- labelId: LabelID
-
- """
- Global ID of an existing milestone.
- """
- milestoneId: MilestoneID
-}
-
-"""
-Autogenerated return type of BoardListCreate
-"""
-type BoardListCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Issue list in the issue board.
- """
- list: BoardList
-}
-
-"""
-An edge in a connection.
-"""
-type BoardListEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: BoardList
-}
-
-"""
-Autogenerated input type of BoardListUpdateLimitMetrics
-"""
-input BoardListUpdateLimitMetricsInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The new limit metric type for the list.
- """
- limitMetric: ListLimitMetric
-
- """
- The global ID of the list.
- """
- listId: ListID!
-
- """
- The new maximum issue count limit.
- """
- maxIssueCount: Int
-
- """
- The new maximum issue weight limit.
- """
- maxIssueWeight: Int
-}
-
-"""
-Autogenerated return type of BoardListUpdateLimitMetrics
-"""
-type BoardListUpdateLimitMetricsPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The updated list.
- """
- list: BoardList
-}
-
-"""
-Identifier of Boards::EpicBoard.
-"""
-scalar BoardsEpicBoardID
-
-"""
-Identifier of Boards::EpicList.
-"""
-scalar BoardsEpicListID
-
-type Branch {
- """
- Commit for the branch.
- """
- commit: Commit
-
- """
- Name of the branch.
- """
- name: String!
-}
-
-"""
-Represents the total number of issues and their weights for a particular day
-"""
-type BurnupChartDailyTotals {
- """
- Number of closed issues as of this day.
- """
- completedCount: Int!
-
- """
- Total weight of closed issues as of this day.
- """
- completedWeight: Int!
-
- """
- Date for burnup totals.
- """
- date: ISO8601Date!
-
- """
- Number of issues as of this day.
- """
- scopeCount: Int!
-
- """
- Total weight of issues as of this day.
- """
- scopeWeight: Int!
-}
-
-type CiApplicationSettings {
- """
- Whether to keep the latest jobs artifacts.
- """
- keepLatestArtifact: Boolean
-}
-
-type CiBuildNeed {
- """
- Name of the job we need to complete.
- """
- name: String
-}
-
-"""
-The connection type for CiBuildNeed.
-"""
-type CiBuildNeedConnection {
- """
- A list of edges.
- """
- edges: [CiBuildNeedEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiBuildNeed]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiBuildNeedEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiBuildNeed
-}
-
-"""
-Autogenerated input type of CiCdSettingsUpdate
-"""
-input CiCdSettingsUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full Path of the project the settings belong to.
- """
- fullPath: ID!
-
- """
- Indicates if the latest artifact should be kept for this project.
- """
- keepLatestArtifact: Boolean
-}
-
-"""
-Autogenerated return type of CiCdSettingsUpdate
-"""
-type CiCdSettingsUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-type CiConfig {
- """
- Linting errors.
- """
- errors: [String!]
-
- """
- Merged CI configuration YAML.
- """
- mergedYaml: String
-
- """
- Stages of the pipeline.
- """
- stages(
- """
- 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
- ): CiConfigStageConnection
-
- """
- Status of linting, can be either valid or invalid.
- """
- status: CiConfigStatus
-}
-
-type CiConfigGroup {
- """
- Jobs in group.
- """
- jobs(
- """
- 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
- ): CiConfigJobConnection
-
- """
- Name of the job group.
- """
- name: String
-
- """
- Size of the job group.
- """
- size: Int
-}
-
-"""
-The connection type for CiConfigGroup.
-"""
-type CiConfigGroupConnection {
- """
- A list of edges.
- """
- edges: [CiConfigGroupEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiConfigGroup]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiConfigGroupEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiConfigGroup
-}
-
-type CiConfigJob {
- """
- Override a set of commands that are executed after the job.
- """
- afterScript: [String!]
-
- """
- Allow job to fail.
- """
- allowFailure: Boolean
-
- """
- Override a set of commands that are executed before the job.
- """
- beforeScript: [String!]
-
- """
- Name of an environment to which the job deploys.
- """
- environment: String
-
- """
- Limit when jobs are not created.
- """
- except: CiConfigJobRestriction
-
- """
- Name of the job group.
- """
- groupName: String
-
- """
- Name of the job.
- """
- name: String
-
- """
- Builds that must complete before the jobs run.
- """
- needs(
- """
- 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
- ): CiConfigNeedConnection
-
- """
- Jobs are created when these conditions do not apply.
- """
- only: CiConfigJobRestriction
-
- """
- Shell script that is executed by a runner.
- """
- script: [String!]
-
- """
- Name of the job stage.
- """
- stage: String
-
- """
- List of tags that are used to select a runner.
- """
- tags: [String!]
-
- """
- When to run the job.
- """
- when: String
-}
-
-"""
-The connection type for CiConfigJob.
-"""
-type CiConfigJobConnection {
- """
- A list of edges.
- """
- edges: [CiConfigJobEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiConfigJob]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiConfigJobEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiConfigJob
-}
-
-type CiConfigJobRestriction {
- """
- The Git refs the job restriction applies to.
- """
- refs: [String!]
-}
-
-type CiConfigNeed {
- """
- Name of the need.
- """
- name: String
-}
-
-"""
-The connection type for CiConfigNeed.
-"""
-type CiConfigNeedConnection {
- """
- A list of edges.
- """
- edges: [CiConfigNeedEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiConfigNeed]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiConfigNeedEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiConfigNeed
-}
-
-type CiConfigStage {
- """
- Groups of jobs for the stage.
- """
- groups(
- """
- 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
- ): CiConfigGroupConnection
-
- """
- Name of the stage.
- """
- name: String
-}
-
-"""
-The connection type for CiConfigStage.
-"""
-type CiConfigStageConnection {
- """
- A list of edges.
- """
- edges: [CiConfigStageEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiConfigStage]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiConfigStageEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiConfigStage
-}
-
-"""
-Values for YAML processor result
-"""
-enum CiConfigStatus {
- """
- The configuration file is not valid
- """
- INVALID
-
- """
- The configuration file is valid
- """
- VALID
-}
-
-type CiGroup {
- """
- Detailed status of the group.
- """
- detailedStatus: DetailedStatus
-
- """
- Jobs in group.
- """
- jobs(
- """
- 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
- ): CiJobConnection
-
- """
- Name of the job group.
- """
- name: String
-
- """
- Size of the group.
- """
- size: Int
-}
-
-"""
-The connection type for CiGroup.
-"""
-type CiGroupConnection {
- """
- A list of edges.
- """
- edges: [CiGroupEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiGroup]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiGroupEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiGroup
-}
-
-type CiJob {
- """
- Artifacts generated by the job.
- """
- artifacts(
- """
- 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
- ): CiJobArtifactConnection
-
- """
- Detailed status of the job.
- """
- detailedStatus: DetailedStatus
-
- """
- Name of the job.
- """
- name: String
-
- """
- References to builds that must complete before the jobs run.
- """
- needs(
- """
- 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
- ): CiBuildNeedConnection
-
- """
- Pipeline the job belongs to.
- """
- pipeline: Pipeline
-
- """
- Schedule for the build.
- """
- scheduledAt: Time
-}
-
-type CiJobArtifact {
- """
- URL for downloading the artifact's file.
- """
- downloadPath: String
-
- """
- File type of the artifact.
- """
- fileType: JobArtifactFileType
-}
-
-"""
-The connection type for CiJobArtifact.
-"""
-type CiJobArtifactConnection {
- """
- A list of edges.
- """
- edges: [CiJobArtifactEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiJobArtifact]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiJobArtifactEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiJobArtifact
-}
-
-"""
-The connection type for CiJob.
-"""
-type CiJobConnection {
- """
- A list of edges.
- """
- edges: [CiJobEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiJob]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiJobEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiJob
-}
-
-"""
-Identifier of Ci::Pipeline.
-"""
-scalar CiPipelineID
-
-type CiStage {
- """
- Detailed status of the stage.
- """
- detailedStatus: DetailedStatus
-
- """
- Group of jobs for the stage.
- """
- groups(
- """
- 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
- ): CiGroupConnection
-
- """
- Name of the stage.
- """
- name: String
-}
-
-"""
-The connection type for CiStage.
-"""
-type CiStageConnection {
- """
- A list of edges.
- """
- edges: [CiStageEdge]
-
- """
- A list of nodes.
- """
- nodes: [CiStage]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CiStageEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CiStage
-}
-
-type ClusterAgent {
- """
- Timestamp the cluster agent was created.
- """
- createdAt: Time
-
- """
- User object, containing information about the person who created the agent.
- """
- createdByUser: User
-
- """
- ID of the cluster agent.
- """
- id: ID!
-
- """
- Name of the cluster agent.
- """
- name: String
-
- """
- The project this cluster agent is associated with.
- """
- project: Project
-
- """
- Tokens associated with the cluster agent.
- """
- tokens(
- """
- 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
- ): ClusterAgentTokenConnection
-
- """
- Timestamp the cluster agent was updated.
- """
- updatedAt: Time
-}
-
-"""
-The connection type for ClusterAgent.
-"""
-type ClusterAgentConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [ClusterAgentEdge]
-
- """
- A list of nodes.
- """
- nodes: [ClusterAgent]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of ClusterAgentDelete
-"""
-input ClusterAgentDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the cluster agent that will be deleted.
- """
- id: ClustersAgentID!
-}
-
-"""
-Autogenerated return type of ClusterAgentDelete
-"""
-type ClusterAgentDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type ClusterAgentEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ClusterAgent
-}
-
-type ClusterAgentToken {
- """
- Cluster agent this token is associated with.
- """
- clusterAgent: ClusterAgent
-
- """
- Timestamp the token was created.
- """
- createdAt: Time
-
- """
- The user who created the token.
- """
- createdByUser: User
-
- """
- Global ID of the token.
- """
- id: ClustersAgentTokenID!
-}
-
-"""
-The connection type for ClusterAgentToken.
-"""
-type ClusterAgentTokenConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [ClusterAgentTokenEdge]
-
- """
- A list of nodes.
- """
- nodes: [ClusterAgentToken]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of ClusterAgentTokenCreate
-"""
-input ClusterAgentTokenCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the cluster agent that will be associated with the new token.
- """
- clusterAgentId: ClustersAgentID!
-}
-
-"""
-Autogenerated return type of ClusterAgentTokenCreate
-"""
-type ClusterAgentTokenCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Token secret value. Make sure you save it - you won't be able to access it again.
- """
- secret: String
-
- """
- Token created after mutation.
- """
- token: ClusterAgentToken
-}
-
-"""
-Autogenerated input type of ClusterAgentTokenDelete
-"""
-input ClusterAgentTokenDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the cluster agent token that will be deleted.
- """
- id: ClustersAgentTokenID!
-}
-
-"""
-Autogenerated return type of ClusterAgentTokenDelete
-"""
-type ClusterAgentTokenDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type ClusterAgentTokenEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ClusterAgentToken
-}
-
-"""
-Identifier of Clusters::Agent.
-"""
-scalar ClustersAgentID
-
-"""
-Identifier of Clusters::AgentToken.
-"""
-scalar ClustersAgentTokenID
-
-"""
-Identifier of Clusters::Cluster.
-"""
-scalar ClustersClusterID
-
-"""
-Represents the code coverage activity for a group
-"""
-type CodeCoverageActivity {
- """
- Average percentage of the different code coverage results available for the group.
- """
- averageCoverage: Float
-
- """
- Number of different code coverage results available for the group.
- """
- coverageCount: Int
-
- """
- Date when the code coverage was created.
- """
- date: Date!
-
- """
- Number of projects with code coverage results for the group.
- """
- projectCount: Int
-}
-
-"""
-The connection type for CodeCoverageActivity.
-"""
-type CodeCoverageActivityConnection {
- """
- A list of edges.
- """
- edges: [CodeCoverageActivityEdge]
-
- """
- A list of nodes.
- """
- nodes: [CodeCoverageActivity]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CodeCoverageActivityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CodeCoverageActivity
-}
-
-"""
-Represents the code coverage summary for a project
-"""
-type CodeCoverageSummary {
- """
- Average percentage of the different code coverage results available for the project.
- """
- averageCoverage: Float
-
- """
- Number of different code coverage results available.
- """
- coverageCount: Int
-
- """
- Latest date when the code coverage was created for the project.
- """
- lastUpdatedOn: Date
-}
-
-type Commit {
- """
- Author of the commit.
- """
- author: User
-
- """
- Commit authors gravatar.
- """
- authorGravatar: String
-
- """
- Commit authors name.
- """
- authorName: String
-
- """
- Timestamp of when the commit was authored.
- """
- authoredDate: Time
-
- """
- Description of the commit message.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- ID (global ID) of the commit.
- """
- id: ID!
-
- """
- Raw commit message.
- """
- message: String
-
- """
- Pipelines of the commit ordered latest first.
- """
- 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
-
- """
- Filter pipelines by the ref they are run for.
- """
- ref: String
-
- """
- Filter pipelines by the sha of the commit they are run for.
- """
- sha: String
-
- """
- Filter pipelines by their status.
- """
- status: PipelineStatusEnum
- ): PipelineConnection
-
- """
- SHA1 ID of the commit.
- """
- sha: String!
-
- """
- Short SHA1 ID of the commit.
- """
- shortId: String!
-
- """
- Rendered HTML of the commit signature.
- """
- signatureHtml: String
-
- """
- Title of the commit message.
- """
- title: String
-
- """
- The GitLab Flavored Markdown rendering of `title`
- """
- titleHtml: String
-
- """
- Web path of the commit.
- """
- webPath: String!
-
- """
- Web URL of the commit.
- """
- webUrl: String!
-}
-
-input CommitAction {
- """
- The action to perform, create, delete, move, update, chmod.
- """
- action: CommitActionMode!
-
- """
- Content of the file.
- """
- content: String
-
- """
- Encoding of the file. Default is text.
- """
- encoding: CommitEncoding
-
- """
- Enables/disables the execute flag on the file.
- """
- executeFilemode: Boolean
-
- """
- Full path to the file.
- """
- filePath: String!
-
- """
- Last known file commit ID.
- """
- lastCommitId: String
-
- """
- Original full path to the file being moved.
- """
- previousPath: String
-}
-
-"""
-Mode of a commit action
-"""
-enum CommitActionMode {
- """
- Chmod command
- """
- CHMOD
-
- """
- Create command
- """
- CREATE
-
- """
- Delete command
- """
- DELETE
-
- """
- Move command
- """
- MOVE
-
- """
- Update command
- """
- UPDATE
-}
-
-"""
-The connection type for Commit.
-"""
-type CommitConnection {
- """
- A list of edges.
- """
- edges: [CommitEdge]
-
- """
- A list of nodes.
- """
- nodes: [Commit]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of CommitCreate
-"""
-input CommitCreateInput {
- """
- Array of action hashes to commit as a batch.
- """
- actions: [CommitAction!]!
-
- """
- Name of the branch to commit into, it can be a new branch.
- """
- branch: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Raw commit message.
- """
- message: String!
-
- """
- Project full path the branch is associated with.
- """
- projectPath: ID!
-
- """
- If on a new branch, name of the original branch.
- """
- startBranch: String
-}
-
-"""
-Autogenerated return type of CommitCreate
-"""
-type CommitCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The commit after mutation.
- """
- commit: Commit
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type CommitEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Commit
-}
-
-enum CommitEncoding {
- """
- Base64 encoding
- """
- BASE64
-
- """
- Text encoding
- """
- TEXT
-}
-
-"""
-Represents a ComplianceFramework associated with a Project
-"""
-type ComplianceFramework {
- """
- Hexadecimal representation of compliance framework's label color.
- """
- color: String!
-
- """
- Description of the compliance framework.
- """
- description: String!
-
- """
- Compliance framework ID.
- """
- id: ID!
-
- """
- Name of the compliance framework.
- """
- name: String!
-
- """
- Full path of the compliance pipeline configuration stored in a project
- repository, such as `.gitlab/.compliance-gitlab-ci.yml@compliance/hippa`.
- """
- pipelineConfigurationFullPath: String
-}
-
-"""
-The connection type for ComplianceFramework.
-"""
-type ComplianceFrameworkConnection {
- """
- A list of edges.
- """
- edges: [ComplianceFrameworkEdge]
-
- """
- A list of nodes.
- """
- nodes: [ComplianceFramework]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ComplianceFrameworkEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ComplianceFramework
-}
-
-input ComplianceFrameworkInput {
- """
- New color representation of the compliance framework in hex format. e.g. #FCA121.
- """
- color: String
-
- """
- New description for the compliance framework.
- """
- description: String
-
- """
- New name for the compliance framework.
- """
- name: String
-
- """
- Full path of the compliance pipeline configuration stored in a project
- repository, such as `.gitlab/.compliance-gitlab-ci.yml@compliance/hippa`.
- """
- pipelineConfigurationFullPath: String
-}
-
-"""
-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 {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- SAST CI configuration for the project.
- """
- configuration: SastCiConfigurationInput!
-
- """
- Full path of the project.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of ConfigureSast
-"""
-type ConfigureSastPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Status of creating the commit for the supplied SAST CI configuration.
- """
- status: String!
-
- """
- Redirect path to use when the response is successful.
- """
- successPath: String
-}
-
-"""
-A tag expiration policy designed to keep only the images that matter most
-"""
-type ContainerExpirationPolicy {
- """
- This container expiration policy schedule.
- """
- cadence: ContainerExpirationPolicyCadenceEnum!
-
- """
- Timestamp of when the container expiration policy was created.
- """
- createdAt: Time!
-
- """
- Indicates whether this container expiration policy is enabled.
- """
- enabled: Boolean!
-
- """
- Number of tags to retain.
- """
- keepN: ContainerExpirationPolicyKeepEnum
-
- """
- Tags with names matching this regex pattern will expire.
- """
- nameRegex: UntrustedRegexp
-
- """
- Tags with names matching this regex pattern will be preserved.
- """
- nameRegexKeep: UntrustedRegexp
-
- """
- Next time that this container expiration policy will get executed.
- """
- nextRunAt: Time
-
- """
- Tags older that this will expire.
- """
- olderThan: ContainerExpirationPolicyOlderThanEnum
-
- """
- Timestamp of when the container expiration policy was updated.
- """
- updatedAt: Time!
-}
-
-enum ContainerExpirationPolicyCadenceEnum {
- """
- Every day
- """
- EVERY_DAY
-
- """
- Every month
- """
- EVERY_MONTH
-
- """
- Every three months
- """
- EVERY_THREE_MONTHS
-
- """
- Every two weeks
- """
- EVERY_TWO_WEEKS
-
- """
- Every week
- """
- EVERY_WEEK
-}
-
-enum ContainerExpirationPolicyKeepEnum {
- """
- 50 tags per image name
- """
- FIFTY_TAGS
-
- """
- 5 tags per image name
- """
- FIVE_TAGS
-
- """
- 100 tags per image name
- """
- ONE_HUNDRED_TAGS
-
- """
- 1 tag per image name
- """
- ONE_TAG
-
- """
- 10 tags per image name
- """
- TEN_TAGS
-
- """
- 25 tags per image name
- """
- TWENTY_FIVE_TAGS
-}
-
-enum ContainerExpirationPolicyOlderThanEnum {
- """
- 14 days until tags are automatically removed
- """
- FOURTEEN_DAYS
-
- """
- 90 days until tags are automatically removed
- """
- NINETY_DAYS
-
- """
- 7 days until tags are automatically removed
- """
- SEVEN_DAYS
-
- """
- 30 days until tags are automatically removed
- """
- THIRTY_DAYS
-}
-
-"""
-A container repository
-"""
-type ContainerRepository {
- """
- Can the current user delete the container repository.
- """
- canDelete: Boolean!
-
- """
- Timestamp when the container repository was created.
- """
- createdAt: Time!
-
- """
- The tags cleanup status for the container repository.
- """
- expirationPolicyCleanupStatus: ContainerRepositoryCleanupStatus
-
- """
- Timestamp when the cleanup done by the expiration policy was started on the container repository.
- """
- expirationPolicyStartedAt: Time
-
- """
- ID of the container repository.
- """
- id: ID!
-
- """
- URL of the container repository.
- """
- location: String!
-
- """
- Name of the container repository.
- """
- name: String!
-
- """
- Path of the container repository.
- """
- path: String!
-
- """
- Project of the container registry.
- """
- project: Project!
-
- """
- Status of the container repository.
- """
- status: ContainerRepositoryStatus
-
- """
- Number of tags associated with this image.
- """
- tagsCount: Int!
-
- """
- Timestamp when the container repository was updated.
- """
- updatedAt: Time!
-}
-
-"""
-Status of the tags cleanup of a container repository
-"""
-enum ContainerRepositoryCleanupStatus {
- """
- The tags cleanup is ongoing.
- """
- ONGOING
-
- """
- The tags cleanup is scheduled and is going to be executed shortly.
- """
- SCHEDULED
-
- """
- The tags cleanup has been partially executed. There are still remaining tags to delete.
- """
- UNFINISHED
-
- """
- The tags cleanup is not scheduled. This is the default state.
- """
- UNSCHEDULED
-}
-
-"""
-The connection type for ContainerRepository.
-"""
-type ContainerRepositoryConnection {
- """
- A list of edges.
- """
- edges: [ContainerRepositoryEdge]
-
- """
- A list of nodes.
- """
- nodes: [ContainerRepository]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Details of a container repository
-"""
-type ContainerRepositoryDetails {
- """
- Can the current user delete the container repository.
- """
- canDelete: Boolean!
-
- """
- Timestamp when the container repository was created.
- """
- createdAt: Time!
-
- """
- The tags cleanup status for the container repository.
- """
- expirationPolicyCleanupStatus: ContainerRepositoryCleanupStatus
-
- """
- Timestamp when the cleanup done by the expiration policy was started on the container repository.
- """
- expirationPolicyStartedAt: Time
-
- """
- ID of the container repository.
- """
- id: ID!
-
- """
- URL of the container repository.
- """
- location: String!
-
- """
- Name of the container repository.
- """
- name: String!
-
- """
- Path of the container repository.
- """
- path: String!
-
- """
- Project of the container registry.
- """
- project: Project!
-
- """
- Status of the container repository.
- """
- status: ContainerRepositoryStatus
-
- """
- Tags of the container repository.
- """
- 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
- ): ContainerRepositoryTagConnection
-
- """
- Number of tags associated with this image.
- """
- tagsCount: Int!
-
- """
- Timestamp when the container repository was updated.
- """
- updatedAt: Time!
-}
-
-"""
-An edge in a connection.
-"""
-type ContainerRepositoryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ContainerRepository
-}
-
-"""
-Identifier of ContainerRepository.
-"""
-scalar ContainerRepositoryID
-
-"""
-Values for sorting container repositories
-"""
-enum ContainerRepositorySort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Name by ascending order
- """
- NAME_ASC
-
- """
- Name by descending order
- """
- NAME_DESC
-
- """
- Updated at ascending order
- """
- UPDATED_ASC
-
- """
- Updated at descending order
- """
- UPDATED_DESC
-
- """
- Created at ascending order
- """
- created_asc @deprecated(reason: "Use CREATED_ASC. Deprecated in 13.5.")
-
- """
- Created at descending order
- """
- created_desc @deprecated(reason: "Use CREATED_DESC. Deprecated in 13.5.")
-
- """
- Updated at ascending order
- """
- updated_asc @deprecated(reason: "Use UPDATED_ASC. Deprecated in 13.5.")
-
- """
- Updated at descending order
- """
- updated_desc @deprecated(reason: "Use UPDATED_DESC. Deprecated in 13.5.")
-}
-
-"""
-Status of a container repository
-"""
-enum ContainerRepositoryStatus {
- """
- Delete Failed status.
- """
- DELETE_FAILED
-
- """
- Delete Scheduled status.
- """
- DELETE_SCHEDULED
-}
-
-"""
-A tag from a container repository
-"""
-type ContainerRepositoryTag {
- """
- Can the current user delete this tag.
- """
- canDelete: Boolean!
-
- """
- Timestamp when the tag was created.
- """
- createdAt: Time
-
- """
- Digest of the tag.
- """
- digest: String
-
- """
- URL of the tag.
- """
- location: String!
-
- """
- Name of the tag.
- """
- name: String!
-
- """
- Path of the tag.
- """
- path: String!
-
- """
- Revision of the tag.
- """
- revision: String
-
- """
- Short revision of the tag.
- """
- shortRevision: String
-
- """
- The size of the tag.
- """
- totalSize: BigInt
-}
-
-"""
-The connection type for ContainerRepositoryTag.
-"""
-type ContainerRepositoryTagConnection {
- """
- A list of edges.
- """
- edges: [ContainerRepositoryTagEdge]
-
- """
- A list of nodes.
- """
- nodes: [ContainerRepositoryTag]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ContainerRepositoryTagEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ContainerRepositoryTag
-}
-
-"""
-Autogenerated input type of CreateAlertIssue
-"""
-input CreateAlertIssueInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the alert to mutate.
- """
- iid: String!
-
- """
- The project the alert to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of CreateAlertIssue
-"""
-type CreateAlertIssuePayload {
- """
- The alert after mutation.
- """
- alert: AlertManagementAlert
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue created after mutation.
- """
- issue: Issue
-
- """
- The to-do item after mutation.
- """
- todo: Todo
-}
-
-"""
-Autogenerated input type of CreateAnnotation
-"""
-input CreateAnnotationInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the cluster to add an annotation to.
- """
- clusterId: ClustersClusterID
-
- """
- The path to a file defining the dashboard on which the annotation should be added.
- """
- dashboardPath: String!
-
- """
- The description of the annotation.
- """
- description: String!
-
- """
- Timestamp indicating ending moment to which the annotation relates.
- """
- endingAt: Time
-
- """
- The global ID of the environment to add an annotation to.
- """
- environmentId: EnvironmentID
-
- """
- Timestamp indicating starting moment to which the annotation relates.
- """
- startingAt: Time!
-}
-
-"""
-Autogenerated return type of CreateAnnotation
-"""
-type CreateAnnotationPayload {
- """
- The created annotation.
- """
- annotation: MetricsDashboardAnnotation
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateBoard
-"""
-input CreateBoardInput {
- """
- The ID of user to be assigned to the board.
- """
- assigneeId: UserID
-
- """
- 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 ID of iteration to be assigned to the board.
- """
- iterationId: IterationID
-
- """
- The IDs of labels to be added to the board.
- """
- labelIds: [LabelID!]
-
- """
- Labels of the issue.
- """
- labels: [String!]
-
- """
- The ID of milestone to be assigned to the board.
- """
- milestoneId: MilestoneID
-
- """
- The board name.
- """
- name: String
-
- """
- Full path of the project with which the resource is associated.
- """
- projectPath: ID
-
- """
- The weight value to be assigned to the board.
- """
- weight: Int
-}
-
-"""
-Autogenerated return type of CreateBoard
-"""
-type CreateBoardPayload {
- """
- The board after mutation.
- """
- board: Board
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateBranch
-"""
-input CreateBranchInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Name of the branch.
- """
- name: String!
-
- """
- Project full path the branch is associated with.
- """
- projectPath: ID!
-
- """
- Branch name or commit SHA to create branch from.
- """
- ref: String!
-}
-
-"""
-Autogenerated return type of CreateBranch
-"""
-type CreateBranchPayload {
- """
- Branch after mutation.
- """
- branch: Branch
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateClusterAgent
-"""
-input CreateClusterAgentInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Name of the cluster agent.
- """
- name: String!
-
- """
- Full path of the associated project for this cluster agent.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of CreateClusterAgent
-"""
-type CreateClusterAgentPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Cluster agent created after mutation.
- """
- clusterAgent: ClusterAgent
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateComplianceFramework
-"""
-input CreateComplianceFrameworkInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full path of the namespace to add the compliance framework to.
- """
- namespacePath: ID!
-
- """
- Parameters to update the compliance framework with.
- """
- params: ComplianceFrameworkInput!
-}
-
-"""
-Autogenerated return type of CreateComplianceFramework
-"""
-type CreateComplianceFrameworkPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The created compliance framework.
- """
- framework: ComplianceFramework
-}
-
-"""
-Autogenerated input type of CreateCustomEmoji
-"""
-input CreateCustomEmojiInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Namespace full path the emoji is associated with.
- """
- groupPath: ID!
-
- """
- Name of the emoji.
- """
- name: String!
-
- """
- Location of the emoji file.
- """
- url: String!
-}
-
-"""
-Autogenerated return type of CreateCustomEmoji
-"""
-type CreateCustomEmojiPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The new custom emoji.
- """
- customEmoji: CustomEmoji
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateDevopsAdoptionSegment
-"""
-input CreateDevopsAdoptionSegmentInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Namespace ID to set for the segment.
- """
- namespaceId: NamespaceID!
-}
-
-"""
-Autogenerated return type of CreateDevopsAdoptionSegment
-"""
-type CreateDevopsAdoptionSegmentPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The segment after mutation.
- """
- segment: DevopsAdoptionSegment
-}
-
-"""
-Autogenerated input type of CreateDiffNote
-"""
-input CreateDiffNoteInput {
- """
- Content of the note.
- """
- body: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The confidentiality flag of a note. Default is false.
- """
- confidential: Boolean
-
- """
- The global ID of the resource to add a note to.
- """
- noteableId: NoteableID!
-
- """
- The position of this note on a diff.
- """
- position: DiffPositionInput!
-}
-
-"""
-Autogenerated return type of CreateDiffNote
-"""
-type CreateDiffNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of CreateEpic
-"""
-input CreateEpicInput {
- """
- The IDs of labels to be added to the epic.
- """
- addLabelIds: [ID!]
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates if the epic is confidential.
- """
- confidential: Boolean
-
- """
- The description of the epic.
- """
- description: String
-
- """
- The end date of the epic.
- """
- dueDateFixed: String
-
- """
- Indicates end date should be sourced from due_date_fixed field not the issue milestones.
- """
- dueDateIsFixed: Boolean
-
- """
- The group the epic to mutate is in.
- """
- groupPath: ID!
-
- """
- The IDs of labels to be removed from the epic.
- """
- removeLabelIds: [ID!]
-
- """
- The start date of the epic.
- """
- startDateFixed: String
-
- """
- Indicates start date should be sourced from start_date_fixed field not the issue milestones.
- """
- startDateIsFixed: Boolean
-
- """
- The title of the epic.
- """
- title: String
-}
-
-"""
-Autogenerated return type of CreateEpic
-"""
-type CreateEpicPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The created epic.
- """
- epic: Epic
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of CreateImageDiffNote
-"""
-input CreateImageDiffNoteInput {
- """
- Content of the note.
- """
- body: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The confidentiality flag of a note. Default is false.
- """
- confidential: Boolean
-
- """
- The global ID of the resource to add a note to.
- """
- noteableId: NoteableID!
-
- """
- The position of this note on a diff.
- """
- position: DiffImagePositionInput!
-}
-
-"""
-Autogenerated return type of CreateImageDiffNote
-"""
-type CreateImageDiffNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of CreateIssue
-"""
-input CreateIssueInput {
- """
- The array of user IDs to assign to the issue.
- """
- assigneeIds: [UserID!]
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates the issue is confidential.
- """
- confidential: Boolean
-
- """
- Timestamp when the issue was created. Available only for admins and project owners.
- """
- createdAt: Time
-
- """
- Description of the issue.
- """
- description: String
-
- """
- The ID of a discussion to resolve. Also pass `merge_request_to_resolve_discussions_of`.
- """
- discussionToResolve: String
-
- """
- Due date of the issue.
- """
- dueDate: ISO8601Date
-
- """
- The ID of an epic to associate the issue with.
- """
- epicId: EpicID
-
- """
- The desired health status.
- """
- healthStatus: HealthStatus
-
- """
- The IID (internal ID) of a project issue. Only admins and project owners can modify.
- """
- iid: Int
-
- """
- The IDs of labels to be added to the issue.
- """
- labelIds: [LabelID!]
-
- """
- Labels of the issue.
- """
- labels: [String!]
-
- """
- Indicates discussion is locked on the issue.
- """
- locked: Boolean
-
- """
- The IID of a merge request for which to resolve discussions.
- """
- mergeRequestToResolveDiscussionsOf: MergeRequestID
-
- """
- The ID of the milestone to assign to the issue. On update milestone will be removed if set to null.
- """
- milestoneId: MilestoneID
-
- """
- Project full path the issue is associated with.
- """
- projectPath: ID!
-
- """
- Title of the issue.
- """
- title: String!
-
- """
- The weight of the issue.
- """
- weight: Int
-}
-
-"""
-Autogenerated return type of CreateIssue
-"""
-type CreateIssuePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of CreateIteration
-"""
-input CreateIterationInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The description of the iteration.
- """
- description: String
-
- """
- The end date of the iteration.
- """
- dueDate: String
-
- """
- Full path of the group with which the resource is associated.
- """
- groupPath: ID
-
- """
- Full path of the project with which the resource is associated.
- """
- projectPath: ID
-
- """
- The start date of the iteration.
- """
- startDate: String
-
- """
- The title of the iteration.
- """
- title: String
-}
-
-"""
-Autogenerated return type of CreateIteration
-"""
-type CreateIterationPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The created iteration.
- """
- iteration: Iteration
-}
-
-"""
-Autogenerated input type of CreateNote
-"""
-input CreateNoteInput {
- """
- Content of the note.
- """
- body: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The confidentiality flag of a note. Default is false.
- """
- confidential: Boolean
-
- """
- The global ID of the discussion this note is in reply to.
- """
- discussionId: DiscussionID
-
- """
- The global ID of the resource to add a note to.
- """
- noteableId: NoteableID!
-}
-
-"""
-Autogenerated return type of CreateNote
-"""
-type CreateNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of CreateRequirement
-"""
-input CreateRequirementInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description of the requirement.
- """
- description: String
-
- """
- Full project path the requirement is associated with.
- """
- projectPath: ID!
-
- """
- Title of the requirement.
- """
- title: String
-}
-
-"""
-Autogenerated return type of CreateRequirement
-"""
-type CreateRequirementPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Requirement after mutation.
- """
- requirement: Requirement
-}
-
-"""
-Autogenerated input type of CreateSnippet
-"""
-input CreateSnippetInput {
- """
- Actions to perform over the snippet repository and blobs.
- """
- 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
-
- """
- Description of the snippet.
- """
- description: String
-
- """
- The project full path the snippet is associated with.
- """
- 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!
-
- """
- The paths to files uploaded in the snippet description.
- """
- uploadedFiles: [String!]
-
- """
- The visibility level of the snippet.
- """
- visibilityLevel: VisibilityLevelsEnum!
-}
-
-"""
-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
-
- """
- Errors encountered during execution of the mutation.
- """
- 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 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
-}
-
-"""
-Autogenerated input type of CreateTestCase
-"""
-input CreateTestCaseInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The test case description.
- """
- description: String
-
- """
- The IDs of labels to be added to the test case.
- """
- labelIds: [ID!]
-
- """
- The project full path to create the test case.
- """
- projectPath: ID!
-
- """
- The test case title.
- """
- title: String!
-}
-
-"""
-Autogenerated return type of CreateTestCase
-"""
-type CreateTestCasePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The test case created.
- """
- testCase: Issue
-}
-
-interface CurrentUserTodos {
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-}
-
-"""
-A custom emoji uploaded by user
-"""
-type CustomEmoji {
- """
- Whether the emoji is an external link.
- """
- external: Boolean!
-
- """
- The ID of the emoji.
- """
- id: CustomEmojiID!
-
- """
- The name of the emoji.
- """
- name: String!
-
- """
- The link to file of the emoji.
- """
- url: String!
-}
-
-"""
-The connection type for CustomEmoji.
-"""
-type CustomEmojiConnection {
- """
- A list of edges.
- """
- edges: [CustomEmojiEdge]
-
- """
- A list of nodes.
- """
- nodes: [CustomEmoji]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type CustomEmojiEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: CustomEmoji
-}
-
-"""
-Identifier of CustomEmoji.
-"""
-scalar CustomEmojiID
-
-"""
-Autogenerated input type of DastOnDemandScanCreate
-"""
-input DastOnDemandScanCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the scanner profile to be used for the scan.
- """
- dastScannerProfileId: DastScannerProfileID
-
- """
- ID of the site profile to be used for the scan.
- """
- dastSiteProfileId: DastSiteProfileID!
-
- """
- The project the site profile belongs to.
- """
- fullPath: ID!
-}
-
-"""
-Autogenerated return type of DastOnDemandScanCreate
-"""
-type DastOnDemandScanCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- URL of the pipeline that was created.
- """
- 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
-}
-
-"""
-Autogenerated input type of DastProfileDelete
-"""
-input DastProfileDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the profile to be deleted.
- """
- id: DastProfileID!
-}
-
-"""
-Autogenerated return type of DastProfileDelete
-"""
-type DastProfileDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [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
-
-"""
-Autogenerated input type of DastProfileRun
-"""
-input DastProfileRunInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full path for the project the scanner profile belongs to.
- """
- fullPath: ID!
-
- """
- ID of the profile to be used for the scan.
- """
- id: DastProfileID!
-}
-
-"""
-Autogenerated return type of DastProfileRun
-"""
-type DastProfileRunPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- URL of the pipeline that was created.
- """
- pipelineUrl: String
-}
-
-"""
-Autogenerated input type of DastProfileUpdate
-"""
-input DastProfileUpdateInput {
- """
- 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!
-
- """
- ID of the profile to be deleted.
- """
- id: DastProfileID!
-
- """
- The name of the profile.
- """
- name: String
-
- """
- Run scan using profile after update. Defaults to false.
- """
- runAfterUpdate: Boolean = false
-}
-
-"""
-Autogenerated return type of DastProfileUpdate
-"""
-type DastProfileUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The updated profile.
- """
- dastProfile: DastProfile
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The URL of the pipeline that was created. Requires the input argument
- `runAfterUpdate` to be set to `true` when calling the mutation, otherwise no
- pipeline will be created.
- """
- pipelineUrl: String
-}
-
-enum DastScanTypeEnum {
- """
- Active DAST scan. This scan will make active attacks against the target site.
- """
- ACTIVE
-
- """
- Passive DAST scan. This scan will not make active attacks against the target site.
- """
- PASSIVE
-}
-
-"""
-Represents a DAST scanner profile
-"""
-type DastScannerProfile {
- """
- Relative web path to the edit page of a scanner profile.
- """
- editPath: String
-
- """
- ID of the DAST scanner profile. Deprecated in 13.6: Use `id`.
- """
- globalId: DastScannerProfileID! @deprecated(reason: "Use `id`. Deprecated in 13.6.")
-
- """
- ID of the DAST scanner profile.
- """
- id: DastScannerProfileID!
-
- """
- Name of the DAST scanner profile.
- """
- profileName: String
-
- """
- Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.
- """
- scanType: DastScanTypeEnum
-
- """
- Indicates if debug messages should be included in DAST console output. True to include the debug messages.
- """
- showDebugMessages: Boolean!
-
- """
- The maximum number of minutes allowed for the spider to traverse the site.
- """
- spiderTimeout: Int
-
- """
- The maximum number of seconds allowed for the site under test to respond to a request.
- """
- targetTimeout: Int
-
- """
- Indicates if the AJAX spider should be used to crawl the target site. True to
- run the AJAX spider in addition to the traditional spider, and false to run
- only the traditional spider.
- """
- useAjaxSpider: Boolean!
-}
-
-"""
-The connection type for DastScannerProfile.
-"""
-type DastScannerProfileConnection {
- """
- A list of edges.
- """
- edges: [DastScannerProfileEdge]
-
- """
- A list of nodes.
- """
- nodes: [DastScannerProfile]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of DastScannerProfileCreate
-"""
-input DastScannerProfileCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the scanner profile belongs to.
- """
- fullPath: ID!
-
- """
- The name of the scanner profile.
- """
- profileName: String!
-
- """
- Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.
- """
- scanType: DastScanTypeEnum = PASSIVE
-
- """
- Indicates if debug messages should be included in DAST console output. True to include the debug messages.
- """
- showDebugMessages: Boolean = false
-
- """
- The maximum number of minutes allowed for the spider to traverse the site.
- """
- spiderTimeout: Int
-
- """
- The maximum number of seconds allowed for the site under test to respond to a request.
- """
- targetTimeout: Int
-
- """
- Indicates if the AJAX spider should be used to crawl the target site. True to
- run the AJAX spider in addition to the traditional spider, and false to run
- only the traditional spider.
- """
- useAjaxSpider: Boolean = false
-}
-
-"""
-Autogenerated return type of DastScannerProfileCreate
-"""
-type DastScannerProfileCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the scanner profile. Deprecated in 13.6: Use `id`.
- """
- globalId: DastScannerProfileID @deprecated(reason: "Use `id`. Deprecated in 13.6.")
-
- """
- ID of the scanner profile.
- """
- id: DastScannerProfileID
-}
-
-"""
-Autogenerated input type of DastScannerProfileDelete
-"""
-input DastScannerProfileDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full path for the project the scanner profile belongs to.
- """
- fullPath: ID!
-
- """
- ID of the scanner profile to be deleted.
- """
- id: DastScannerProfileID!
-}
-
-"""
-Autogenerated return type of DastScannerProfileDelete
-"""
-type DastScannerProfileDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type DastScannerProfileEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: DastScannerProfile
-}
-
-"""
-Identifier of DastScannerProfile.
-"""
-scalar DastScannerProfileID
-
-"""
-Autogenerated input type of DastScannerProfileUpdate
-"""
-input DastScannerProfileUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the scanner profile belongs to.
- """
- fullPath: ID!
-
- """
- ID of the scanner profile to be updated.
- """
- id: DastScannerProfileID!
-
- """
- The name of the scanner profile.
- """
- profileName: String!
-
- """
- Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.
- """
- scanType: DastScanTypeEnum
-
- """
- Indicates if debug messages should be included in DAST console output. True to include the debug messages.
- """
- showDebugMessages: Boolean
-
- """
- The maximum number of minutes allowed for the spider to traverse the site.
- """
- spiderTimeout: Int!
-
- """
- The maximum number of seconds allowed for the site under test to respond to a request.
- """
- targetTimeout: Int!
-
- """
- Indicates if the AJAX spider should be used to crawl the target site. True to
- run the AJAX spider in addition to the traditional spider, and false to run
- only the traditional spider.
- """
- useAjaxSpider: Boolean
-}
-
-"""
-Autogenerated return type of DastScannerProfileUpdate
-"""
-type DastScannerProfileUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the scanner profile.
- """
- id: DastScannerProfileID
-}
-
-"""
-Represents a DAST Site Profile
-"""
-type DastSiteProfile {
- """
- Relative web path to the edit page of a site profile.
- """
- editPath: String
-
- """
- ID of the site profile.
- """
- id: DastSiteProfileID!
-
- """
- Normalized URL of the target to be scanned.
- """
- normalizedTargetUrl: String
-
- """
- The name of the site profile.
- """
- profileName: String
-
- """
- The URL of the target to be scanned.
- """
- targetUrl: String
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: DastSiteProfilePermissions!
-
- """
- The current validation status of the site profile.
- """
- validationStatus: DastSiteProfileValidationStatusEnum
-}
-
-"""
-The connection type for DastSiteProfile.
-"""
-type DastSiteProfileConnection {
- """
- A list of edges.
- """
- edges: [DastSiteProfileEdge]
-
- """
- A list of nodes.
- """
- nodes: [DastSiteProfile]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of DastSiteProfileCreate
-"""
-input DastSiteProfileCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the site profile belongs to.
- """
- fullPath: ID!
-
- """
- The name of the site profile.
- """
- profileName: String!
-
- """
- The URL of the target to be scanned.
- """
- targetUrl: String
-}
-
-"""
-Autogenerated return type of DastSiteProfileCreate
-"""
-type DastSiteProfileCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the site profile.
- """
- id: DastSiteProfileID
-}
-
-"""
-Autogenerated input type of DastSiteProfileDelete
-"""
-input DastSiteProfileDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the site profile belongs to.
- """
- fullPath: ID!
-
- """
- ID of the site profile to be deleted.
- """
- id: DastSiteProfileID!
-}
-
-"""
-Autogenerated return type of DastSiteProfileDelete
-"""
-type DastSiteProfileDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type DastSiteProfileEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: DastSiteProfile
-}
-
-"""
-Identifier of DastSiteProfile.
-"""
-scalar DastSiteProfileID
-
-"""
-Check permissions for the current user on site profile
-"""
-type DastSiteProfilePermissions {
- """
- Indicates the user can perform `create_on_demand_dast_scan` on this resource
- """
- createOnDemandDastScan: Boolean!
-}
-
-"""
-Autogenerated input type of DastSiteProfileUpdate
-"""
-input DastSiteProfileUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the site profile belongs to.
- """
- fullPath: ID!
-
- """
- ID of the site profile to be updated.
- """
- id: DastSiteProfileID!
-
- """
- The name of the site profile.
- """
- profileName: String!
-
- """
- The URL of the target to be scanned.
- """
- targetUrl: String
-}
-
-"""
-Autogenerated return type of DastSiteProfileUpdate
-"""
-type DastSiteProfileUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the site profile.
- """
- id: DastSiteProfileID
-}
-
-enum DastSiteProfileValidationStatusEnum {
- """
- Site validation process finished but failed
- """
- FAILED_VALIDATION
-
- """
- Site validation process is in progress
- """
- INPROGRESS_VALIDATION
-
- """
- No site validation exists
- """
- NONE
-
- """
- Site validation process finished successfully
- """
- PASSED_VALIDATION
-
- """
- Site validation process has not started
- """
- PENDING_VALIDATION
-}
-
-"""
-Autogenerated input type of DastSiteTokenCreate
-"""
-input DastSiteTokenCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the site token belongs to.
- """
- fullPath: ID!
-
- """
- The URL of the target to be validated.
- """
- targetUrl: String
-}
-
-"""
-Autogenerated return type of DastSiteTokenCreate
-"""
-type DastSiteTokenCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the site token.
- """
- id: DastSiteTokenID
-
- """
- The current validation status of the target.
- """
- status: DastSiteProfileValidationStatusEnum
-
- """
- Token string.
- """
- token: String
-}
-
-"""
-Identifier of DastSiteToken.
-"""
-scalar DastSiteTokenID
-
-"""
-Represents a DAST Site Validation
-"""
-type DastSiteValidation {
- """
- Global ID of the site validation.
- """
- id: DastSiteValidationID!
-
- """
- Normalized URL of the target to be validated.
- """
- normalizedTargetUrl: String
-
- """
- Status of the site validation.
- """
- status: DastSiteProfileValidationStatusEnum!
-}
-
-"""
-The connection type for DastSiteValidation.
-"""
-type DastSiteValidationConnection {
- """
- A list of edges.
- """
- edges: [DastSiteValidationEdge]
-
- """
- A list of nodes.
- """
- nodes: [DastSiteValidation]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of DastSiteValidationCreate
-"""
-input DastSiteValidationCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the site token.
- """
- dastSiteTokenId: DastSiteTokenID!
-
- """
- The project the site profile belongs to.
- """
- fullPath: ID!
-
- """
- The validation strategy to be used.
- """
- strategy: DastSiteValidationStrategyEnum
-
- """
- The path to be requested during validation.
- """
- validationPath: String!
-}
-
-"""
-Autogenerated return type of DastSiteValidationCreate
-"""
-type DastSiteValidationCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- ID of the site validation.
- """
- id: DastSiteValidationID
-
- """
- The current validation status.
- """
- status: DastSiteProfileValidationStatusEnum
-}
-
-"""
-An edge in a connection.
-"""
-type DastSiteValidationEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: 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
- """
- HEADER
-
- """
- Text file validation
- """
- TEXT_FILE
-}
-
-"""
-Color of the data visualization palette
-"""
-enum DataVisualizationColorEnum {
- """
- Aqua color
- """
- AQUA
-
- """
- Blue color
- """
- BLUE
-
- """
- Green color
- """
- GREEN
-
- """
- Magenta color
- """
- MAGENTA
-
- """
- Orange color
- """
- ORANGE
-}
-
-"""
-Weight of the data visualization palette
-"""
-enum DataVisualizationWeightEnum {
- """
- 100 weight
- """
- WEIGHT_100
-
- """
- 200 weight
- """
- WEIGHT_200
-
- """
- 300 weight
- """
- WEIGHT_300
-
- """
- 400 weight
- """
- WEIGHT_400
-
- """
- 50 weight
- """
- WEIGHT_50
-
- """
- 500 weight
- """
- WEIGHT_500
-
- """
- 600 weight
- """
- WEIGHT_600
-
- """
- 700 weight
- """
- WEIGHT_700
-
- """
- 800 weight
- """
- WEIGHT_800
-
- """
- 900 weight
- """
- WEIGHT_900
-
- """
- 950 weight
- """
- WEIGHT_950
-}
-
-"""
-Date represented in ISO 8601
-"""
-scalar Date
-
-"""
-Autogenerated input type of DeleteAnnotation
-"""
-input DeleteAnnotationInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the annotation to delete.
- """
- id: MetricsDashboardAnnotationID!
-}
-
-"""
-Autogenerated return type of DeleteAnnotation
-"""
-type DeleteAnnotationPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DeleteDevopsAdoptionSegment
-"""
-input DeleteDevopsAdoptionSegmentInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the segment.
- """
- id: AnalyticsDevopsAdoptionSegmentID!
-}
-
-"""
-Autogenerated return type of DeleteDevopsAdoptionSegment
-"""
-type DeleteDevopsAdoptionSegmentPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-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.
- """
- completed: Boolean
-
- """
- The number of matching jobs deleted.
- """
- deletedJobs: Int
-
- """
- The queue size after processing.
- """
- queueSize: Int
-}
-
-"""
-A single design
-"""
-type Design implements CurrentUserTodos & DesignFields & Noteable {
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- The diff refs for this design.
- """
- diffRefs: DiffRefs!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- How this design was changed in the current version.
- """
- event: DesignVersionEvent!
-
- """
- The filename of the design.
- """
- filename: String!
-
- """
- The full path to the design file.
- """
- fullPath: String!
-
- """
- The ID of this design.
- """
- id: ID!
-
- """
- The URL of the full-sized image.
- """
- image: 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
- """
- imageV432x230: String
-
- """
- The issue the design belongs to.
- """
- issue: Issue!
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- The total count of user-created notes for this design.
- """
- notesCount: Int!
-
- """
- The project the design belongs to.
- """
- project: Project!
-
- """
- All versions related to this design ordered newest first.
- """
- 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
-
- """
- The Global ID of the most recent acceptable version.
- """
- earlierOrEqualToId: DesignManagementVersionID
-
- """
- The SHA256 of the most recent acceptable version.
- """
- earlierOrEqualToSha: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): DesignVersionConnection!
-}
-
-"""
-A design pinned to a specific version. The image field reflects the design as of the associated version
-"""
-type DesignAtVersion implements DesignFields {
- """
- The underlying design.
- """
- design: Design!
-
- """
- The diff refs for this design.
- """
- diffRefs: DiffRefs!
-
- """
- How this design was changed in the current version.
- """
- event: DesignVersionEvent!
-
- """
- The filename of the design.
- """
- filename: String!
-
- """
- The full path to the design file.
- """
- fullPath: String!
-
- """
- The ID of this design.
- """
- id: ID!
-
- """
- The URL of the full-sized image.
- """
- image: 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
- """
- imageV432x230: String
-
- """
- The issue the design belongs to.
- """
- issue: Issue!
-
- """
- The total count of user-created notes for this design.
- """
- notesCount: Int!
-
- """
- The project the design belongs to.
- """
- project: Project!
-
- """
- The version this design-at-versions is pinned to.
- """
- version: DesignVersion!
-}
-
-"""
-The connection type for DesignAtVersion.
-"""
-type DesignAtVersionConnection {
- """
- A list of edges.
- """
- edges: [DesignAtVersionEdge]
-
- """
- A list of nodes.
- """
- nodes: [DesignAtVersion]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type DesignAtVersionEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: DesignAtVersion
-}
-
-"""
-A collection of designs
-"""
-type DesignCollection {
- """
- Copy state of the design collection.
- """
- copyState: DesignCollectionCopyState
-
- """
- Find a specific design.
- """
- design(
- """
- Find a design by its filename.
- """
- filename: String
-
- """
- Find a design by its ID.
- """
- id: DesignManagementDesignID
- ): Design
-
- """
- Find a design as of a version.
- """
- designAtVersion(
- """
- The Global ID of the design at this version.
- """
- id: DesignManagementDesignAtVersionID!
- ): DesignAtVersion
-
- """
- All designs for the design collection.
- """
- designs(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Filters designs to only those that existed at the version. If argument is
- omitted or nil then all designs will reflect the latest version
- """
- atVersion: DesignManagementVersionID
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Filters designs by their filename.
- """
- filenames: [String!]
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Filters designs by their ID.
- """
- ids: [DesignManagementDesignID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): DesignConnection!
-
- """
- Issue associated with the design collection.
- """
- issue: Issue!
-
- """
- Project associated with the design collection.
- """
- project: Project!
-
- """
- A specific version.
- """
- version(
- """
- The Global ID of the version.
- """
- id: DesignManagementVersionID
-
- """
- The SHA256 of a specific version.
- """
- sha: String
- ): DesignVersion
-
- """
- All versions related to all designs, ordered newest first.
- """
- 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
-
- """
- The Global ID of the most recent acceptable version.
- """
- earlierOrEqualToId: DesignManagementVersionID
-
- """
- The SHA256 of the most recent acceptable version.
- """
- earlierOrEqualToSha: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): DesignVersionConnection!
-}
-
-"""
-Copy state of a DesignCollection
-"""
-enum DesignCollectionCopyState {
- """
- The DesignCollection encountered an error during a copy
- """
- ERROR
-
- """
- The DesignCollection is being copied
- """
- IN_PROGRESS
-
- """
- The DesignCollection has no copy in progress
- """
- READY
-}
-
-"""
-The connection type for Design.
-"""
-type DesignConnection {
- """
- A list of edges.
- """
- edges: [DesignEdge]
-
- """
- A list of nodes.
- """
- nodes: [Design]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type DesignEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Design
-}
-
-interface DesignFields {
- """
- The diff refs for this design.
- """
- diffRefs: DiffRefs!
-
- """
- How this design was changed in the current version.
- """
- event: DesignVersionEvent!
-
- """
- The filename of the design.
- """
- filename: String!
-
- """
- The full path to the design file.
- """
- fullPath: String!
-
- """
- The ID of this design.
- """
- id: ID!
-
- """
- The URL of the full-sized image.
- """
- image: 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
- """
- imageV432x230: String
-
- """
- The issue the design belongs to.
- """
- issue: Issue!
-
- """
- The total count of user-created notes for this design.
- """
- notesCount: Int!
-
- """
- The project the design belongs to.
- """
- project: Project!
-}
-
-type DesignManagement {
- """
- Find a design as of a version.
- """
- designAtVersion(
- """
- The Global ID of the design at this version.
- """
- id: DesignManagementDesignAtVersionID!
- ): DesignAtVersion
-
- """
- Find a version.
- """
- version(
- """
- The Global ID of the version.
- """
- id: DesignManagementVersionID!
- ): DesignVersion
-}
-
-"""
-Autogenerated input type of DesignManagementDelete
-"""
-input DesignManagementDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The filenames of the designs to delete.
- """
- filenames: [String!]!
-
- """
- The IID of the issue to modify designs for.
- """
- iid: ID!
-
- """
- The project where the issue is to upload designs for.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of DesignManagementDelete
-"""
-type DesignManagementDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The new version in which the designs are deleted.
- """
- version: DesignVersion
-}
-
-"""
-Identifier of DesignManagement::DesignAtVersion.
-"""
-scalar DesignManagementDesignAtVersionID
-
-"""
-Identifier of DesignManagement::Design.
-"""
-scalar DesignManagementDesignID
-
-"""
-Autogenerated input type of DesignManagementMove
-"""
-input DesignManagementMoveInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the design to move.
- """
- id: DesignManagementDesignID!
-
- """
- ID of the immediately following design.
- """
- next: DesignManagementDesignID
-
- """
- ID of the immediately preceding design.
- """
- previous: DesignManagementDesignID
-}
-
-"""
-Autogenerated return type of DesignManagementMove
-"""
-type DesignManagementMovePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The current state of the collection.
- """
- designCollection: DesignCollection
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DesignManagementUpload
-"""
-input DesignManagementUploadInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The files to upload.
- """
- files: [Upload!]!
-
- """
- The IID of the issue to modify designs for.
- """
- iid: ID!
-
- """
- The project where the issue is to upload designs for.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of DesignManagementUpload
-"""
-type DesignManagementUploadPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The designs that were uploaded by the mutation.
- """
- designs: [Design!]!
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Any designs that were skipped from the upload due to there being no change to their content since their last version
- """
- skippedDesigns: [Design!]!
-}
-
-"""
-Identifier of DesignManagement::Version.
-"""
-scalar DesignManagementVersionID
-
-"""
-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.
- """
- designAtVersion(
- """
- The ID of a specific design.
- """
- designId: DesignManagementDesignID
-
- """
- The filename of a specific design.
- """
- filename: String
-
- """
- The ID of the DesignAtVersion.
- """
- id: DesignManagementDesignAtVersionID
- ): DesignAtVersion!
-
- """
- All designs that were changed in the version.
- """
- designs(
- """
- 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
- ): DesignConnection!
-
- """
- All designs that are visible at this version, as of this version.
- """
- designsAtVersion(
- """
- 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
-
- """
- Filters designs by their filename.
- """
- filenames: [String!]
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Filters designs by their ID.
- """
- ids: [DesignManagementDesignID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): DesignAtVersionConnection!
-
- """
- ID of the design version.
- """
- id: ID!
-
- """
- SHA of the design version.
- """
- sha: ID!
-}
-
-"""
-The connection type for DesignVersion.
-"""
-type DesignVersionConnection {
- """
- A list of edges.
- """
- edges: [DesignVersionEdge]
-
- """
- A list of nodes.
- """
- nodes: [DesignVersion]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type DesignVersionEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: DesignVersion
-}
-
-"""
-Mutation event of a design within a version
-"""
-enum DesignVersionEvent {
- """
- A creation event
- """
- CREATION
-
- """
- A deletion event
- """
- DELETION
-
- """
- A modification event
- """
- MODIFICATION
-
- """
- No change
- """
- NONE
-}
-
-"""
-Autogenerated input type of DestroyBoard
-"""
-input DestroyBoardInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the board to destroy.
- """
- id: BoardID!
-}
-
-"""
-Autogenerated input type of DestroyBoardList
-"""
-input DestroyBoardListInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the list to destroy. Only label lists are accepted.
- """
- listId: ListID!
-}
-
-"""
-Autogenerated return type of DestroyBoardList
-"""
-type DestroyBoardListPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The list after mutation.
- """
- list: BoardList
-}
-
-"""
-Autogenerated return type of DestroyBoard
-"""
-type DestroyBoardPayload {
- """
- The board after mutation.
- """
- board: Board
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DestroyComplianceFramework
-"""
-input DestroyComplianceFrameworkInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the compliance framework to destroy.
- """
- id: ComplianceManagementFrameworkID!
-}
-
-"""
-Autogenerated return type of DestroyComplianceFramework
-"""
-type DestroyComplianceFrameworkPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DestroyContainerRepository
-"""
-input DestroyContainerRepositoryInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the container repository.
- """
- id: ContainerRepositoryID!
-}
-
-"""
-Autogenerated return type of DestroyContainerRepository
-"""
-type DestroyContainerRepositoryPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The container repository policy after scheduling the deletion.
- """
- containerRepository: ContainerRepository!
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DestroyContainerRepositoryTags
-"""
-input DestroyContainerRepositoryTagsInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the container repository.
- """
- id: ContainerRepositoryID!
-
- """
- Container repository tag(s) to delete. Total number can't be greater than 20
- """
- tagNames: [String!]!
-}
-
-"""
-Autogenerated return type of DestroyContainerRepositoryTags
-"""
-type DestroyContainerRepositoryTagsPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Deleted container repository tags.
- """
- deletedTagNames: [String!]!
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DestroyNote
-"""
-input DestroyNoteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the note to destroy.
- """
- id: NoteID!
-}
-
-"""
-Autogenerated return type of DestroyNote
-"""
-type DestroyNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of DestroySnippet
-"""
-input DestroySnippetInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the snippet to destroy.
- """
- id: SnippetID!
-}
-
-"""
-Autogenerated return type of DestroySnippet
-"""
-type DestroySnippetPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The snippet after mutation.
- """
- snippet: Snippet
-}
-
-type DetailedStatus {
- """
- Action information for the status. This includes method, button title, icon, path, and title.
- """
- action: StatusAction
-
- """
- Path of the details for the status.
- """
- detailsPath: String
-
- """
- Favicon of the status.
- """
- favicon: String
-
- """
- Group of the status.
- """
- group: String
-
- """
- Indicates if the status has further details.
- """
- hasDetails: Boolean
-
- """
- Icon of the status.
- """
- icon: String
-
- """
- Label of the status.
- """
- label: String
-
- """
- Text of the status.
- """
- text: String
-
- """
- Tooltip associated with the status.
- """
- tooltip: String
-}
-
-"""
-Segment
-"""
-type DevopsAdoptionSegment {
- """
- ID of the segment.
- """
- id: ID!
-
- """
- The latest adoption metrics for the segment.
- """
- latestSnapshot: DevopsAdoptionSnapshot
-
- """
- Segment namespace.
- """
- namespace: Namespace
-}
-
-"""
-The connection type for DevopsAdoptionSegment.
-"""
-type DevopsAdoptionSegmentConnection {
- """
- A list of edges.
- """
- edges: [DevopsAdoptionSegmentEdge]
-
- """
- A list of nodes.
- """
- nodes: [DevopsAdoptionSegment]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type DevopsAdoptionSegmentEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: DevopsAdoptionSegment
-}
-
-"""
-Snapshot
-"""
-type DevopsAdoptionSnapshot {
- """
- At least one deployment succeeded.
- """
- deploySucceeded: Boolean!
-
- """
- The end time for the snapshot where the data points were collected.
- """
- endTime: Time!
-
- """
- At least one issue was opened.
- """
- issueOpened: Boolean!
-
- """
- At least one merge request was approved.
- """
- mergeRequestApproved: Boolean!
-
- """
- At least one merge request was opened.
- """
- mergeRequestOpened: Boolean!
-
- """
- At least one pipeline succeeded.
- """
- pipelineSucceeded: Boolean!
-
- """
- The time the snapshot was recorded.
- """
- recordedAt: Time!
-
- """
- At least one runner was used.
- """
- runnerConfigured: Boolean!
-
- """
- At least one security scan succeeded.
- """
- securityScanSucceeded: Boolean!
-
- """
- The start time for the snapshot where the data points were collected.
- """
- startTime: Time!
-}
-
-input DiffImagePositionInput {
- """
- Merge base of the branch the comment was made on.
- """
- baseSha: String
-
- """
- SHA of the HEAD at the time the comment was made.
- """
- headSha: String!
-
- """
- Total height of the image.
- """
- height: Int!
-
- """
- The paths of the file that was changed. Both of the properties of this input
- are optional, but at least one of them is required
- """
- paths: DiffPathsInput!
-
- """
- SHA of the branch being compared against.
- """
- startSha: String!
-
- """
- Total width of the image.
- """
- width: Int!
-
- """
- X position of the note.
- """
- x: Int!
-
- """
- Y position of the note.
- """
- y: Int!
-}
-
-"""
-Identifier of DiffNote.
-"""
-scalar DiffNoteID
-
-input DiffPathsInput {
- """
- The path of the file on the head sha.
- """
- newPath: String
-
- """
- The path of the file on the start sha.
- """
- oldPath: String
-}
-
-type DiffPosition {
- """
- Information about the branch, HEAD, and base at the time of commenting.
- """
- diffRefs: DiffRefs!
-
- """
- Path of the file that was changed.
- """
- filePath: String!
-
- """
- Total height of the image.
- """
- height: Int
-
- """
- Line on HEAD SHA that was changed.
- """
- newLine: Int
-
- """
- Path of the file on the HEAD SHA.
- """
- newPath: String
-
- """
- Line on start SHA that was changed.
- """
- oldLine: Int
-
- """
- Path of the file on the start SHA.
- """
- oldPath: String
-
- """
- Type of file the position refers to.
- """
- positionType: DiffPositionType!
-
- """
- Total width of the image.
- """
- width: Int
-
- """
- X position of the note.
- """
- x: Int
-
- """
- Y position of the note.
- """
- y: Int
-}
-
-input DiffPositionInput {
- """
- Merge base of the branch the comment was made on.
- """
- baseSha: String
-
- """
- SHA of the HEAD at the time the comment was made.
- """
- headSha: String!
-
- """
- Line on HEAD SHA that was changed.
- """
- newLine: Int!
-
- """
- Line on start SHA that was changed.
- """
- oldLine: Int
-
- """
- The paths of the file that was changed. Both of the properties of this input
- are optional, but at least one of them is required
- """
- paths: DiffPathsInput!
-
- """
- SHA of the branch being compared against.
- """
- startSha: String!
-}
-
-"""
-Type of file the position refers to
-"""
-enum DiffPositionType {
- image
- text
-}
-
-type DiffRefs {
- """
- Merge base of the branch the comment was made on.
- """
- baseSha: String
-
- """
- SHA of the HEAD at the time the comment was made.
- """
- headSha: String!
-
- """
- SHA of the branch being compared against.
- """
- startSha: String!
-}
-
-"""
-Changes to a single file
-"""
-type DiffStats {
- """
- Number of lines added to this file.
- """
- additions: Int!
-
- """
- Number of lines deleted from this file.
- """
- deletions: Int!
-
- """
- File path, relative to repository root.
- """
- path: String!
-}
-
-"""
-Aggregated summary of changes
-"""
-type DiffStatsSummary {
- """
- Number of lines added.
- """
- additions: Int!
-
- """
- Number of lines changed.
- """
- changes: Int!
-
- """
- Number of lines deleted.
- """
- deletions: Int!
-
- """
- Number of files changed.
- """
- fileCount: Int!
-}
-
-type Discussion implements ResolvableInterface {
- """
- Timestamp of the discussion's creation.
- """
- createdAt: Time!
-
- """
- ID of this discussion.
- """
- id: DiscussionID!
-
- """
- All notes in the discussion.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- ID used to reply to this discussion.
- """
- replyId: DiscussionID!
-
- """
- Indicates if the object can be resolved.
- """
- resolvable: Boolean!
-
- """
- Indicates if the object is resolved.
- """
- resolved: Boolean!
-
- """
- Timestamp of when the object was resolved.
- """
- resolvedAt: Time
-
- """
- User who resolved the object.
- """
- resolvedBy: User
-}
-
-"""
-The connection type for Discussion.
-"""
-type DiscussionConnection {
- """
- A list of edges.
- """
- edges: [DiscussionEdge]
-
- """
- A list of nodes.
- """
- nodes: [Discussion]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type DiscussionEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Discussion
-}
-
-"""
-Identifier of Discussion.
-"""
-scalar DiscussionID
-
-"""
-Autogenerated input type of DiscussionToggleResolve
-"""
-input DiscussionToggleResolveInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the discussion.
- """
- id: DiscussionID!
-
- """
- Will resolve the discussion when true, and unresolve the discussion when false.
- """
- resolve: Boolean!
-}
-
-"""
-Autogenerated return type of DiscussionToggleResolve
-"""
-type DiscussionToggleResolvePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The discussion after mutation.
- """
- discussion: Discussion
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of DismissVulnerability
-"""
-input DismissVulnerabilityInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Comment why vulnerability should be dismissed.
- """
- comment: String
-
- """
- Reason why vulnerability should be dismissed.
- """
- dismissalReason: VulnerabilityDismissalReason
-
- """
- ID of the vulnerability to be dismissed.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of DismissVulnerability
-"""
-type DismissVulnerabilityPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after dismissal.
- """
- vulnerability: Vulnerability
-}
-
-interface Entry {
- """
- Flat path of the entry.
- """
- flatPath: String!
-
- """
- ID of the entry.
- """
- id: ID!
-
- """
- Name of the entry.
- """
- name: String!
-
- """
- Path of the entry.
- """
- path: String!
-
- """
- Last commit SHA for the entry.
- """
- sha: String!
-
- """
- Type of tree entry.
- """
- type: EntryType!
-}
-
-"""
-Type of a tree entry
-"""
-enum EntryType {
- blob
- commit
- tree
-}
-
-"""
-Describes where code is deployed for a project
-"""
-type 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.
- """
- latestOpenedMostSevereAlert: AlertManagementAlert
-
- """
- Metrics dashboard schema for the environment.
- """
- metricsDashboard(
- """
- Path to a file which defines metrics dashboard eg: 'config/prometheus/common_metrics.yml'.
- """
- path: String!
- ): MetricsDashboard
-
- """
- Human-readable name of the environment.
- """
- name: String!
-
- """
- The path to the environment.
- """
- path: String!
-
- """
- State of the environment, for example: available/stopped.
- """
- state: String!
-}
-
-"""
-The connection type for Environment.
-"""
-type EnvironmentConnection {
- """
- A list of edges.
- """
- edges: [EnvironmentEdge]
-
- """
- A list of nodes.
- """
- nodes: [Environment]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type EnvironmentEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Environment
-}
-
-"""
-Identifier of Environment.
-"""
-scalar EnvironmentID
-
-"""
-Autogenerated input type of EnvironmentsCanaryIngressUpdate
-"""
-input EnvironmentsCanaryIngressUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the environment to update.
- """
- id: EnvironmentID!
-
- """
- The weight of the Canary Ingress.
- """
- weight: Int!
-}
-
-"""
-Autogenerated return type of EnvironmentsCanaryIngressUpdate
-"""
-type EnvironmentsCanaryIngressUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Represents an epic
-"""
-type Epic implements CurrentUserTodos & Eventable & Noteable {
- """
- Author of the epic.
- """
- author: User!
-
- """
- 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(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Filter epics by author.
- """
- authorUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Filter epics by given confidentiality.
- """
- confidential: Boolean
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the epic, e.g., "1".
- """
- iid: ID
-
- """
- Filter epics by IID for autocomplete.
- """
- iidStartsWith: String
-
- """
- List of IIDs of epics, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- Include epics from descendant groups.
- """
- includeDescendantGroups: Boolean = true
-
- """
- Filter epics by labels.
- """
- labelName: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter epics by milestone title, computed from epic's issues.
- """
- milestoneTitle: String
-
- """
- Search query for epic title or description.
- """
- search: String
-
- """
- List epics by sort order.
- """
- sort: EpicSort
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter epics by state.
- """
- state: EpicState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
- ): EpicConnection
-
- """
- Timestamp of when the epic was closed.
- """
- closedAt: Time
-
- """
- Indicates if the epic is confidential.
- """
- confidential: Boolean
-
- """
- Timestamp of when the epic was created.
- """
- createdAt: Time
-
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- Number of open and closed descendant epics and issues.
- """
- descendantCounts: EpicDescendantCount
-
- """
- Total weight of open and closed issues in the epic and its descendants.
- """
- descendantWeightSum: EpicDescendantWeights
-
- """
- Description of the epic.
- """
- description: String
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Number of downvotes the epic has received.
- """
- downvotes: Int!
-
- """
- Due date of the epic.
- """
- dueDate: Time
-
- """
- Fixed due date of the epic.
- """
- dueDateFixed: Time
-
- """
- Inherited due date of the epic from milestones.
- """
- dueDateFromMilestones: Time
-
- """
- Indicates if the due date has been manually set.
- """
- dueDateIsFixed: Boolean
-
- """
- A list of events associated with the object.
- """
- events(
- """
- 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
- ): EventConnection
-
- """
- Group to which the epic belongs.
- """
- group: Group!
-
- """
- Indicates if the epic has children.
- """
- hasChildren: Boolean!
-
- """
- Indicates if the epic has direct issues.
- """
- hasIssues: Boolean!
-
- """
- Indicates if the epic has a parent epic.
- """
- hasParent: Boolean!
-
- """
- Current health status of the epic.
- """
- healthStatus: EpicHealthStatus
-
- """
- ID of the epic.
- """
- id: ID!
-
- """
- Internal ID of the epic.
- """
- iid: ID!
-
- """
- A list of issues associated with the epic.
- """
- issues(
- """
- 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
- ): EpicIssueConnection
-
- """
- Labels assigned to the epic.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- Parent epic of the epic.
- """
- parent: Epic
-
- """
- List of participants for the epic.
- """
- participants(
- """
- 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
- ): UserConnection
-
- """
- Internal reference of the epic. Returned in shortened format by default.
- """
- reference(
- """
- Indicates if the reference should be returned in full.
- """
- full: Boolean = false
- ): String!
-
- """
- URI path of the epic-issue relationship.
- """
- relationPath: String
-
- """
- The relative position of the epic in the epic tree.
- """
- relativePosition: Int
-
- """
- Start date of the epic.
- """
- startDate: Time
-
- """
- Fixed start date of the epic.
- """
- startDateFixed: Time
-
- """
- Inherited start date of the epic from milestones.
- """
- startDateFromMilestones: Time
-
- """
- Indicates if the start date has been manually set.
- """
- startDateIsFixed: Boolean
-
- """
- State of the epic.
- """
- state: EpicState!
-
- """
- Indicates the currently logged in user is subscribed to the epic.
- """
- subscribed: Boolean!
-
- """
- Title of the epic.
- """
- title: String
-
- """
- Timestamp of when the epic was updated.
- """
- updatedAt: Time
-
- """
- Number of upvotes the epic has received.
- """
- upvotes: Int!
-
- """
- Number of user discussions in the epic.
- """
- userDiscussionsCount: Int!
-
- """
- Number of user notes of the epic.
- """
- userNotesCount: Int!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: EpicPermissions!
-
- """
- Web path of the epic.
- """
- webPath: String!
-
- """
- Web URL of the epic.
- """
- webUrl: String!
-}
-
-"""
-Autogenerated input type of EpicAddIssue
-"""
-input EpicAddIssueInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The group the epic to mutate belongs to.
- """
- groupPath: ID!
-
- """
- The IID of the epic to mutate.
- """
- iid: ID!
-
- """
- The IID of the issue to be added.
- """
- issueIid: String!
-
- """
- The full path of the project the issue belongs to.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of EpicAddIssue
-"""
-type EpicAddIssuePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The epic after mutation.
- """
- epic: Epic
-
- """
- The epic-issue relation.
- """
- epicIssue: EpicIssue
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Represents an epic board
-"""
-type EpicBoard {
- """
- Global ID of the board.
- """
- id: BoardsEpicBoardID!
-
- """
- Epic board lists.
- """
- lists(
- """
- 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
-
- """
- Find an epic board list by ID.
- """
- id: BoardsEpicListID
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): EpicListConnection
-
- """
- Name of the board.
- """
- name: String
-}
-
-"""
-The connection type for EpicBoard.
-"""
-type EpicBoardConnection {
- """
- A list of edges.
- """
- edges: [EpicBoardEdge]
-
- """
- A list of nodes.
- """
- nodes: [EpicBoard]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-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 {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: EpicBoard
-}
-
-"""
-Autogenerated input type of EpicBoardListCreate
-"""
-input EpicBoardListCreateInput {
- """
- Create the backlog list.
- """
- backlog: Boolean
-
- """
- Global ID of the issue board to mutate.
- """
- boardId: BoardsEpicBoardID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of an existing label.
- """
- labelId: LabelID
-}
-
-"""
-Autogenerated return type of EpicBoardListCreate
-"""
-type EpicBoardListCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Epic list in the epic board.
- """
- list: EpicList
-}
-
-"""
-The connection type for Epic.
-"""
-type EpicConnection {
- """
- A list of edges.
- """
- edges: [EpicEdge]
-
- """
- A list of nodes.
- """
- nodes: [Epic]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Counts of descendent epics
-"""
-type EpicDescendantCount {
- """
- Number of closed child epics.
- """
- closedEpics: Int
-
- """
- Number of closed epic issues.
- """
- closedIssues: Int
-
- """
- Number of opened child epics.
- """
- openedEpics: Int
-
- """
- Number of opened epic issues.
- """
- openedIssues: Int
-}
-
-"""
-Total weight of open and closed descendant issues
-"""
-type EpicDescendantWeights {
- """
- Total weight of completed (closed) issues in this epic, including epic descendants.
- """
- closedIssues: Int
-
- """
- Total weight of opened issues in this epic, including epic descendants.
- """
- openedIssues: Int
-}
-
-"""
-An edge in a connection.
-"""
-type EpicEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Epic
-}
-
-"""
-Health status of child issues
-"""
-type EpicHealthStatus {
- """
- Number of issues at risk.
- """
- issuesAtRisk: Int
-
- """
- Number of issues that need attention.
- """
- issuesNeedingAttention: Int
-
- """
- Number of issues on track.
- """
- issuesOnTrack: Int
-}
-
-"""
-Identifier of Epic.
-"""
-scalar EpicID
-
-"""
-Relationship between an epic and an issue
-"""
-type EpicIssue implements CurrentUserTodos & Noteable {
- """
- Alert associated to this issue.
- """
- alertManagementAlert: AlertManagementAlert
-
- """
- Assignees of the issue.
- """
- assignees(
- """
- 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
- ): UserConnection
-
- """
- User that created the issue.
- """
- author: User!
-
- """
- Indicates the issue is blocked.
- """
- blocked: Boolean!
-
- """
- Count of issues blocking this issue.
- """
- blockedByCount: Int
-
- """
- Timestamp of when the issue was closed.
- """
- closedAt: Time
-
- """
- Indicates the issue is confidential.
- """
- confidential: Boolean!
-
- """
- User specific email address for the issue.
- """
- createNoteEmail: String
-
- """
- Timestamp of when the issue was created.
- """
- createdAt: Time!
-
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- Description of the issue.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Collection of design images associated with this issue.
- """
- designCollection: DesignCollection
-
- """
- Indicates discussion is locked on the issue.
- """
- discussionLocked: Boolean!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Number of downvotes the issue has received.
- """
- downvotes: Int!
-
- """
- Due date of the issue.
- """
- dueDate: Time
-
- """
- Indicates if a project has email notifications disabled: `true` if email notifications are disabled.
- """
- emailsDisabled: Boolean!
-
- """
- Epic to which this issue belongs.
- """
- epic: Epic
-
- """
- ID of the epic-issue relation.
- """
- epicIssueId: ID!
-
- """
- Current health status.
- """
- healthStatus: HealthStatus
-
- """
- Human-readable time estimate of the issue.
- """
- humanTimeEstimate: String
-
- """
- Human-readable total time reported as spent on the issue.
- """
- humanTotalTimeSpent: String
-
- """
- Global ID of the epic-issue relation.
- """
- id: ID
-
- """
- Internal ID of the issue.
- """
- iid: ID!
-
- """
- Iteration of the issue.
- """
- iteration: Iteration
-
- """
- Labels of the issue.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- Metric images associated to the issue.
- """
- metricImages: [MetricImage!]
-
- """
- Milestone of the issue.
- """
- milestone: Milestone
-
- """
- Indicates if issue got moved from other project.
- """
- moved: Boolean
-
- """
- Updated Issue after it got moved to another project.
- """
- movedTo: Issue
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- List of participants in the issue.
- """
- participants(
- """
- 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
- ): UserConnection
-
- """
- Internal reference of the issue. Returned in shortened format by default.
- """
- reference(
- """
- Boolean option specifying whether the reference should be returned in full.
- """
- full: Boolean = false
- ): String!
-
- """
- URI path of the epic-issue relation.
- """
- relationPath: String
-
- """
- Relative position of the issue (used for positioning in epic tree and issue boards).
- """
- relativePosition: Int
-
- """
- Severity level of the incident.
- """
- severity: IssuableSeverity
-
- """
- Timestamp of when the issue SLA expires.
- """
- slaDueAt: Time
-
- """
- State of the issue.
- """
- state: IssueState!
-
- """
- Indicates whether an issue is published to the status page.
- """
- statusPagePublishedIncident: Boolean
-
- """
- Indicates the currently logged in user is subscribed to the issue.
- """
- subscribed: Boolean!
-
- """
- Task completion status of the issue.
- """
- taskCompletionStatus: TaskCompletionStatus!
-
- """
- Time estimate of the issue.
- """
- timeEstimate: Int!
-
- """
- Title of the issue.
- """
- title: String!
-
- """
- The GitLab Flavored Markdown rendering of `title`
- """
- titleHtml: String
-
- """
- Total time reported as spent on the issue.
- """
- totalTimeSpent: Int!
-
- """
- Type of the issue.
- """
- type: IssueType
-
- """
- Timestamp of when the issue was last updated.
- """
- updatedAt: Time!
-
- """
- User that last updated the issue.
- """
- updatedBy: User
-
- """
- Number of upvotes the issue has received.
- """
- upvotes: Int!
-
- """
- Number of user discussions in the issue.
- """
- userDiscussionsCount: Int!
-
- """
- Number of user notes of the issue.
- """
- userNotesCount: Int!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: IssuePermissions!
-
- """
- Web path of the issue.
- """
- webPath: String!
-
- """
- Web URL of the issue.
- """
- webUrl: String!
-
- """
- Weight of the issue.
- """
- weight: Int
-}
-
-"""
-The connection type for EpicIssue.
-"""
-type EpicIssueConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [EpicIssueEdge]
-
- """
- A list of nodes.
- """
- nodes: [EpicIssue]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-
- """
- Total weight of issues collection.
- """
- weight: Int!
-}
-
-"""
-An edge in a connection.
-"""
-type EpicIssueEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: EpicIssue
-}
-
-"""
-Represents an epic board list
-"""
-type EpicList {
- """
- List epics.
- """
- epics(
- """
- 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
- ): EpicConnection
-
- """
- Global ID of the board list.
- """
- id: BoardsEpicListID!
-
- """
- Label of the list.
- """
- label: Label
-
- """
- Type of the list.
- """
- listType: String!
-
- """
- Position of the list within the board.
- """
- position: Int
-
- """
- Title of the list.
- """
- title: String!
-}
-
-"""
-The connection type for EpicList.
-"""
-type EpicListConnection {
- """
- A list of edges.
- """
- edges: [EpicListEdge]
-
- """
- A list of nodes.
- """
- nodes: [EpicList]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type EpicListEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: EpicList
-}
-
-"""
-Check permissions for the current user on an epic
-"""
-type EpicPermissions {
- """
- Indicates the user can perform `admin_epic` on this resource
- """
- adminEpic: Boolean!
-
- """
- Indicates the user can perform `award_emoji` on this resource
- """
- awardEmoji: Boolean!
-
- """
- Indicates the user can perform `create_epic` on this resource
- """
- createEpic: Boolean!
-
- """
- Indicates the user can perform `create_note` on this resource
- """
- createNote: Boolean!
-
- """
- Indicates the user can perform `destroy_epic` on this resource
- """
- destroyEpic: Boolean!
-
- """
- Indicates the user can perform `read_epic` on this resource
- """
- readEpic: Boolean!
-
- """
- Indicates the user can perform `read_epic_iid` on this resource
- """
- readEpicIid: Boolean!
-
- """
- Indicates the user can perform `update_epic` on this resource
- """
- updateEpic: Boolean!
-}
-
-"""
-Autogenerated input type of EpicSetSubscription
-"""
-input EpicSetSubscriptionInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The group the epic to mutate belongs to.
- """
- groupPath: ID!
-
- """
- The IID of the epic to mutate.
- """
- iid: ID!
-
- """
- The desired state of the subscription.
- """
- subscribedState: Boolean!
-}
-
-"""
-Autogenerated return type of EpicSetSubscription
-"""
-type EpicSetSubscriptionPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The epic after mutation.
- """
- epic: Epic
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Roadmap sort values
-"""
-enum EpicSort {
- """
- End date at ascending order
- """
- end_date_asc
-
- """
- End date at descending order
- """
- end_date_desc
-
- """
- Start date at ascending order
- """
- start_date_asc
-
- """
- Start date at descending order
- """
- start_date_desc
-}
-
-"""
-State of an epic
-"""
-enum EpicState {
- all
- closed
- opened
-}
-
-"""
-State event of an epic
-"""
-enum EpicStateEvent {
- """
- Close the epic
- """
- CLOSE
-
- """
- Reopen the epic
- """
- REOPEN
-}
-
-"""
-A node of an epic tree.
-"""
-input EpicTreeNodeFieldsInputType {
- """
- The ID of the epic_issue or issue that the actual epic or issue is switched with.
- """
- adjacentReferenceId: EpicTreeSortingID
-
- """
- The ID of the epic_issue or epic that is being moved.
- """
- id: EpicTreeSortingID!
-
- """
- ID of the new parent epic.
- """
- newParentId: EpicID
-
- """
- The type of the switch, after or before allowed.
- """
- relativePosition: MoveType
-}
-
-"""
-Autogenerated input type of EpicTreeReorder
-"""
-input EpicTreeReorderInput {
- """
- The ID of the base epic of the tree.
- """
- baseEpicId: EpicID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Parameters for updating the tree positions.
- """
- moved: EpicTreeNodeFieldsInputType!
-}
-
-"""
-Autogenerated return type of EpicTreeReorder
-"""
-type EpicTreeReorderPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Identifier of EpicTreeSorting.
-"""
-scalar EpicTreeSortingID
-
-"""
-Epic ID wildcard values
-"""
-enum EpicWildcardId {
- """
- Any epic is assigned
- """
- ANY
-
- """
- No epic is assigned
- """
- NONE
-}
-
-"""
-Representing an event
-"""
-type Event {
- """
- Action of the event.
- """
- action: EventAction!
-
- """
- Author of this event.
- """
- author: User!
-
- """
- When this event was created.
- """
- createdAt: Time!
-
- """
- ID of the event.
- """
- id: ID!
-
- """
- When this event was updated.
- """
- updatedAt: Time!
-}
-
-"""
-Event action
-"""
-enum EventAction {
- """
- Approved action
- """
- APPROVED
-
- """
- Archived action
- """
- ARCHIVED
-
- """
- Closed action
- """
- CLOSED
-
- """
- Commented action
- """
- COMMENTED
-
- """
- Created action
- """
- CREATED
-
- """
- Destroyed action
- """
- DESTROYED
-
- """
- Expired action
- """
- EXPIRED
-
- """
- Joined action
- """
- JOINED
-
- """
- Left action
- """
- LEFT
-
- """
- Merged action
- """
- MERGED
-
- """
- Pushed action
- """
- PUSHED
-
- """
- Reopened action
- """
- REOPENED
-
- """
- Updated action
- """
- UPDATED
-}
-
-"""
-The connection type for Event.
-"""
-type EventConnection {
- """
- A list of edges.
- """
- edges: [EventEdge]
-
- """
- A list of nodes.
- """
- nodes: [Event]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type EventEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Event
-}
-
-interface Eventable {
- """
- A list of events associated with the object.
- """
- events(
- """
- 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
- ): EventConnection
-}
-
-"""
-Autogenerated input type of ExportRequirements
-"""
-input ExportRequirementsInput {
- """
- Filter requirements by author username.
- """
- authorUsername: [String!]
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full project path the requirements are associated with.
- """
- projectPath: ID!
-
- """
- Search query for requirement title.
- """
- search: String
-
- """
- List of selected requirements fields to be exported.
- """
- selectedFields: [String!]
-
- """
- List requirements by sort order.
- """
- sort: Sort
-
- """
- Filter requirements by state.
- """
- state: RequirementState
-}
-
-"""
-Autogenerated return type of ExportRequirements
-"""
-type ExportRequirementsPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Represents an external issue
-"""
-type ExternalIssue {
- """
- Timestamp of when the issue was created.
- """
- createdAt: Time
-
- """
- Type of external tracker.
- """
- externalTracker: String
-
- """
- Relative reference of the issue in the external tracker.
- """
- relativeReference: String
-
- """
- Status of the issue in the external tracker.
- """
- status: String
-
- """
- Title of the issue in the external tracker.
- """
- title: String
-
- """
- Timestamp of when the issue was updated.
- """
- updatedAt: Time
-
- """
- URL to the issue in the external tracker.
- """
- webUrl: String
-}
-
-type GeoNode {
- """
- The maximum concurrency of container repository sync for this secondary node.
- """
- containerRepositoriesMaxCapacity: Int
-
- """
- Indicates whether this Geo node is enabled.
- """
- enabled: Boolean
-
- """
- The maximum concurrency of LFS/attachment backfill for this secondary node.
- """
- filesMaxCapacity: Int
-
- """
- ID of this GeoNode.
- """
- id: ID!
-
- """
- The URL defined on the primary node that secondary nodes should use to contact it.
- """
- internalUrl: String
-
- """
- Find merge request diff registries on this Geo node.
- """
- mergeRequestDiffRegistries(
- """
- 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
-
- """
- Filters registries by their ID.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): MergeRequestDiffRegistryConnection
-
- """
- The interval (in days) in which the repository verification is valid. Once expired, it will be reverified.
- """
- minimumReverificationInterval: Int
-
- """
- The unique identifier for this Geo node.
- """
- name: String
-
- """
- Package file registries of the GeoNode.
- """
- packageFileRegistries(
- """
- 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
-
- """
- Filters registries by their ID.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): PackageFileRegistryConnection
-
- """
- Indicates whether this Geo node is the primary.
- """
- primary: Boolean
-
- """
- The maximum concurrency of repository backfill for this secondary node.
- """
- reposMaxCapacity: Int
-
- """
- The namespaces that should be synced, if `selective_sync_type` == `namespaces`.
- """
- selectiveSyncNamespaces(
- """
- 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
- ): NamespaceConnection
-
- """
- The repository storages whose projects should be synced, if `selective_sync_type` == `shards`.
- """
- selectiveSyncShards: [String!]
-
- """
- Indicates if syncing is limited to only specific groups, or shards.
- """
- selectiveSyncType: String
-
- """
- Find snippet repository registries on this Geo node.
- """
- snippetRepositoryRegistries(
- """
- 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
-
- """
- Filters registries by their ID.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): SnippetRepositoryRegistryConnection
-
- """
- Indicates if this secondary node will replicate blobs in Object Storage.
- """
- syncObjectStorage: Boolean
-
- """
- Find terraform state version registries on this Geo node.
- """
- terraformStateVersionRegistries(
- """
- 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
-
- """
- Filters registries by their ID.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): TerraformStateVersionRegistryConnection
-
- """
- The user-facing URL for this Geo node.
- """
- url: String
-
- """
- The maximum concurrency of repository verification for this secondary node.
- """
- verificationMaxCapacity: Int
-}
-
-"""
-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.
- """
- createdAt: Time!
-
- """
- Indicates whether Grafana integration is enabled.
- """
- enabled: Boolean!
-
- """
- URL for the Grafana host for the Grafana integration.
- """
- grafanaUrl: String!
-
- """
- Internal ID of the Grafana integration.
- """
- id: ID!
-
- """
- Timestamp of the issue's last activity.
- """
- updatedAt: Time!
-}
-
-type Group {
- """
- Size limit for repositories in the namespace in bytes.
- """
- actualRepositorySizeLimit: Float
-
- """
- Additional storage purchased for the root namespace in bytes.
- """
- additionalPurchasedStorageSize: Float
-
- """
- Indicates whether Auto DevOps is enabled for all projects within this group.
- """
- autoDevopsEnabled: Boolean
-
- """
- Avatar URL of the group.
- """
- avatarUrl: String
-
- """
- A single board of the group.
- """
- board(
- """
- The board's ID.
- """
- id: BoardID!
- ): Board
-
- """
- Boards of the group.
- """
- boards(
- """
- 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
-
- """
- Find a board by its ID.
- """
- id: BoardID
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): BoardConnection
-
- """
- Represents the code coverage activity for this group.
- """
- codeCoverageActivities(
- """
- 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
-
- """
- First day for which to fetch code coverage activity (maximum time window is set to 90 days).
- """
- startDate: Date!
- ): CodeCoverageActivityConnection
-
- """
- Compliance frameworks available to projects in this namespace. Available only
- when feature flag `ff_custom_compliance_frameworks` is enabled.
- """
- complianceFrameworks(
- """
- 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
-
- """
- Global ID of a specific compliance framework to return.
- """
- id: ComplianceManagementFrameworkID
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): ComplianceFrameworkConnection
-
- """
- Container repositories of the group.
- """
- containerRepositories(
- """
- 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
-
- """
- Filter the container repositories by their name.
- """
- name: String
-
- """
- Sort container repositories by this criteria.
- """
- sort: ContainerRepositorySort = created_desc
- ): ContainerRepositoryConnection
-
- """
- Number of container repositories in the group.
- """
- containerRepositoriesCount: Int!
-
- """
- Includes at least one project where the repository size exceeds the limit.
- """
- containsLockedProjects: Boolean!
-
- """
- Custom emoji within this namespace. Available only when feature flag `custom_emoji` is enabled.
- """
- customEmoji(
- """
- 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
- ): CustomEmojiConnection
-
- """
- Description of the namespace.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Indicates if a group has email notifications disabled.
- """
- emailsDisabled: Boolean
-
- """
- Find a single epic.
- """
- epic(
- """
- Filter epics by author.
- """
- authorUsername: String
-
- """
- Filter epics by given confidentiality.
- """
- confidential: Boolean
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- IID of the epic, e.g., "1".
- """
- iid: ID
-
- """
- Filter epics by IID for autocomplete.
- """
- iidStartsWith: String
-
- """
- List of IIDs of epics, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- Include epics from descendant groups.
- """
- includeDescendantGroups: Boolean = true
-
- """
- Filter epics by labels.
- """
- labelName: [String!]
-
- """
- Filter epics by milestone title, computed from epic's issues.
- """
- milestoneTitle: String
-
- """
- Search query for epic title or description.
- """
- search: String
-
- """
- List epics by sort order.
- """
- sort: EpicSort
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter epics by state.
- """
- state: EpicState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
- ): Epic
-
- """
- Find a single epic board.
- """
- epicBoard(
- """
- Find an epic board by ID.
- """
- id: BoardsEpicBoardID!
- ): EpicBoard
-
- """
- Find epic boards.
- """
- epicBoards(
- """
- 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
- ): EpicBoardConnection
-
- """
- Find epics.
- """
- epics(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Filter epics by author.
- """
- authorUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Filter epics by given confidentiality.
- """
- confidential: Boolean
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the epic, e.g., "1".
- """
- iid: ID
-
- """
- Filter epics by IID for autocomplete.
- """
- iidStartsWith: String
-
- """
- List of IIDs of epics, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- Include epics from descendant groups.
- """
- includeDescendantGroups: Boolean = true
-
- """
- Filter epics by labels.
- """
- labelName: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter epics by milestone title, computed from epic's issues.
- """
- milestoneTitle: String
-
- """
- Search query for epic title or description.
- """
- search: String
-
- """
- List epics by sort order.
- """
- sort: EpicSort
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter epics by state.
- """
- state: EpicState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
- ): EpicConnection
-
- """
- Indicates if Epics are enabled for namespace
- """
- epicsEnabled: Boolean
-
- """
- Full name of the namespace.
- """
- fullName: String!
-
- """
- Full path of the namespace.
- """
- fullPath: ID!
-
- """
- A membership of a user within this group.
- """
- groupMembers(
- """
- 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
-
- """
- Filter members by the given member relations.
- """
- relations: [GroupMemberRelation!] = [DIRECT, INHERITED]
-
- """
- Search query.
- """
- search: String
- ): GroupMemberConnection
-
- """
- Indicates if Group timelogs are enabled for namespace
- """
- groupTimelogsEnabled: Boolean
-
- """
- ID of the namespace.
- """
- id: ID!
-
- """
- Status of the temporary storage increase.
- """
- isTemporaryStorageIncreaseEnabled: Boolean!
-
- """
- Issues for projects in this group.
- """
- issues(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- ID of a user assigned to the issues, "none" and "any" values are supported.
- """
- assigneeId: String
-
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Usernames of users assigned to the issue.
- """
- assigneeUsernames: [String!]
-
- """
- Username of the author of the issue.
- """
- authorUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Issues closed after this date.
- """
- closedAfter: Time
-
- """
- Issues closed before this date.
- """
- closedBefore: Time
-
- """
- Issues created after this date.
- """
- createdAfter: Time
-
- """
- Issues created before this date.
- """
- createdBefore: Time
-
- """
- ID of an epic associated with the issues, "none" and "any" values are supported.
- """
- epicId: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the issue. For example, "1".
- """
- iid: String
-
- """
- List of IIDs of issues. For example, [1, 2].
- """
- iids: [String!]
-
- """
- Include issues belonging to subgroups
- """
- includeSubgroups: Boolean = false
-
- """
- Iterations applied to the issue.
- """
- iterationId: [ID]
-
- """
- Labels applied to this issue.
- """
- labelName: [String]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Milestone applied to this issue.
- """
- milestoneTitle: [String]
-
- """
- Search query for issue title or description.
- """
- search: String
-
- """
- Sort issues by this criteria.
- """
- sort: IssueSort = created_desc
-
- """
- Current state of this issue.
- """
- state: IssuableState
-
- """
- Filter issues by the given issue types.
- """
- types: [IssueType!]
-
- """
- Issues updated after this date.
- """
- updatedAfter: Time
-
- """
- Issues updated before this date.
- """
- updatedBefore: Time
- ): IssueConnection
-
- """
- Find iterations.
- """
- iterations(
- """
- 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
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Global ID of the Iteration to look up.
- """
- id: ID
-
- """
- Internal ID of the Iteration to look up.
- """
- iid: ID
-
- """
- Whether to include ancestor iterations. Defaults to true.
- """
- includeAncestors: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter iterations by state.
- """
- state: IterationState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
-
- """
- Fuzzy search by title.
- """
- title: String
- ): IterationConnection
-
- """
- A label available on this group.
- """
- label(
- """
- Title of the label.
- """
- title: String!
- ): Label
-
- """
- Labels available on this group.
- """
- labels(
- """
- 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
-
- """
- Include labels from ancestor groups.
- """
- includeAncestorGroups: Boolean = false
-
- """
- Include labels from descendant groups.
- """
- includeDescendantGroups: Boolean = false
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Include only group level labels.
- """
- onlyGroupLabels: Boolean = false
-
- """
- A search term to find labels with.
- """
- searchTerm: String
- ): LabelConnection
-
- """
- Indicates if Large File Storage (LFS) is enabled for namespace.
- """
- lfsEnabled: Boolean
-
- """
- Indicates if a group is disabled from getting mentioned.
- """
- mentionsDisabled: Boolean
-
- """
- Merge requests for projects in this group.
- """
- mergeRequests(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of the assignee.
- """
- assigneeUsername: String
-
- """
- Username of the author.
- """
- authorUsername: 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
-
- """
- Array of IIDs of merge requests, for example `[1, 2]`.
- """
- iids: [String!]
-
- """
- Include merge requests belonging to subgroups
- """
- includeSubgroups: Boolean = false
-
- """
- Array of label names. All resolved merge requests will have all of these labels.
- """
- labels: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Merge requests merged after this date.
- """
- mergedAfter: Time
-
- """
- Merge requests merged before this date.
- """
- mergedBefore: Time
-
- """
- Title of the milestone.
- """
- milestoneTitle: String
-
- """
- Sort merge requests by this criteria.
- """
- sort: MergeRequestSort = created_desc
-
- """
- Array of source branch names. All resolved merge requests will have one of these branches as their source.
- """
- sourceBranches: [String!]
-
- """
- A merge request state. If provided, all resolved merge requests will have this state.
- """
- state: MergeRequestState
-
- """
- Array of target branch names. All resolved merge requests will have one of these branches as their target.
- """
- targetBranches: [String!]
- ): MergeRequestConnection
-
- """
- Milestones of the group.
- """
- milestones(
- """
- 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
-
- """
- A date that the milestone contains.
- """
- containingDate: Time
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Array of global milestone IDs, e.g., "gid://gitlab/Milestone/1".
- """
- ids: [ID!]
-
- """
- Also return milestones in all subgroups and subprojects.
- """
- includeDescendants: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- A search string for the title.
- """
- searchTitle: String
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter milestones by state.
- """
- state: MilestoneStateEnum
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
-
- """
- The title of the milestone.
- """
- title: String
- ): MilestoneConnection
-
- """
- Name of the namespace.
- """
- name: String!
-
- """
- The package settings for the namespace.
- """
- packageSettings: PackageSettings
-
- """
- Parent group.
- """
- parent: Group
-
- """
- Path of the namespace.
- """
- path: String!
-
- """
- The permission level required to create projects in the group.
- """
- projectCreationLevel: String
-
- """
- Projects within this namespace.
- """
- projects(
- """
- 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 only the projects which have vulnerabilities.
- """
- hasVulnerabilities: Boolean = false
-
- """
- Include also subgroup projects.
- """
- includeSubgroups: Boolean = false
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Search project with most similar names or paths.
- """
- search: String = null
-
- """
- Sort projects by this criteria.
- """
- sort: NamespaceProjectSort = null
- ): ProjectConnection!
-
- """
- Number of projects in the root namespace where the repository size exceeds the limit.
- """
- repositorySizeExcessProjectCount: Int!
-
- """
- Indicates if users can request access to namespace.
- """
- requestAccessEnabled: Boolean
-
- """
- Indicates if all users in this group are required to set up two-factor authentication.
- """
- requireTwoFactorAuthentication: Boolean
-
- """
- Aggregated storage statistics of the namespace. Only available for root namespaces.
- """
- rootStorageStatistics: RootStorageStatistics
-
- """
- Indicates if sharing a project with another group within this group is prevented.
- """
- shareWithGroupLock: Boolean
-
- """
- Group statistics.
- """
- stats: GroupStats
-
- """
- Total storage limit of the root namespace in bytes.
- """
- storageSizeLimit: Float
-
- """
- The permission level required to create subgroups within the group.
- """
- subgroupCreationLevel: String
-
- """
- Date until the temporary storage increase is active.
- """
- temporaryStorageIncreaseEndsOn: Time
-
- """
- Time logged in issues by group members.
- """
- timelogs(
- """
- 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
-
- """
- List time logs within a date range where the logged date is equal to or before endDate.
- """
- endDate: Time
-
- """
- List time-logs within a time range where the logged time is equal to or before endTime.
- """
- endTime: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- List time logs within a date range where the logged date is equal to or after startDate.
- """
- startDate: Time
-
- """
- List time-logs within a time range where the logged time is equal to or after startTime.
- """
- startTime: Time
- ): TimelogConnection!
-
- """
- Total repository size of all projects in the root namespace in bytes.
- """
- totalRepositorySize: Float
-
- """
- Total excess repository size of all projects in the root namespace in bytes.
- """
- totalRepositorySizeExcess: Float
-
- """
- Time before two-factor authentication is enforced.
- """
- twoFactorGracePeriod: Int
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: GroupPermissions!
-
- """
- Visibility of the namespace.
- """
- visibility: String
-
- """
- Vulnerabilities reported on the projects in the group and its subgroups.
- """
- vulnerabilities(
- """
- 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 only the vulnerabilities which have linked issues.
- """
- hasIssues: Boolean
-
- """
- Returns only the vulnerabilities which have been resolved on default branch.
- """
- hasResolution: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by VulnerabilityScanner.externalId.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- List vulnerabilities by sort order.
- """
- sort: VulnerabilitySort = severity_desc
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilityConnection
-
- """
- Number of vulnerabilities per day for the projects in the group and its subgroups.
- """
- vulnerabilitiesCountByDay(
- """
- 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
-
- """
- Last day for which to fetch vulnerability history.
- """
- endDate: ISO8601Date!
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- First day for which to fetch vulnerability history.
- """
- startDate: ISO8601Date!
- ): VulnerabilitiesCountByDayConnection
-
- """
- Number of vulnerabilities per severity level, per day, for the projects in the
- group and its subgroups. Deprecated in 13.3: Use `vulnerabilitiesCountByDay`.
- """
- vulnerabilitiesCountByDayAndSeverity(
- """
- 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
-
- """
- Last day for which to fetch vulnerability history.
- """
- endDate: ISO8601Date!
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- First day for which to fetch vulnerability history.
- """
- startDate: ISO8601Date!
- ): VulnerabilitiesCountByDayAndSeverityConnection @deprecated(reason: "Use `vulnerabilitiesCountByDay`. Deprecated in 13.3.")
-
- """
- Represents vulnerable project counts for each grade.
- """
- vulnerabilityGrades(
- """
- Include grades belonging to subgroups.
- """
- includeSubgroups: Boolean = false
- ): [VulnerableProjectsByGrade!]!
-
- """
- Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups.
- """
- vulnerabilityScanners(
- """
- 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
- ): VulnerabilityScannerConnection
-
- """
- Counts for each vulnerability severity in the group and its subgroups.
- """
- vulnerabilitySeveritiesCount(
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by scanner.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilitySeveritiesCount
-
- """
- Web URL of the group.
- """
- webUrl: String!
-}
-
-"""
-Identifier of Group.
-"""
-scalar GroupID
-
-"""
-Represents a Group Membership
-"""
-type GroupMember implements MemberInterface {
- """
- GitLab::Access level.
- """
- accessLevel: AccessLevel
-
- """
- Date and time the membership was created.
- """
- createdAt: Time
-
- """
- User that authorized membership.
- """
- createdBy: User
-
- """
- Date and time the membership expires.
- """
- expiresAt: Time
-
- """
- Group that a User is a member of.
- """
- group: Group
-
- """
- ID of the member.
- """
- id: ID!
-
- """
- Date and time the membership was last updated.
- """
- updatedAt: Time
-
- """
- User that is associated with the member object.
- """
- user: User!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: GroupPermissions!
-}
-
-"""
-The connection type for GroupMember.
-"""
-type GroupMemberConnection {
- """
- A list of edges.
- """
- edges: [GroupMemberEdge]
-
- """
- A list of nodes.
- """
- nodes: [GroupMember]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type GroupMemberEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: GroupMember
-}
-
-"""
-Group member relation
-"""
-enum GroupMemberRelation {
- """
- Descendants members
- """
- DESCENDANTS
-
- """
- Direct members
- """
- DIRECT
-
- """
- Inherited members
- """
- INHERITED
-}
-
-type GroupPermissions {
- """
- Indicates the user can perform `read_group` on this resource
- """
- readGroup: Boolean!
-}
-
-"""
-Contains release-related statistics about a group
-"""
-type GroupReleaseStats {
- """
- Total number of releases in all descendant projects of the group. Will always
- return `null` if `group_level_release_statistics` feature flag is disabled
- """
- releasesCount: Int
-
- """
- Percentage of the group's descendant projects that have at least one release.
- Will always return `null` if `group_level_release_statistics` feature flag is disabled
- """
- releasesPercentage: Int
-}
-
-"""
-Contains statistics about a group
-"""
-type GroupStats {
- """
- Statistics related to releases within the group.
- """
- releaseStats: GroupReleaseStats
-}
-
-"""
-Health status of an issue or epic
-"""
-enum HealthStatus {
- atRisk
- needsAttention
- onTrack
-}
-
-"""
-Autogenerated input type of HttpIntegrationCreate
-"""
-input HttpIntegrationCreateInput {
- """
- Whether the integration is receiving alerts.
- """
- active: Boolean!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- 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
-
- """
- The project to create the integration in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of HttpIntegrationCreate
-"""
-type HttpIntegrationCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The HTTP integration.
- """
- integration: AlertManagementHttpIntegration
-}
-
-"""
-Autogenerated input type of HttpIntegrationDestroy
-"""
-input HttpIntegrationDestroyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the integration to remove.
- """
- id: AlertManagementHttpIntegrationID!
-}
-
-"""
-Autogenerated return type of HttpIntegrationDestroy
-"""
-type HttpIntegrationDestroyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The HTTP integration.
- """
- integration: AlertManagementHttpIntegration
-}
-
-"""
-Autogenerated input type of HttpIntegrationResetToken
-"""
-input HttpIntegrationResetTokenInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the integration to mutate.
- """
- id: AlertManagementHttpIntegrationID!
-}
-
-"""
-Autogenerated return type of HttpIntegrationResetToken
-"""
-type HttpIntegrationResetTokenPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The HTTP integration.
- """
- integration: AlertManagementHttpIntegration
-}
-
-"""
-Autogenerated input type of HttpIntegrationUpdate
-"""
-input HttpIntegrationUpdateInput {
- """
- Whether the integration is receiving alerts.
- """
- active: Boolean
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the integration to mutate.
- """
- id: AlertManagementHttpIntegrationID!
-
- """
- 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
-}
-
-"""
-Autogenerated return type of HttpIntegrationUpdate
-"""
-type HttpIntegrationUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The HTTP integration.
- """
- integration: AlertManagementHttpIntegration
-}
-
-"""
-An ISO 8601-encoded date
-"""
-scalar ISO8601Date
-
-"""
-Identifier of IncidentManagement::OncallParticipant.
-"""
-scalar IncidentManagementOncallParticipantID
-
-"""
-Describes an incident management on-call rotation
-"""
-type IncidentManagementOncallRotation {
- """
- ID of the on-call rotation.
- """
- id: IncidentManagementOncallRotationID!
-
- """
- Length of the on-call schedule, in the units specified by lengthUnit.
- """
- length: Int
-
- """
- Unit of the on-call rotation length.
- """
- lengthUnit: OncallRotationUnitEnum
-
- """
- Name of the on-call rotation.
- """
- name: String!
-
- """
- Participants of the on-call rotation.
- """
- participants(
- """
- 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
- ): 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
-}
-
-"""
-The connection type for IncidentManagementOncallRotation.
-"""
-type IncidentManagementOncallRotationConnection {
- """
- A list of edges.
- """
- edges: [IncidentManagementOncallRotationEdge]
-
- """
- A list of nodes.
- """
- nodes: [IncidentManagementOncallRotation]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type IncidentManagementOncallRotationEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: IncidentManagementOncallRotation
-}
-
-"""
-Identifier of IncidentManagement::OncallRotation.
-"""
-scalar IncidentManagementOncallRotationID
-
-"""
-Describes an incident management on-call schedule
-"""
-type IncidentManagementOncallSchedule {
- """
- Description of the on-call schedule.
- """
- description: String
-
- """
- Internal ID of the on-call schedule.
- """
- iid: ID!
-
- """
- Name of the on-call schedule.
- """
- name: String!
-
- """
- On-call rotations for the on-call schedule.
- """
- rotations(
- """
- 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
- ): IncidentManagementOncallRotationConnection!
-
- """
- Time zone of the on-call schedule.
- """
- timezone: String!
-}
-
-"""
-The connection type for IncidentManagementOncallSchedule.
-"""
-type IncidentManagementOncallScheduleConnection {
- """
- A list of edges.
- """
- edges: [IncidentManagementOncallScheduleEdge]
-
- """
- A list of nodes.
- """
- nodes: [IncidentManagementOncallSchedule]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type IncidentManagementOncallScheduleEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- 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.
- """
- projects(
- """
- 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
- ): ProjectConnection!
-
- """
- Represents vulnerable project counts for each grade.
- """
- vulnerabilityGrades: [VulnerableProjectsByGrade!]!
-
- """
- Vulnerability scanners reported on the vulnerabilities from projects selected in Instance Security Dashboard.
- """
- vulnerabilityScanners(
- """
- 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
- ): VulnerabilityScannerConnection
-
- """
- Counts for each vulnerability severity from projects selected in Instance Security Dashboard.
- """
- vulnerabilitySeveritiesCount(
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by scanner.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilitySeveritiesCount
-}
-
-"""
-Represents a recorded measurement (object count) for the Admins
-"""
-type InstanceStatisticsMeasurement {
- """
- Object count.
- """
- count: Int!
-
- """
- The type of objects being measured.
- """
- identifier: MeasurementIdentifier!
-
- """
- The time the measurement was recorded.
- """
- recordedAt: Time
-}
-
-"""
-The connection type for InstanceStatisticsMeasurement.
-"""
-type InstanceStatisticsMeasurementConnection {
- """
- A list of edges.
- """
- edges: [InstanceStatisticsMeasurementEdge]
-
- """
- A list of nodes.
- """
- nodes: [InstanceStatisticsMeasurement]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type InstanceStatisticsMeasurementEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: InstanceStatisticsMeasurement
-}
-
-"""
-Incident severity
-"""
-enum IssuableSeverity {
- """
- Critical severity
- """
- CRITICAL
-
- """
- High severity
- """
- HIGH
-
- """
- Low severity
- """
- LOW
-
- """
- Medium severity
- """
- MEDIUM
-
- """
- Unknown severity
- """
- UNKNOWN
-}
-
-"""
-State of a GitLab issue or merge request
-"""
-enum IssuableState {
- all
- closed
- locked
- opened
-}
-
-type Issue implements CurrentUserTodos & Noteable {
- """
- Alert associated to this issue.
- """
- alertManagementAlert: AlertManagementAlert
-
- """
- Assignees of the issue.
- """
- assignees(
- """
- 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
- ): UserConnection
-
- """
- User that created the issue.
- """
- author: User!
-
- """
- Indicates the issue is blocked.
- """
- blocked: Boolean!
-
- """
- Count of issues blocking this issue.
- """
- blockedByCount: Int
-
- """
- Timestamp of when the issue was closed.
- """
- closedAt: Time
-
- """
- Indicates the issue is confidential.
- """
- confidential: Boolean!
-
- """
- User specific email address for the issue.
- """
- createNoteEmail: String
-
- """
- Timestamp of when the issue was created.
- """
- createdAt: Time!
-
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- Description of the issue.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Collection of design images associated with this issue.
- """
- designCollection: DesignCollection
-
- """
- Indicates discussion is locked on the issue.
- """
- discussionLocked: Boolean!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Number of downvotes the issue has received.
- """
- downvotes: Int!
-
- """
- Due date of the issue.
- """
- dueDate: Time
-
- """
- Indicates if a project has email notifications disabled: `true` if email notifications are disabled.
- """
- emailsDisabled: Boolean!
-
- """
- Epic to which this issue belongs.
- """
- epic: Epic
-
- """
- Current health status.
- """
- healthStatus: HealthStatus
-
- """
- Human-readable time estimate of the issue.
- """
- humanTimeEstimate: String
-
- """
- Human-readable total time reported as spent on the issue.
- """
- humanTotalTimeSpent: String
-
- """
- ID of the issue.
- """
- id: ID!
-
- """
- Internal ID of the issue.
- """
- iid: ID!
-
- """
- Iteration of the issue.
- """
- iteration: Iteration
-
- """
- Labels of the issue.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- Metric images associated to the issue.
- """
- metricImages: [MetricImage!]
-
- """
- Milestone of the issue.
- """
- milestone: Milestone
-
- """
- Indicates if issue got moved from other project.
- """
- moved: Boolean
-
- """
- Updated Issue after it got moved to another project.
- """
- movedTo: Issue
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- List of participants in the issue.
- """
- participants(
- """
- 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
- ): UserConnection
-
- """
- Internal reference of the issue. Returned in shortened format by default.
- """
- reference(
- """
- Boolean option specifying whether the reference should be returned in full.
- """
- full: Boolean = false
- ): String!
-
- """
- Relative position of the issue (used for positioning in epic tree and issue boards).
- """
- relativePosition: Int
-
- """
- Severity level of the incident.
- """
- severity: IssuableSeverity
-
- """
- Timestamp of when the issue SLA expires.
- """
- slaDueAt: Time
-
- """
- State of the issue.
- """
- state: IssueState!
-
- """
- Indicates whether an issue is published to the status page.
- """
- statusPagePublishedIncident: Boolean
-
- """
- Indicates the currently logged in user is subscribed to the issue.
- """
- subscribed: Boolean!
-
- """
- Task completion status of the issue.
- """
- taskCompletionStatus: TaskCompletionStatus!
-
- """
- Time estimate of the issue.
- """
- timeEstimate: Int!
-
- """
- Title of the issue.
- """
- title: String!
-
- """
- The GitLab Flavored Markdown rendering of `title`
- """
- titleHtml: String
-
- """
- Total time reported as spent on the issue.
- """
- totalTimeSpent: Int!
-
- """
- Type of the issue.
- """
- type: IssueType
-
- """
- Timestamp of when the issue was last updated.
- """
- updatedAt: Time!
-
- """
- User that last updated the issue.
- """
- updatedBy: User
-
- """
- Number of upvotes the issue has received.
- """
- upvotes: Int!
-
- """
- Number of user discussions in the issue.
- """
- userDiscussionsCount: Int!
-
- """
- Number of user notes of the issue.
- """
- userNotesCount: Int!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: IssuePermissions!
-
- """
- Web path of the issue.
- """
- webPath: String!
-
- """
- Web URL of the issue.
- """
- webUrl: String!
-
- """
- Weight of the issue.
- """
- weight: Int
-}
-
-"""
-The connection type for Issue.
-"""
-type IssueConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [IssueEdge]
-
- """
- A list of nodes.
- """
- nodes: [Issue]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-
- """
- Total weight of issues collection.
- """
- weight: Int!
-}
-
-"""
-An edge in a connection.
-"""
-type IssueEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Issue
-}
-
-"""
-Identifier of Issue.
-"""
-scalar IssueID
-
-"""
-Autogenerated input type of IssueMove
-"""
-input IssueMoveInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- The project to move the issue to.
- """
- targetProjectPath: ID!
-}
-
-"""
-Autogenerated input type of IssueMoveList
-"""
-input IssueMoveListInput {
- """
- Global ID of the board that the issue is in.
- """
- boardId: ID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the parent epic. NULL when removing the association.
- """
- epicId: EpicID
-
- """
- ID of the board list that the issue will be moved from.
- """
- fromListId: ID
-
- """
- IID of the issue to mutate.
- """
- iid: String!
-
- """
- ID of issue that should be placed after the current issue.
- """
- moveAfterId: ID
-
- """
- ID of issue that should be placed before the current issue.
- """
- moveBeforeId: ID
-
- """
- Project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- ID of the board list that the issue will be moved to.
- """
- toListId: ID
-}
-
-"""
-Autogenerated return type of IssueMoveList
-"""
-type IssueMoveListPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated return type of IssueMove
-"""
-type IssueMovePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Check permissions for the current user on a issue
-"""
-type IssuePermissions {
- """
- Indicates the user can perform `admin_issue` on this resource
- """
- adminIssue: Boolean!
-
- """
- Indicates the user can perform `create_design` on this resource
- """
- createDesign: Boolean!
-
- """
- Indicates the user can perform `create_note` on this resource
- """
- createNote: Boolean!
-
- """
- Indicates the user can perform `destroy_design` on this resource
- """
- destroyDesign: Boolean!
-
- """
- Indicates the user can perform `read_design` on this resource
- """
- readDesign: Boolean!
-
- """
- Indicates the user can perform `read_issue` on this resource
- """
- readIssue: Boolean!
-
- """
- Indicates the user can perform `reopen_issue` on this resource
- """
- reopenIssue: Boolean!
-
- """
- Indicates the user can perform `update_issue` on this resource
- """
- updateIssue: Boolean!
-}
-
-"""
-Autogenerated input type of IssueSetAssignees
-"""
-input IssueSetAssigneesInput {
- """
- The usernames to assign to the resource. Replaces existing assignees by default.
- """
- assigneeUsernames: [String!]!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The operation to perform. Defaults to REPLACE.
- """
- operationMode: MutationOperationMode
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetAssignees
-"""
-type IssueSetAssigneesPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetConfidential
-"""
-input IssueSetConfidentialInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Whether or not to set the issue as a confidential.
- """
- confidential: Boolean!
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetConfidential
-"""
-type IssueSetConfidentialPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetDueDate
-"""
-input IssueSetDueDateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The desired due date for the issue.
- """
- dueDate: Time!
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetDueDate
-"""
-type IssueSetDueDatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetEpic
-"""
-input IssueSetEpicInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the epic to be assigned to the issue, epic will be removed if absent or set to null
- """
- epicId: EpicID
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetEpic
-"""
-type IssueSetEpicPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetIteration
-"""
-input IssueSetIterationInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The iteration to assign to the issue.
- """
- iterationId: IterationID
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetIteration
-"""
-type IssueSetIterationPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetLocked
-"""
-input IssueSetLockedInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- Whether or not to lock discussion on the issue.
- """
- locked: Boolean!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of IssueSetLocked
-"""
-type IssueSetLockedPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetSeverity
-"""
-input IssueSetSeverityInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- Set the incident severity level.
- """
- severity: IssuableSeverity!
-}
-
-"""
-Autogenerated return type of IssueSetSeverity
-"""
-type IssueSetSeverityPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetSubscription
-"""
-input IssueSetSubscriptionInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- The desired state of the subscription.
- """
- subscribedState: Boolean!
-}
-
-"""
-Autogenerated return type of IssueSetSubscription
-"""
-type IssueSetSubscriptionPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of IssueSetWeight
-"""
-input IssueSetWeightInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- The desired weight for the issue.
- """
- weight: Int!
-}
-
-"""
-Autogenerated return type of IssueSetWeight
-"""
-type IssueSetWeightPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Values for sorting issues
-"""
-enum IssueSort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Due date by ascending order
- """
- DUE_DATE_ASC
-
- """
- Due date by descending order
- """
- DUE_DATE_DESC
-
- """
- Label priority by ascending order
- """
- LABEL_PRIORITY_ASC
-
- """
- Label priority by descending order
- """
- LABEL_PRIORITY_DESC
-
- """
- Milestone due date by ascending order
- """
- MILESTONE_DUE_ASC
-
- """
- Milestone due date by descending order
- """
- MILESTONE_DUE_DESC
-
- """
- Priority by ascending order
- """
- PRIORITY_ASC
-
- """
- Priority by descending order
- """
- PRIORITY_DESC
-
- """
- Published issues shown last
- """
- PUBLISHED_ASC
-
- """
- Published issues shown first
- """
- PUBLISHED_DESC
-
- """
- Relative position by ascending order
- """
- RELATIVE_POSITION_ASC
-
- """
- Severity from less critical to more critical
- """
- SEVERITY_ASC
-
- """
- Severity from more critical to less critical
- """
- SEVERITY_DESC
-
- """
- Issues with earliest SLA due time shown first
- """
- SLA_DUE_AT_ASC
-
- """
- Issues with latest SLA due time shown first
- """
- SLA_DUE_AT_DESC
-
- """
- Updated at ascending order
- """
- UPDATED_ASC
-
- """
- Updated at descending order
- """
- UPDATED_DESC
-
- """
- Weight by ascending order
- """
- WEIGHT_ASC
-
- """
- Weight by descending order
- """
- WEIGHT_DESC
-
- """
- Created at ascending order
- """
- created_asc @deprecated(reason: "Use CREATED_ASC. Deprecated in 13.5.")
-
- """
- Created at descending order
- """
- created_desc @deprecated(reason: "Use CREATED_DESC. Deprecated in 13.5.")
-
- """
- Updated at ascending order
- """
- updated_asc @deprecated(reason: "Use UPDATED_ASC. Deprecated in 13.5.")
-
- """
- Updated at descending order
- """
- updated_desc @deprecated(reason: "Use UPDATED_DESC. Deprecated in 13.5.")
-}
-
-"""
-State of a GitLab issue
-"""
-enum IssueState {
- all
- closed
- locked
- opened
-}
-
-"""
-Values for issue state events
-"""
-enum IssueStateEvent {
- """
- Closes the issue
- """
- CLOSE
-
- """
- Reopens the issue
- """
- REOPEN
-}
-
-"""
-Represents total number of issues for the represented statuses
-"""
-type IssueStatusCountsType {
- """
- Number of issues with status ALL for the project
- """
- all: Int
-
- """
- Number of issues with status CLOSED for the project
- """
- closed: Int
-
- """
- Number of issues with status OPENED for the project
- """
- opened: Int
-}
-
-"""
-Issue type
-"""
-enum IssueType {
- """
- Incident issue type
- """
- INCIDENT
-
- """
- Issue issue type
- """
- ISSUE
-
- """
- Test Case issue type
- """
- TEST_CASE
-}
-
-"""
-Represents an iteration object
-"""
-type Iteration implements TimeboxReportInterface {
- """
- Timestamp of iteration creation.
- """
- createdAt: Time!
-
- """
- Description of the iteration.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Timestamp of the iteration due date.
- """
- dueDate: Time
-
- """
- ID of the iteration.
- """
- id: ID!
-
- """
- Internal ID of the iteration.
- """
- iid: ID!
-
- """
- Historically accurate report about the timebox.
- """
- report: TimeboxReport
-
- """
- Web path of the iteration, scoped to the query parent. Only valid for Project parents. Returns null in other contexts.
- """
- scopedPath: String
-
- """
- Web URL of the iteration, scoped to the query parent. Only valid for Project parents. Returns null in other contexts.
- """
- scopedUrl: String
-
- """
- Timestamp of the iteration start date.
- """
- startDate: Time
-
- """
- State of the iteration.
- """
- state: IterationState!
-
- """
- Title of the iteration.
- """
- title: String!
-
- """
- Timestamp of last iteration update.
- """
- updatedAt: Time!
-
- """
- Web path of the iteration.
- """
- webPath: String!
-
- """
- Web URL of the iteration.
- """
- webUrl: String!
-}
-
-"""
-The connection type for Iteration.
-"""
-type IterationConnection {
- """
- A list of edges.
- """
- edges: [IterationEdge]
-
- """
- A list of nodes.
- """
- nodes: [Iteration]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type IterationEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Iteration
-}
-
-"""
-Identifier of Iteration.
-"""
-scalar IterationID
-
-"""
-State of a GitLab iteration
-"""
-enum IterationState {
- all
- closed
- opened
- started
- upcoming
-}
-
-"""
-Iteration ID wildcard values
-"""
-enum IterationWildcardId {
- """
- An iteration is assigned
- """
- ANY
-
- """
- Current iteration
- """
- CURRENT
-
- """
- No iteration is assigned
- """
- NONE
-}
-
-"""
-Represents untyped JSON
-"""
-scalar JSON
-
-type JiraImport {
- """
- Timestamp of when the Jira import was created.
- """
- createdAt: Time
-
- """
- Count of issues that failed to import.
- """
- failedToImportCount: Int!
-
- """
- Count of issues that were successfully imported.
- """
- importedIssuesCount: Int!
-
- """
- Project key for the imported Jira project.
- """
- jiraProjectKey: String!
-
- """
- Timestamp of when the Jira import was scheduled.
- """
- scheduledAt: Time
-
- """
- User that started the Jira import.
- """
- scheduledBy: User
-
- """
- Total count of issues that were attempted to import.
- """
- totalIssueCount: Int!
-}
-
-"""
-The connection type for JiraImport.
-"""
-type JiraImportConnection {
- """
- A list of edges.
- """
- edges: [JiraImportEdge]
-
- """
- A list of nodes.
- """
- nodes: [JiraImport]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type JiraImportEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: JiraImport
-}
-
-"""
-Autogenerated input type of JiraImportStart
-"""
-input JiraImportStartInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Project key of the importer Jira project.
- """
- jiraProjectKey: String!
-
- """
- Project name of the importer Jira project.
- """
- jiraProjectName: String
-
- """
- The project to import the Jira project into.
- """
- projectPath: ID!
-
- """
- The mapping of Jira to GitLab users.
- """
- usersMapping: [JiraUsersMappingInputType!]
-}
-
-"""
-Autogenerated return type of JiraImportStart
-"""
-type JiraImportStartPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The Jira import data after mutation.
- """
- jiraImport: JiraImport
-}
-
-"""
-Autogenerated input type of JiraImportUsers
-"""
-input JiraImportUsersInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project to import the Jira users into.
- """
- projectPath: ID!
-
- """
- The index of the record the import should started at, default 0 (50 records returned).
- """
- startAt: Int
-}
-
-"""
-Autogenerated return type of JiraImportUsers
-"""
-type JiraImportUsersPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Users returned from Jira, matched by email and name if possible.
- """
- jiraUsers: [JiraUser!]
-}
-
-type JiraProject {
- """
- Key of the Jira project.
- """
- key: String!
-
- """
- Name of the Jira project.
- """
- name: String
-
- """
- ID of the Jira project.
- """
- projectId: Int!
-}
-
-"""
-The connection type for JiraProject.
-"""
-type JiraProjectConnection {
- """
- A list of edges.
- """
- edges: [JiraProjectEdge]
-
- """
- A list of nodes.
- """
- nodes: [JiraProject]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type JiraProjectEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: JiraProject
-}
-
-type JiraService implements Service {
- """
- Indicates if the service is active.
- """
- active: Boolean
-
- """
- List of all Jira projects fetched through Jira REST API.
- """
- projects(
- """
- 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
-
- """
- Project name or key.
- """
- name: String
- ): JiraProjectConnection
-
- """
- Class name of the service.
- """
- type: String
-}
-
-type JiraUser {
- """
- ID of the matched GitLab user.
- """
- gitlabId: Int
-
- """
- Name of the matched GitLab user.
- """
- gitlabName: String
-
- """
- Username of the matched GitLab user.
- """
- gitlabUsername: String
-
- """
- Account ID of the Jira user.
- """
- jiraAccountId: String!
-
- """
- Display name of the Jira user.
- """
- jiraDisplayName: String!
-
- """
- Email of the Jira user, returned only for users with public emails.
- """
- jiraEmail: String
-}
-
-input JiraUsersMappingInputType {
- """
- Id of the GitLab user.
- """
- gitlabId: Int
-
- """
- Jira account ID of the user.
- """
- jiraAccountId: String!
-}
-
-enum JobArtifactFileType {
- ACCESSIBILITY
- API_FUZZING
- ARCHIVE
- BROWSER_PERFORMANCE
- CLUSTER_APPLICATIONS
- COBERTURA
- CODEQUALITY
- CONTAINER_SCANNING
- COVERAGE_FUZZING
- DAST
- DEPENDENCY_SCANNING
- DOTENV
- JUNIT
- LICENSE_MANAGEMENT
- LICENSE_SCANNING
- LOAD_PERFORMANCE
- LSIF
- METADATA
- METRICS
- METRICS_REFEREE
- NETWORK_REFEREE
- PERFORMANCE
- REQUIREMENTS
- SAST
- SECRET_DETECTION
- TERRAFORM
- TRACE
-}
-
-"""
-JSON object as raw string
-"""
-scalar JsonString
-
-type Label {
- """
- Background color of the label.
- """
- color: String!
-
- """
- Description of the label (Markdown rendered as HTML for caching).
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Label ID.
- """
- id: ID!
-
- """
- Text color of the label.
- """
- textColor: String!
-
- """
- Content of the label.
- """
- title: String!
-}
-
-"""
-The connection type for Label.
-"""
-type LabelConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [LabelEdge]
-
- """
- A list of nodes.
- """
- nodes: [Label]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of LabelCreate
-"""
-input LabelCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The color of the label given in 6-digit hex notation with leading '#' sign
- (e.g. #FFAABB) or one of the CSS color names in
- https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords.
- """
- color: String = "#6699cc"
-
- """
- Description of the label.
- """
- description: String
-
- """
- Full path of the group with which the resource is associated.
- """
- groupPath: ID
-
- """
- Full path of the project with which the resource is associated.
- """
- projectPath: ID
-
- """
- Title of the label.
- """
- title: String!
-}
-
-"""
-Autogenerated return type of LabelCreate
-"""
-type LabelCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The label after mutation.
- """
- label: Label
-}
-
-"""
-An edge in a connection.
-"""
-type LabelEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Label
-}
-
-"""
-Identifier of Label.
-"""
-scalar LabelID
-
-"""
-Identifier of List.
-"""
-scalar ListID
-
-"""
-List limit metric setting
-"""
-enum ListLimitMetric {
- all_metrics
- issue_count
- issue_weights
-}
-
-"""
-Autogenerated input type of MarkAsSpamSnippet
-"""
-input MarkAsSpamSnippetInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the snippet to update.
- """
- id: SnippetID!
-}
-
-"""
-Autogenerated return type of MarkAsSpamSnippet
-"""
-type MarkAsSpamSnippetPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The snippet after mutation.
- """
- snippet: Snippet
-}
-
-"""
-Possible identifier types for a measurement
-"""
-enum MeasurementIdentifier {
- """
- Group count
- """
- GROUPS
-
- """
- Issue count
- """
- ISSUES
-
- """
- Merge request count
- """
- MERGE_REQUESTS
-
- """
- Pipeline count
- """
- PIPELINES
-
- """
- Pipeline count with canceled status
- """
- PIPELINES_CANCELED
-
- """
- Pipeline count with failed status
- """
- PIPELINES_FAILED
-
- """
- Pipeline count with skipped status
- """
- PIPELINES_SKIPPED
-
- """
- Pipeline count with success status
- """
- PIPELINES_SUCCEEDED
-
- """
- Project count
- """
- PROJECTS
-
- """
- User count
- """
- USERS
-}
-
-interface MemberInterface {
- """
- GitLab::Access level.
- """
- accessLevel: AccessLevel
-
- """
- Date and time the membership was created.
- """
- createdAt: Time
-
- """
- User that authorized membership.
- """
- createdBy: User
-
- """
- Date and time the membership expires.
- """
- expiresAt: Time
-
- """
- ID of the member.
- """
- id: ID!
-
- """
- Date and time the membership was last updated.
- """
- updatedAt: Time
-
- """
- User that is associated with the member object.
- """
- user: User!
-}
-
-"""
-The connection type for MemberInterface.
-"""
-type MemberInterfaceConnection {
- """
- A list of edges.
- """
- edges: [MemberInterfaceEdge]
-
- """
- A list of nodes.
- """
- nodes: [MemberInterface]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type MemberInterfaceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: MemberInterface
-}
-
-type MergeRequest implements CurrentUserTodos & Noteable {
- """
- Indicates if members of the target project can push to the fork.
- """
- allowCollaboration: Boolean
-
- """
- Number of approvals left.
- """
- approvalsLeft: Int
-
- """
- Number of approvals required.
- """
- approvalsRequired: Int
-
- """
- Indicates if the merge request has all the required approvals. Returns true if no required approvals are configured.
- """
- approved: Boolean!
-
- """
- Users who approved the merge request.
- """
- approvedBy(
- """
- 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
- ): UserConnection
-
- """
- Assignees of the merge request.
- """
- assignees(
- """
- 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
- ): UserConnection
-
- """
- User who created this merge request.
- """
- author: User
-
- """
- Indicates if auto merge is enabled for the merge request.
- """
- autoMergeEnabled: Boolean!
-
- """
- Selected auto merge strategy.
- """
- autoMergeStrategy: String
-
- """
- Array of available auto merge strategies.
- """
- availableAutoMergeStrategies: [String!]
-
- """
- Number of commits in the merge request.
- """
- commitCount: Int
-
- """
- Merge request commits excluding merge commits.
- """
- commitsWithoutMergeCommits(
- """
- 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
- ): CommitConnection
-
- """
- Indicates if the merge request has conflicts.
- """
- conflicts: Boolean!
-
- """
- Timestamp of when the merge request was created.
- """
- createdAt: Time!
-
- """
- To-do items for the current user.
- """
- currentUserTodos(
- """
- 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
-
- """
- State of the to-do items.
- """
- state: TodoStateEnum
- ): TodoConnection!
-
- """
- Default merge commit message of the merge request.
- """
- defaultMergeCommitMessage: String
-
- """
- Default merge commit message of the merge request with description.
- """
- defaultMergeCommitMessageWithDescription: String
-
- """
- Default squash commit message of the merge request.
- """
- defaultSquashCommitMessage: String
-
- """
- Description of the merge request (Markdown rendered as HTML for caching).
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Diff head SHA of the merge request.
- """
- diffHeadSha: String
-
- """
- References of the base SHA, the head SHA, and the start SHA for this merge request.
- """
- diffRefs: DiffRefs
-
- """
- Details about which files were changed in this merge request.
- """
- diffStats(
- """
- A specific file-path.
- """
- path: String
- ): [DiffStats!]
-
- """
- Summary of which files were changed in this merge request.
- """
- diffStatsSummary: DiffStatsSummary
-
- """
- Indicates if comments on the merge request are locked to members only.
- """
- discussionLocked: Boolean!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Number of downvotes for the merge request.
- """
- downvotes: Int!
-
- """
- Indicates if the project settings will lead to source branch deletion after merge.
- """
- forceRemoveSourceBranch: Boolean
-
- """
- Indicates if the merge request has CI.
- """
- hasCi: Boolean!
-
- """
- Indicates if the source branch has any security reports.
- """
- hasSecurityReports: Boolean!
-
- """
- The pipeline running on the branch HEAD of the merge request.
- """
- headPipeline: Pipeline
-
- """
- ID of the merge request.
- """
- id: ID!
-
- """
- Internal ID of the merge request.
- """
- iid: String!
-
- """
- Commit SHA of the merge request if merge is in progress.
- """
- inProgressMergeCommitSha: String
-
- """
- Labels of the merge request.
- """
- labels(
- """
- 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
- ): LabelConnection
-
- """
- SHA of the merge request commit (set once merged).
- """
- mergeCommitSha: String
-
- """
- Error message due to a merge error.
- """
- mergeError: String
-
- """
- Indicates if a merge is currently occurring.
- """
- mergeOngoing: Boolean!
-
- """
- Status of the merge request.
- """
- mergeStatus: String
-
- """
- Number of merge requests in the merge train.
- """
- mergeTrainsCount: Int
-
- """
- User who merged this merge request.
- """
- mergeUser: User
-
- """
- Indicates if the merge has been set to be merged when its pipeline succeeds (MWPS).
- """
- mergeWhenPipelineSucceeds: Boolean
-
- """
- Indicates if the merge request is mergeable.
- """
- mergeable: Boolean!
-
- """
- Indicates if all discussions in the merge request have been resolved, allowing the merge request to be merged.
- """
- mergeableDiscussionsState: Boolean
-
- """
- Timestamp of when the merge request was merged, null if not merged.
- """
- mergedAt: Time
-
- """
- The milestone of the merge request.
- """
- milestone: Milestone
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- Participants in the merge request. This includes the author, assignees, reviewers, and users mentioned in notes.
- """
- participants(
- """
- 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
- ): UserConnection
-
- """
- Pipelines for the merge request. Note: for performance reasons, no more than
- the most recent 500 pipelines will be returned.
- """
- 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
-
- """
- Filter pipelines by the ref they are run for.
- """
- ref: String
-
- """
- Filter pipelines by the sha of the commit they are run for.
- """
- sha: String
-
- """
- Filter pipelines by their status.
- """
- status: PipelineStatusEnum
- ): PipelineConnection
-
- """
- Alias for target_project.
- """
- project: Project!
-
- """
- ID of the merge request project.
- """
- projectId: Int!
-
- """
- Rebase commit SHA of the merge request.
- """
- rebaseCommitSha: String
-
- """
- Indicates if there is a rebase currently in progress for the merge request.
- """
- rebaseInProgress: Boolean!
-
- """
- Internal reference of the merge request. Returned in shortened format by default.
- """
- reference(
- """
- Boolean option specifying whether the reference should be returned in full.
- """
- full: Boolean = false
- ): String!
-
- """
- Users from whom a review has been requested.
- """
- reviewers(
- """
- 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
- ): UserConnection
-
- """
- Indicates if the merge request is created by @GitLab-Security-Bot.
- """
- securityAutoFix: Boolean
-
- """
- Indicates if the merge request will be rebased.
- """
- shouldBeRebased: Boolean!
-
- """
- Indicates if the source branch of the merge request will be deleted after merge.
- """
- shouldRemoveSourceBranch: Boolean
-
- """
- Source branch of the merge request.
- """
- sourceBranch: String!
-
- """
- Indicates if the source branch of the merge request exists.
- """
- sourceBranchExists: Boolean!
-
- """
- Indicates if the source branch is protected.
- """
- sourceBranchProtected: Boolean!
-
- """
- Source project of the merge request.
- """
- sourceProject: Project
-
- """
- ID of the merge request source project.
- """
- sourceProjectId: Int
-
- """
- Indicates if squash on merge is enabled.
- """
- squash: Boolean!
-
- """
- Indicates if squash on merge is enabled.
- """
- squashOnMerge: Boolean!
-
- """
- State of the merge request.
- """
- state: MergeRequestState!
-
- """
- Indicates if the currently logged in user is subscribed to this merge request.
- """
- subscribed: Boolean!
-
- """
- Target branch of the merge request.
- """
- targetBranch: String!
-
- """
- Indicates if the target branch of the merge request exists.
- """
- targetBranchExists: Boolean!
-
- """
- Target project of the merge request.
- """
- targetProject: Project!
-
- """
- ID of the merge request target project.
- """
- targetProjectId: Int!
-
- """
- Completion status of tasks
- """
- taskCompletionStatus: TaskCompletionStatus!
-
- """
- Time estimate of the merge request.
- """
- timeEstimate: Int!
-
- """
- Title of the merge request.
- """
- title: String!
-
- """
- The GitLab Flavored Markdown rendering of `title`
- """
- titleHtml: String
-
- """
- Total time reported as spent on the merge request.
- """
- totalTimeSpent: Int!
-
- """
- Timestamp of when the merge request was last updated.
- """
- updatedAt: Time!
-
- """
- Number of upvotes for the merge request.
- """
- upvotes: Int!
-
- """
- Number of user discussions in the merge request.
- """
- userDiscussionsCount: Int
-
- """
- User notes count of the merge request.
- """
- userNotesCount: Int
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: MergeRequestPermissions!
-
- """
- Web URL of the merge request.
- """
- webUrl: String
-
- """
- Indicates if the merge request is a work in progress (WIP).
- """
- workInProgress: Boolean!
-}
-
-"""
-The connection type for MergeRequest.
-"""
-type MergeRequestConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [MergeRequestEdge]
-
- """
- A list of nodes.
- """
- nodes: [MergeRequest]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-
- """
- Total sum of time to merge, in seconds, for the collection of merge requests.
- """
- totalTimeToMerge: Float
-}
-
-"""
-Autogenerated input type of MergeRequestCreate
-"""
-input MergeRequestCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description of the merge request (Markdown rendered as HTML for caching).
- """
- description: String
-
- """
- Labels of the merge request.
- """
- labels: [String!]
-
- """
- Project full path the merge request is associated with.
- """
- projectPath: ID!
-
- """
- Source branch of the merge request.
- """
- sourceBranch: String!
-
- """
- Target branch of the merge request.
- """
- targetBranch: String!
-
- """
- Title of the merge request.
- """
- title: String!
-}
-
-"""
-Autogenerated return type of MergeRequestCreate
-"""
-type MergeRequestCreatePayload {
- """
- 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
-}
-
-"""
-Represents the Geo sync and verification state of a Merge Request diff
-"""
-type MergeRequestDiffRegistry {
- """
- Timestamp when the MergeRequestDiffRegistry was created
- """
- createdAt: Time
-
- """
- ID of the MergeRequestDiffRegistry
- """
- id: ID!
-
- """
- Error message during sync of the MergeRequestDiffRegistry
- """
- lastSyncFailure: String
-
- """
- Timestamp of the most recent successful sync of the MergeRequestDiffRegistry
- """
- lastSyncedAt: Time
-
- """
- ID of the Merge Request diff.
- """
- mergeRequestDiffId: ID!
-
- """
- Timestamp after which the MergeRequestDiffRegistry should be resynced
- """
- retryAt: Time
-
- """
- Number of consecutive failed sync attempts of the MergeRequestDiffRegistry
- """
- retryCount: Int
-
- """
- Sync state of the MergeRequestDiffRegistry
- """
- state: RegistryState
-}
-
-"""
-The connection type for MergeRequestDiffRegistry.
-"""
-type MergeRequestDiffRegistryConnection {
- """
- A list of edges.
- """
- edges: [MergeRequestDiffRegistryEdge]
-
- """
- A list of nodes.
- """
- nodes: [MergeRequestDiffRegistry]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type MergeRequestDiffRegistryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: MergeRequestDiffRegistry
-}
-
-"""
-An edge in a connection.
-"""
-type MergeRequestEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: MergeRequest
-}
-
-"""
-Identifier of MergeRequest.
-"""
-scalar MergeRequestID
-
-"""
-New state to apply to a merge request.
-"""
-enum MergeRequestNewState {
- """
- Close the merge request if it is open.
- """
- CLOSED
-
- """
- Open the merge request if it is closed.
- """
- OPEN
-}
-
-"""
-Check permissions for the current user on a merge request
-"""
-type MergeRequestPermissions {
- """
- Indicates the user can perform `admin_merge_request` on this resource
- """
- adminMergeRequest: Boolean!
-
- """
- Indicates the user can perform `can_merge` on this resource
- """
- canMerge: Boolean!
-
- """
- Indicates the user can perform `cherry_pick_on_current_merge_request` on this resource
- """
- cherryPickOnCurrentMergeRequest: Boolean!
-
- """
- Indicates the user can perform `create_note` on this resource
- """
- createNote: Boolean!
-
- """
- Indicates the user can perform `push_to_source_branch` on this resource
- """
- pushToSourceBranch: Boolean!
-
- """
- Indicates the user can perform `read_merge_request` on this resource
- """
- readMergeRequest: Boolean!
-
- """
- Indicates the user can perform `remove_source_branch` on this resource
- """
- removeSourceBranch: Boolean!
-
- """
- Indicates the user can perform `revert_on_current_merge_request` on this resource
- """
- revertOnCurrentMergeRequest: Boolean!
-
- """
- Indicates the user can perform `update_merge_request` on this resource
- """
- updateMergeRequest: Boolean!
-}
-
-"""
-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 {
- """
- The usernames to assign to the resource. Replaces existing assignees by default.
- """
- assigneeUsernames: [String!]!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the merge request to mutate.
- """
- iid: String!
-
- """
- The operation to perform. Defaults to REPLACE.
- """
- operationMode: MutationOperationMode
-
- """
- The project the merge request to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of MergeRequestSetAssignees
-"""
-type MergeRequestSetAssigneesPayload {
- """
- 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 MergeRequestSetLabels
-"""
-input MergeRequestSetLabelsInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the merge request to mutate.
- """
- iid: String!
-
- """
- The Label IDs to set. Replaces existing labels by default.
- """
- labelIds: [LabelID!]!
-
- """
- Changes the operation mode. Defaults to REPLACE.
- """
- operationMode: MutationOperationMode
-
- """
- The project the merge request to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of MergeRequestSetLabels
-"""
-type MergeRequestSetLabelsPayload {
- """
- 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 MergeRequestSetLocked
-"""
-input MergeRequestSetLockedInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the merge request to mutate.
- """
- iid: String!
-
- """
- Whether or not to lock the merge request.
- """
- locked: Boolean!
-
- """
- The project the merge request to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of MergeRequestSetLocked
-"""
-type MergeRequestSetLockedPayload {
- """
- 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 MergeRequestSetMilestone
-"""
-input MergeRequestSetMilestoneInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the merge request to mutate.
- """
- iid: String!
-
- """
- The milestone to assign to the merge request.
- """
- milestoneId: MilestoneID
-
- """
- The project the merge request to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of MergeRequestSetMilestone
-"""
-type MergeRequestSetMilestonePayload {
- """
- 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 MergeRequestSetSubscription
-"""
-input MergeRequestSetSubscriptionInput {
- """
- 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 desired state of the subscription.
- """
- subscribedState: Boolean!
-}
-
-"""
-Autogenerated return type of MergeRequestSetSubscription
-"""
-type MergeRequestSetSubscriptionPayload {
- """
- 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 MergeRequestSetWip
-"""
-input MergeRequestSetWipInput {
- """
- 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!
-
- """
- Whether or not to set the merge request as a WIP.
- """
- wip: Boolean!
-}
-
-"""
-Autogenerated return type of MergeRequestSetWip
-"""
-type MergeRequestSetWipPayload {
- """
- 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
-}
-
-"""
-Values for sorting merge requests
-"""
-enum MergeRequestSort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Label priority by ascending order
- """
- LABEL_PRIORITY_ASC
-
- """
- Label priority by descending order
- """
- LABEL_PRIORITY_DESC
-
- """
- Merge time by ascending order
- """
- MERGED_AT_ASC
-
- """
- Merge time by descending order
- """
- MERGED_AT_DESC
-
- """
- Milestone due date by ascending order
- """
- MILESTONE_DUE_ASC
-
- """
- Milestone due date by descending order
- """
- MILESTONE_DUE_DESC
-
- """
- Priority by ascending order
- """
- PRIORITY_ASC
-
- """
- Priority by descending order
- """
- PRIORITY_DESC
-
- """
- Updated at ascending order
- """
- UPDATED_ASC
-
- """
- Updated at descending order
- """
- UPDATED_DESC
-
- """
- Created at ascending order
- """
- created_asc @deprecated(reason: "Use CREATED_ASC. Deprecated in 13.5.")
-
- """
- Created at descending order
- """
- created_desc @deprecated(reason: "Use CREATED_DESC. Deprecated in 13.5.")
-
- """
- Updated at ascending order
- """
- updated_asc @deprecated(reason: "Use UPDATED_ASC. Deprecated in 13.5.")
-
- """
- Updated at descending order
- """
- updated_desc @deprecated(reason: "Use UPDATED_DESC. Deprecated in 13.5.")
-}
-
-"""
-State of a GitLab merge request
-"""
-enum MergeRequestState {
- all
- closed
- locked
-
- """
- Merge Request has been merged
- """
- merged
- opened
-}
-
-"""
-Autogenerated input type of MergeRequestUpdate
-"""
-input MergeRequestUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description of the merge request (Markdown rendered as HTML for caching).
- """
- description: String
-
- """
- The IID of the merge request to mutate.
- """
- iid: String!
-
- """
- The project the merge request to mutate is in.
- """
- projectPath: ID!
-
- """
- The action to perform to change the state.
- """
- state: MergeRequestNewState
-
- """
- Target branch of the merge request.
- """
- targetBranch: String
-
- """
- Title of the merge request.
- """
- title: String
-}
-
-"""
-Autogenerated return type of MergeRequestUpdate
-"""
-type MergeRequestUpdatePayload {
- """
- 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
-}
-
-type Metadata {
- """
- Revision.
- """
- revision: String!
-
- """
- Version.
- """
- version: String!
-}
-
-"""
-Represents a metric image upload
-"""
-type MetricImage {
- """
- File name of the metric image.
- """
- fileName: String
-
- """
- File path of the metric image.
- """
- filePath: String
-
- """
- ID of the metric upload.
- """
- id: ID!
-
- """
- Internal ID of the metric upload.
- """
- iid: ID!
-
- """
- URL of the metric source.
- """
- url: String!
-}
-
-type MetricsDashboard {
- """
- Annotations added to the dashboard.
- """
- annotations(
- """
- 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
-
- """
- Timestamp marking date and time from which annotations need to be fetched.
- """
- from: Time!
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Timestamp marking date and time to which annotations need to be fetched.
- """
- to: Time
- ): MetricsDashboardAnnotationConnection
-
- """
- Path to a file with the dashboard definition.
- """
- path: String
-
- """
- Dashboard schema validation warnings.
- """
- schemaValidationWarnings: [String!]
-}
-
-type MetricsDashboardAnnotation {
- """
- Description of the annotation.
- """
- description: String
-
- """
- Timestamp marking end of annotated time span.
- """
- endingAt: Time
-
- """
- ID of the annotation.
- """
- id: ID!
-
- """
- ID of a dashboard panel to which the annotation should be scoped.
- """
- panelId: String
-
- """
- Timestamp marking start of annotated time span.
- """
- startingAt: Time
-}
-
-"""
-The connection type for MetricsDashboardAnnotation.
-"""
-type MetricsDashboardAnnotationConnection {
- """
- A list of edges.
- """
- edges: [MetricsDashboardAnnotationEdge]
-
- """
- A list of nodes.
- """
- nodes: [MetricsDashboardAnnotation]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type MetricsDashboardAnnotationEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: MetricsDashboardAnnotation
-}
-
-"""
-Identifier of Metrics::Dashboard::Annotation.
-"""
-scalar MetricsDashboardAnnotationID
-
-"""
-Represents a milestone
-"""
-type Milestone implements TimeboxReportInterface {
- """
- Timestamp of milestone creation.
- """
- createdAt: Time!
-
- """
- Description of the milestone.
- """
- description: String
-
- """
- Timestamp of the milestone due date.
- """
- dueDate: Time
-
- """
- Indicates if milestone is at group level.
- """
- groupMilestone: Boolean!
-
- """
- ID of the milestone.
- """
- id: ID!
-
- """
- Indicates if milestone is at project level.
- """
- projectMilestone: Boolean!
-
- """
- Historically accurate report about the timebox.
- """
- report: TimeboxReport
-
- """
- Timestamp of the milestone start date.
- """
- startDate: Time
-
- """
- State of the milestone.
- """
- state: MilestoneStateEnum!
-
- """
- Milestone statistics.
- """
- stats: MilestoneStats
-
- """
- Indicates if milestone is at subgroup level.
- """
- subgroupMilestone: Boolean!
-
- """
- Title of the milestone.
- """
- title: String!
-
- """
- Timestamp of last milestone update.
- """
- updatedAt: Time!
-
- """
- Web path of the milestone.
- """
- webPath: String!
-}
-
-"""
-The connection type for Milestone.
-"""
-type MilestoneConnection {
- """
- A list of edges.
- """
- edges: [MilestoneEdge]
-
- """
- A list of nodes.
- """
- nodes: [Milestone]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type MilestoneEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Milestone
-}
-
-"""
-Identifier of Milestone.
-"""
-scalar MilestoneID
-
-"""
-Current state of milestone
-"""
-enum MilestoneStateEnum {
- """
- Milestone is currently active
- """
- active
-
- """
- Milestone is closed
- """
- closed
-}
-
-"""
-Contains statistics about a milestone
-"""
-type MilestoneStats {
- """
- Number of closed issues associated with the milestone.
- """
- closedIssuesCount: Int
-
- """
- Total number of issues associated with the milestone.
- """
- totalIssuesCount: Int
-}
-
-"""
-The position to which the adjacent object should be moved
-"""
-enum MoveType {
- """
- The adjacent object will be moved after the object that is being moved
- """
- after
-
- """
- The adjacent object will be moved before the object that is being moved
- """
- before
-}
-
-type Mutation {
- addAwardEmoji(input: AddAwardEmojiInput!): AddAwardEmojiPayload @deprecated(reason: "Use awardEmojiAdd. Deprecated in 13.2.")
- addProjectToSecurityDashboard(input: AddProjectToSecurityDashboardInput!): AddProjectToSecurityDashboardPayload
- adminSidekiqQueuesDeleteJobs(input: AdminSidekiqQueuesDeleteJobsInput!): AdminSidekiqQueuesDeleteJobsPayload
- alertSetAssignees(input: AlertSetAssigneesInput!): AlertSetAssigneesPayload
- alertTodoCreate(input: AlertTodoCreateInput!): AlertTodoCreatePayload
- apiFuzzingCiConfigurationCreate(input: ApiFuzzingCiConfigurationCreateInput!): ApiFuzzingCiConfigurationCreatePayload
- awardEmojiAdd(input: AwardEmojiAddInput!): AwardEmojiAddPayload
- awardEmojiRemove(input: AwardEmojiRemoveInput!): AwardEmojiRemovePayload
- awardEmojiToggle(input: AwardEmojiToggleInput!): AwardEmojiTogglePayload
- boardListCreate(input: BoardListCreateInput!): BoardListCreatePayload
- boardListUpdateLimitMetrics(input: BoardListUpdateLimitMetricsInput!): BoardListUpdateLimitMetricsPayload
- ciCdSettingsUpdate(input: CiCdSettingsUpdateInput!): CiCdSettingsUpdatePayload
- clusterAgentDelete(input: ClusterAgentDeleteInput!): ClusterAgentDeletePayload
- clusterAgentTokenCreate(input: ClusterAgentTokenCreateInput!): ClusterAgentTokenCreatePayload
- clusterAgentTokenDelete(input: ClusterAgentTokenDeleteInput!): ClusterAgentTokenDeletePayload
- commitCreate(input: CommitCreateInput!): CommitCreatePayload
- configureSast(input: ConfigureSastInput!): ConfigureSastPayload
- createAlertIssue(input: CreateAlertIssueInput!): CreateAlertIssuePayload
- createAnnotation(input: CreateAnnotationInput!): CreateAnnotationPayload
- createBoard(input: CreateBoardInput!): CreateBoardPayload
- createBranch(input: CreateBranchInput!): CreateBranchPayload
- createClusterAgent(input: CreateClusterAgentInput!): CreateClusterAgentPayload
- createComplianceFramework(input: CreateComplianceFrameworkInput!): CreateComplianceFrameworkPayload
-
- """
- Available only when feature flag `custom_emoji` is enabled.
- """
- createCustomEmoji(input: CreateCustomEmojiInput!): CreateCustomEmojiPayload
- createDevopsAdoptionSegment(input: CreateDevopsAdoptionSegmentInput!): CreateDevopsAdoptionSegmentPayload
- createDiffNote(input: CreateDiffNoteInput!): CreateDiffNotePayload
- createEpic(input: CreateEpicInput!): CreateEpicPayload
- createImageDiffNote(input: CreateImageDiffNoteInput!): CreateImageDiffNotePayload
- createIssue(input: CreateIssueInput!): CreateIssuePayload
- createIteration(input: CreateIterationInput!): CreateIterationPayload
- createNote(input: CreateNoteInput!): CreateNotePayload
- createRequirement(input: CreateRequirementInput!): CreateRequirementPayload
- createSnippet(input: CreateSnippetInput!): CreateSnippetPayload
- createTestCase(input: CreateTestCaseInput!): CreateTestCasePayload
- dastOnDemandScanCreate(input: DastOnDemandScanCreateInput!): DastOnDemandScanCreatePayload
- dastProfileCreate(input: DastProfileCreateInput!): DastProfileCreatePayload
- dastProfileDelete(input: DastProfileDeleteInput!): DastProfileDeletePayload
- dastProfileRun(input: DastProfileRunInput!): DastProfileRunPayload
- dastProfileUpdate(input: DastProfileUpdateInput!): DastProfileUpdatePayload
- dastScannerProfileCreate(input: DastScannerProfileCreateInput!): DastScannerProfileCreatePayload
- dastScannerProfileDelete(input: DastScannerProfileDeleteInput!): DastScannerProfileDeletePayload
- dastScannerProfileUpdate(input: DastScannerProfileUpdateInput!): DastScannerProfileUpdatePayload
- dastSiteProfileCreate(input: DastSiteProfileCreateInput!): DastSiteProfileCreatePayload
- dastSiteProfileDelete(input: DastSiteProfileDeleteInput!): DastSiteProfileDeletePayload
- 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
- designManagementMove(input: DesignManagementMoveInput!): DesignManagementMovePayload
- designManagementUpload(input: DesignManagementUploadInput!): DesignManagementUploadPayload
- destroyBoard(input: DestroyBoardInput!): DestroyBoardPayload
- destroyBoardList(input: DestroyBoardListInput!): DestroyBoardListPayload
- destroyComplianceFramework(input: DestroyComplianceFrameworkInput!): DestroyComplianceFrameworkPayload
- destroyContainerRepository(input: DestroyContainerRepositoryInput!): DestroyContainerRepositoryPayload
- destroyContainerRepositoryTags(input: DestroyContainerRepositoryTagsInput!): DestroyContainerRepositoryTagsPayload
- destroyNote(input: DestroyNoteInput!): DestroyNotePayload
- destroySnippet(input: DestroySnippetInput!): DestroySnippetPayload
-
- """
- Toggles the resolved state of a discussion
- """
- discussionToggleResolve(input: DiscussionToggleResolveInput!): DiscussionToggleResolvePayload
- dismissVulnerability(input: DismissVulnerabilityInput!): DismissVulnerabilityPayload @deprecated(reason: "Use vulnerabilityDismiss. Deprecated in 13.5.")
- environmentsCanaryIngressUpdate(input: EnvironmentsCanaryIngressUpdateInput!): EnvironmentsCanaryIngressUpdatePayload
- epicAddIssue(input: EpicAddIssueInput!): EpicAddIssuePayload
- epicBoardCreate(input: EpicBoardCreateInput!): EpicBoardCreatePayload
- epicBoardListCreate(input: EpicBoardListCreateInput!): EpicBoardListCreatePayload
- 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
- httpIntegrationUpdate(input: HttpIntegrationUpdateInput!): HttpIntegrationUpdatePayload
- issueMove(input: IssueMoveInput!): IssueMovePayload
- issueMoveList(input: IssueMoveListInput!): IssueMoveListPayload
- issueSetAssignees(input: IssueSetAssigneesInput!): IssueSetAssigneesPayload
- issueSetConfidential(input: IssueSetConfidentialInput!): IssueSetConfidentialPayload
- issueSetDueDate(input: IssueSetDueDateInput!): IssueSetDueDatePayload
- issueSetEpic(input: IssueSetEpicInput!): IssueSetEpicPayload
- issueSetIteration(input: IssueSetIterationInput!): IssueSetIterationPayload
- issueSetLocked(input: IssueSetLockedInput!): IssueSetLockedPayload
- issueSetSeverity(input: IssueSetSeverityInput!): IssueSetSeverityPayload
- issueSetSubscription(input: IssueSetSubscriptionInput!): IssueSetSubscriptionPayload
- issueSetWeight(input: IssueSetWeightInput!): IssueSetWeightPayload
- jiraImportStart(input: JiraImportStartInput!): JiraImportStartPayload
- jiraImportUsers(input: JiraImportUsersInput!): JiraImportUsersPayload
- 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
- mergeRequestSetMilestone(input: MergeRequestSetMilestoneInput!): MergeRequestSetMilestonePayload
- mergeRequestSetSubscription(input: MergeRequestSetSubscriptionInput!): MergeRequestSetSubscriptionPayload
- mergeRequestSetWip(input: MergeRequestSetWipInput!): MergeRequestSetWipPayload
-
- """
- Update attributes of a merge request
- """
- 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
- pipelineCancel(input: PipelineCancelInput!): PipelineCancelPayload
- pipelineDestroy(input: PipelineDestroyInput!): PipelineDestroyPayload
- pipelineRetry(input: PipelineRetryInput!): PipelineRetryPayload
- prometheusIntegrationCreate(input: PrometheusIntegrationCreateInput!): PrometheusIntegrationCreatePayload
- prometheusIntegrationResetToken(input: PrometheusIntegrationResetTokenInput!): PrometheusIntegrationResetTokenPayload
- prometheusIntegrationUpdate(input: PrometheusIntegrationUpdateInput!): PrometheusIntegrationUpdatePayload
- promoteToEpic(input: PromoteToEpicInput!): PromoteToEpicPayload
- releaseCreate(input: ReleaseCreateInput!): ReleaseCreatePayload
- releaseDelete(input: ReleaseDeleteInput!): ReleaseDeletePayload
- releaseUpdate(input: ReleaseUpdateInput!): ReleaseUpdatePayload
- removeAwardEmoji(input: RemoveAwardEmojiInput!): RemoveAwardEmojiPayload @deprecated(reason: "Use awardEmojiRemove. Deprecated in 13.2.")
- removeProjectFromSecurityDashboard(input: RemoveProjectFromSecurityDashboardInput!): RemoveProjectFromSecurityDashboardPayload
-
- """
- Repositions a DiffNote on an image (a `Note` where the `position.positionType` is `"image"`)
- """
- repositionImageDiffNote(input: RepositionImageDiffNoteInput!): RepositionImageDiffNotePayload
- revertVulnerabilityToDetected(input: RevertVulnerabilityToDetectedInput!): RevertVulnerabilityToDetectedPayload @deprecated(reason: "Use vulnerabilityRevertToDetected. Deprecated in 13.5.")
- runDastScan(input: RunDASTScanInput!): RunDASTScanPayload @deprecated(reason: "Use DastOnDemandScanCreate. Deprecated in 13.4.")
- terraformStateDelete(input: TerraformStateDeleteInput!): TerraformStateDeletePayload
- terraformStateLock(input: TerraformStateLockInput!): TerraformStateLockPayload
- terraformStateUnlock(input: TerraformStateUnlockInput!): TerraformStateUnlockPayload
- todoCreate(input: TodoCreateInput!): TodoCreatePayload
- todoMarkDone(input: TodoMarkDoneInput!): TodoMarkDonePayload
- todoRestore(input: TodoRestoreInput!): TodoRestorePayload
- todoRestoreMany(input: TodoRestoreManyInput!): TodoRestoreManyPayload
- todosMarkAllDone(input: TodosMarkAllDoneInput!): TodosMarkAllDonePayload
- toggleAwardEmoji(input: ToggleAwardEmojiInput!): ToggleAwardEmojiPayload @deprecated(reason: "Use awardEmojiToggle. Deprecated in 13.2.")
- updateAlertStatus(input: UpdateAlertStatusInput!): UpdateAlertStatusPayload
- updateBoard(input: UpdateBoardInput!): UpdateBoardPayload
- updateBoardEpicUserPreferences(input: UpdateBoardEpicUserPreferencesInput!): UpdateBoardEpicUserPreferencesPayload
- updateBoardList(input: UpdateBoardListInput!): UpdateBoardListPayload
- updateComplianceFramework(input: UpdateComplianceFrameworkInput!): UpdateComplianceFrameworkPayload
- updateContainerExpirationPolicy(input: UpdateContainerExpirationPolicyInput!): UpdateContainerExpirationPolicyPayload
- updateEpic(input: UpdateEpicInput!): UpdateEpicPayload
-
- """
- Updates a DiffNote on an image (a `Note` where the `position.positionType` is
- `"image"`). If the body of the Note contains only quick actions, the Note will
- be destroyed during the update, and no Note will be returned
- """
- updateImageDiffNote(input: UpdateImageDiffNoteInput!): UpdateImageDiffNotePayload
- updateIssue(input: UpdateIssueInput!): UpdateIssuePayload
- updateIteration(input: UpdateIterationInput!): UpdateIterationPayload
- updateNamespacePackageSettings(input: UpdateNamespacePackageSettingsInput!): UpdateNamespacePackageSettingsPayload
-
- """
- Updates a Note. If the body of the Note contains only quick actions, the Note
- will be destroyed during the update, and no Note will be returned
- """
- updateNote(input: UpdateNoteInput!): UpdateNotePayload
- updateRequirement(input: UpdateRequirementInput!): UpdateRequirementPayload
- updateSnippet(input: UpdateSnippetInput!): UpdateSnippetPayload
- vulnerabilityConfirm(input: VulnerabilityConfirmInput!): VulnerabilityConfirmPayload
- vulnerabilityDismiss(input: VulnerabilityDismissInput!): VulnerabilityDismissPayload
- vulnerabilityExternalIssueLinkCreate(input: VulnerabilityExternalIssueLinkCreateInput!): VulnerabilityExternalIssueLinkCreatePayload
- vulnerabilityExternalIssueLinkDestroy(input: VulnerabilityExternalIssueLinkDestroyInput!): VulnerabilityExternalIssueLinkDestroyPayload
- vulnerabilityResolve(input: VulnerabilityResolveInput!): VulnerabilityResolvePayload
- vulnerabilityRevertToDetected(input: VulnerabilityRevertToDetectedInput!): VulnerabilityRevertToDetectedPayload
-}
-
-"""
-Different toggles for changing mutator behavior
-"""
-enum MutationOperationMode {
- """
- Performs an append operation
- """
- APPEND
-
- """
- Performs a removal operation
- """
- REMOVE
-
- """
- Performs a replace operation
- """
- REPLACE
-}
-
-type Namespace {
- """
- Size limit for repositories in the namespace in bytes.
- """
- actualRepositorySizeLimit: Float
-
- """
- Additional storage purchased for the root namespace in bytes.
- """
- additionalPurchasedStorageSize: Float
-
- """
- Compliance frameworks available to projects in this namespace. Available only
- when feature flag `ff_custom_compliance_frameworks` is enabled.
- """
- complianceFrameworks(
- """
- 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
-
- """
- Global ID of a specific compliance framework to return.
- """
- id: ComplianceManagementFrameworkID
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): ComplianceFrameworkConnection
-
- """
- Includes at least one project where the repository size exceeds the limit.
- """
- containsLockedProjects: Boolean!
-
- """
- Description of the namespace.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Full name of the namespace.
- """
- fullName: String!
-
- """
- Full path of the namespace.
- """
- fullPath: ID!
-
- """
- ID of the namespace.
- """
- id: ID!
-
- """
- Status of the temporary storage increase.
- """
- isTemporaryStorageIncreaseEnabled: Boolean!
-
- """
- Indicates if Large File Storage (LFS) is enabled for namespace.
- """
- lfsEnabled: Boolean
-
- """
- Name of the namespace.
- """
- name: String!
-
- """
- The package settings for the namespace.
- """
- packageSettings: PackageSettings
-
- """
- Path of the namespace.
- """
- path: String!
-
- """
- Projects within this namespace.
- """
- projects(
- """
- 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 only the projects which have vulnerabilities.
- """
- hasVulnerabilities: Boolean = false
-
- """
- Include also subgroup projects.
- """
- includeSubgroups: Boolean = false
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Search project with most similar names or paths.
- """
- search: String = null
-
- """
- Sort projects by this criteria.
- """
- sort: NamespaceProjectSort = null
- ): ProjectConnection!
-
- """
- Number of projects in the root namespace where the repository size exceeds the limit.
- """
- repositorySizeExcessProjectCount: Int!
-
- """
- Indicates if users can request access to namespace.
- """
- requestAccessEnabled: Boolean
-
- """
- Aggregated storage statistics of the namespace. Only available for root namespaces.
- """
- rootStorageStatistics: RootStorageStatistics
-
- """
- Total storage limit of the root namespace in bytes.
- """
- storageSizeLimit: Float
-
- """
- Date until the temporary storage increase is active.
- """
- temporaryStorageIncreaseEndsOn: Time
-
- """
- Total repository size of all projects in the root namespace in bytes.
- """
- totalRepositorySize: Float
-
- """
- Total excess repository size of all projects in the root namespace in bytes.
- """
- totalRepositorySizeExcess: Float
-
- """
- Visibility of the namespace.
- """
- visibility: String
-}
-
-"""
-The connection type for Namespace.
-"""
-type NamespaceConnection {
- """
- A list of edges.
- """
- edges: [NamespaceEdge]
-
- """
- A list of nodes.
- """
- nodes: [Namespace]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type NamespaceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Namespace
-}
-
-"""
-Identifier of Namespace.
-"""
-scalar NamespaceID
-
-"""
-Autogenerated input type of NamespaceIncreaseStorageTemporarily
-"""
-input NamespaceIncreaseStorageTemporarilyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the namespace to mutate.
- """
- id: NamespaceID!
-}
-
-"""
-Autogenerated return type of NamespaceIncreaseStorageTemporarily
-"""
-type NamespaceIncreaseStorageTemporarilyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The namespace after mutation.
- """
- namespace: Namespace
-}
-
-"""
-Values for sorting projects
-"""
-enum NamespaceProjectSort {
- """
- Most similar to the search query
- """
- SIMILARITY
-
- """
- Sort by storage size
- """
- STORAGE
-}
-
-input NegatedBoardIssueInput {
- """
- Filter by assignee username.
- """
- assigneeUsername: [String]
-
- """
- Filter by author username.
- """
- authorUsername: String
-
- """
- Filter by epic ID. Incompatible with epicWildcardId.
- """
- epicId: EpicID
-
- """
- Filter by iteration title.
- """
- iterationTitle: String
-
- """
- Filter by label name.
- """
- labelName: [String]
-
- """
- Filter by milestone title.
- """
- milestoneTitle: String
-
- """
- Filter by reaction emoji.
- """
- myReactionEmoji: String
-
- """
- Filter by release tag.
- """
- releaseTag: String
-
- """
- Filter by weight.
- """
- weight: String
-}
-
-type Note implements ResolvableInterface {
- """
- User who wrote this note.
- """
- author: User!
-
- """
- Content of the note.
- """
- body: String!
-
- """
- The GitLab Flavored Markdown rendering of `note`
- """
- bodyHtml: String
-
- """
- Indicates if this note is confidential.
- """
- confidential: Boolean
-
- """
- Timestamp of the note creation.
- """
- createdAt: Time!
-
- """
- The discussion this note is a part of.
- """
- discussion: Discussion
-
- """
- ID of the note.
- """
- id: NoteID!
-
- """
- The position of this note on a diff.
- """
- position: DiffPosition
-
- """
- Project associated with the note.
- """
- project: Project
-
- """
- Indicates if the object can be resolved.
- """
- resolvable: Boolean!
-
- """
- Indicates if the object is resolved.
- """
- resolved: Boolean!
-
- """
- Timestamp of when the object was resolved.
- """
- resolvedAt: Time
-
- """
- User who resolved the object.
- """
- resolvedBy: User
-
- """
- Indicates whether this note was created by the system or by a user.
- """
- system: Boolean!
-
- """
- Name of the icon corresponding to a system note.
- """
- systemNoteIconName: String
-
- """
- Timestamp of the note's last activity.
- """
- updatedAt: Time!
-
- """
- URL to view this Note in the Web UI.
- """
- url: String
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: NotePermissions!
-}
-
-"""
-The connection type for Note.
-"""
-type NoteConnection {
- """
- A list of edges.
- """
- edges: [NoteEdge]
-
- """
- A list of nodes.
- """
- nodes: [Note]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type NoteEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Note
-}
-
-"""
-Identifier of Note.
-"""
-scalar NoteID
-
-type NotePermissions {
- """
- Indicates the user can perform `admin_note` on this resource
- """
- adminNote: Boolean!
-
- """
- Indicates the user can perform `award_emoji` on this resource
- """
- awardEmoji: Boolean!
-
- """
- Indicates the user can perform `create_note` on this resource
- """
- createNote: Boolean!
-
- """
- Indicates the user can perform `read_note` on this resource
- """
- readNote: Boolean!
-
- """
- Indicates the user can perform `reposition_note` on this resource
- """
- repositionNote: Boolean!
-
- """
- Indicates the user can perform `resolve_note` on this resource
- """
- resolveNote: Boolean!
-}
-
-interface Noteable {
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-}
-
-"""
-Identifier of Noteable.
-"""
-scalar NoteableID
-
-"""
-The rotation participant and color palette
-"""
-type OncallParticipantType {
- """
- The color palette to assign to the on-call user. For example "blue".
- """
- colorPalette: String
-
- """
- The color weight to assign to for the on-call user, for example "500". Max 4 chars. For easy identification of the user.
- """
- colorWeight: String
-
- """
- ID of the on-call participant.
- """
- id: IncidentManagementOncallParticipantID!
-
- """
- The user who is participating.
- """
- user: User!
-}
-
-"""
-The connection type for OncallParticipantType.
-"""
-type OncallParticipantTypeConnection {
- """
- A list of edges.
- """
- edges: [OncallParticipantTypeEdge]
-
- """
- A list of nodes.
- """
- nodes: [OncallParticipantType]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type OncallParticipantTypeEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: OncallParticipantType
-}
-
-"""
-Autogenerated input type of OncallRotationCreate
-"""
-input OncallRotationCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The name of the on-call rotation.
- """
- name: String!
-
- """
- The usernames of users participating in the on-call rotation.
- """
- participants: [OncallUserInputType!]!
-
- """
- The project to create the on-call schedule in.
- """
- projectPath: ID!
-
- """
- The rotation length of the on-call rotation.
- """
- rotationLength: OncallRotationLengthInputType!
-
- """
- The IID of the on-call schedule to create the on-call rotation in.
- """
- scheduleIid: String!
-
- """
- The start date and time of the on-call rotation, in the timezone of the on-call schedule.
- """
- startsAt: OncallRotationDateInputType!
-}
-
-"""
-Autogenerated return type of OncallRotationCreate
-"""
-type OncallRotationCreatePayload {
- """
- 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
-}
-
-"""
-Date input type for on-call rotation
-"""
-input OncallRotationDateInputType {
- """
- The date component of the date in YYYY-MM-DD format.
- """
- date: String!
-
- """
- The time component of the date in 24hr HH:MM format.
- """
- time: String!
-}
-
-"""
-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 {
- """
- The rotation length of the on-call rotation.
- """
- length: Int!
-
- """
- The unit of the rotation length of the on-call rotation.
- """
- unit: OncallRotationUnitEnum!
-}
-
-"""
-Rotation length unit of an on-call rotation
-"""
-enum OncallRotationUnitEnum {
- """
- Days
- """
- DAYS
-
- """
- Hours
- """
- HOURS
-
- """
- Weeks
- """
- WEEKS
-}
-
-"""
-Autogenerated input type of OncallScheduleCreate
-"""
-input OncallScheduleCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The description of the on-call schedule.
- """
- description: String
-
- """
- The name of the on-call schedule.
- """
- name: String!
-
- """
- The project to create the on-call schedule in.
- """
- projectPath: ID!
-
- """
- The timezone of the on-call schedule.
- """
- timezone: String!
-}
-
-"""
-Autogenerated return type of OncallScheduleCreate
-"""
-type OncallScheduleCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The on-call schedule.
- """
- oncallSchedule: IncidentManagementOncallSchedule
-}
-
-"""
-Autogenerated input type of OncallScheduleDestroy
-"""
-input OncallScheduleDestroyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The on-call schedule internal ID to remove.
- """
- iid: String!
-
- """
- The project to remove the on-call schedule from.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of OncallScheduleDestroy
-"""
-type OncallScheduleDestroyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The on-call schedule.
- """
- oncallSchedule: IncidentManagementOncallSchedule
-}
-
-"""
-Autogenerated input type of OncallScheduleUpdate
-"""
-input OncallScheduleUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The description of the on-call schedule.
- """
- description: String
-
- """
- The on-call schedule internal ID to update.
- """
- iid: String!
-
- """
- The name of the on-call schedule.
- """
- name: String
-
- """
- The project to update the on-call schedule in.
- """
- projectPath: ID!
-
- """
- The timezone of the on-call schedule.
- """
- timezone: String
-}
-
-"""
-Autogenerated return type of OncallScheduleUpdate
-"""
-type OncallScheduleUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The on-call schedule.
- """
- oncallSchedule: IncidentManagementOncallSchedule
-}
-
-"""
-The rotation user and color palette
-"""
-input OncallUserInputType {
- """
- A value of DataVisualizationColorEnum. The color from the palette to assign to the on-call user.
- """
- colorPalette: DataVisualizationColorEnum
-
- """
- A value of DataVisualizationWeightEnum. The color weight to assign to for the on-call user.
- """
- colorWeight: DataVisualizationWeightEnum
-
- """
- The username of the user to participate in the on-call rotation, such as `user_one`.
- """
- username: String!
-}
-
-"""
-Represents a package in the Package Registry
-"""
-type Package {
- """
- 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 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
- ): PackageWithoutVersionsConnection
-}
-
-"""
-Represents a composer JSON file
-"""
-type PackageComposerJsonType {
- """
- The license set in the Composer JSON file.
- """
- license: String
-
- """
- The name set in the Composer JSON file.
- """
- name: String
-
- """
- The type set in the Composer JSON file.
- """
- type: String
-
- """
- The version set in the Composer JSON file.
- """
- version: String
-}
-
-"""
-The connection type for Package.
-"""
-type PackageConnection {
- """
- A list of edges.
- """
- edges: [PackageEdge]
-
- """
- A list of nodes.
- """
- nodes: [Package]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type PackageEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Package
-}
-
-"""
-Represents the Geo sync and verification state of a package file
-"""
-type PackageFileRegistry {
- """
- Timestamp when the PackageFileRegistry was created
- """
- createdAt: Time
-
- """
- ID of the PackageFileRegistry
- """
- id: ID!
-
- """
- Error message during sync of the PackageFileRegistry
- """
- lastSyncFailure: String
-
- """
- Timestamp of the most recent successful sync of the PackageFileRegistry
- """
- lastSyncedAt: Time
-
- """
- ID of the PackageFile.
- """
- packageFileId: ID!
-
- """
- Timestamp after which the PackageFileRegistry should be resynced
- """
- retryAt: Time
-
- """
- Number of consecutive failed sync attempts of the PackageFileRegistry
- """
- retryCount: Int
-
- """
- Sync state of the PackageFileRegistry
- """
- state: RegistryState
-}
-
-"""
-The connection type for PackageFileRegistry.
-"""
-type PackageFileRegistryConnection {
- """
- A list of edges.
- """
- edges: [PackageFileRegistryEdge]
-
- """
- A list of nodes.
- """
- nodes: [PackageFileRegistry]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type PackageFileRegistryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: PackageFileRegistry
-}
-
-"""
-Represents metadata associated with a Package
-"""
-union PackageMetadata = ComposerMetadata
-
-"""
-Namespace-level Package Registry settings
-"""
-type PackageSettings {
- """
- When maven_duplicates_allowed is false, you can publish duplicate packages
- with names that match this regex. Otherwise, this setting has no effect.
- """
- mavenDuplicateExceptionRegex: UntrustedRegexp
-
- """
- Indicates whether duplicate Maven packages are allowed for this namespace.
- """
- mavenDuplicatesAllowed: Boolean!
-}
-
-"""
-Represents a package tag
-"""
-type PackageTag {
- """
- The created date.
- """
- createdAt: Time!
-
- """
- The ID of the tag.
- """
- id: ID!
-
- """
- The name of the tag.
- """
- name: String!
-
- """
- The updated date.
- """
- updatedAt: Time!
-}
-
-"""
-The connection type for PackageTag.
-"""
-type PackageTagConnection {
- """
- A list of edges.
- """
- edges: [PackageTagEdge]
-
- """
- A list of nodes.
- """
- nodes: [PackageTag]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type PackageTagEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: PackageTag
-}
-
-enum PackageTypeEnum {
- """
- Packages from the Composer package manager
- """
- COMPOSER
-
- """
- Packages from the Conan package manager
- """
- CONAN
-
- """
- Packages from the Debian package manager
- """
- DEBIAN
-
- """
- Packages from the Generic package manager
- """
- GENERIC
-
- """
- Packages from the Golang package manager
- """
- GOLANG
-
- """
- Packages from the Maven package manager
- """
- MAVEN
-
- """
- Packages from the npm package manager
- """
- NPM
-
- """
- Packages from the Nuget package manager
- """
- NUGET
-
- """
- Packages from the PyPI package manager
- """
- PYPI
-
- """
- Packages from the Rubygems package manager
- """
- RUBYGEMS
-}
-
-"""
-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
-
-"""
-Information about pagination in a connection.
-"""
-type PageInfo {
- """
- When paginating forwards, the cursor to continue.
- """
- endCursor: String
-
- """
- When paginating forwards, are there more items?
- """
- hasNextPage: Boolean!
-
- """
- When paginating backwards, are there more items?
- """
- hasPreviousPage: Boolean!
-
- """
- When paginating backwards, the cursor to continue.
- """
- startCursor: String
-}
-
-type Pipeline {
- """
- Indicates if the pipeline is active.
- """
- active: Boolean!
-
- """
- Base SHA of the source branch.
- """
- beforeSha: String
-
- """
- Specifies if a pipeline can be canceled.
- """
- cancelable: Boolean!
-
- """
- Timestamp of the pipeline's commit.
- """
- committedAt: Time
-
- """
- Configuration source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE,
- AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE,
- BRIDGE_SOURCE, PARAMETER_SOURCE, COMPLIANCE_SOURCE)
- """
- configSource: PipelineConfigSourceEnum
-
- """
- Coverage percentage.
- """
- coverage: Float
-
- """
- Timestamp of the pipeline's creation.
- """
- createdAt: Time!
-
- """
- Detailed status of the pipeline.
- """
- detailedStatus: DetailedStatus!
-
- """
- Pipelines this pipeline will trigger.
- """
- downstream(
- """
- 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
-
- """
- Duration of the pipeline in seconds.
- """
- duration: Int
-
- """
- Timestamp of the pipeline's completion.
- """
- finishedAt: Time
-
- """
- ID of the pipeline.
- """
- id: ID!
-
- """
- Internal ID of the pipeline.
- """
- iid: String!
-
- """
- Jobs belonging to the pipeline.
- """
- jobs(
- """
- 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
-
- """
- Filter jobs by the type of security report they produce.
- """
- securityReportTypes: [SecurityReportTypeEnum!]
- ): CiJobConnection
-
- """
- Relative path to the pipeline's page.
- """
- path: String
-
- """
- Project the pipeline belongs to.
- """
- project: Project
-
- """
- Specifies if a pipeline can be retried.
- """
- retryable: Boolean!
-
- """
- Vulnerability and scanned resource counts for each security scanner of the pipeline.
- """
- securityReportSummary: SecurityReportSummary
-
- """
- SHA of the pipeline's commit.
- """
- sha: String!
-
- """
- Job where pipeline was triggered from.
- """
- sourceJob: CiJob
-
- """
- Stages of the pipeline.
- """
- stages(
- """
- 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
- ): CiStageConnection
-
- """
- Timestamp when the pipeline was started.
- """
- startedAt: Time
-
- """
- Status of the pipeline (CREATED, WAITING_FOR_RESOURCE, PREPARING, PENDING,
- RUNNING, FAILED, SUCCESS, CANCELED, SKIPPED, MANUAL, SCHEDULED)
- """
- status: PipelineStatusEnum!
-
- """
- Timestamp of the pipeline's last activity.
- """
- updatedAt: Time!
-
- """
- Pipeline that triggered the pipeline.
- """
- upstream: Pipeline
-
- """
- Pipeline user.
- """
- user: User
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: PipelinePermissions!
-
- """
- Indicates if a pipeline has warnings.
- """
- warnings: Boolean!
-}
-
-type PipelineAnalytics {
- """
- Labels for the monthly pipeline count.
- """
- monthPipelinesLabels: [String!]
-
- """
- Total monthly successful pipeline count.
- """
- monthPipelinesSuccessful: [Int!]
-
- """
- Total monthly pipeline count.
- """
- monthPipelinesTotals: [Int!]
-
- """
- Pipeline times labels.
- """
- pipelineTimesLabels: [String!]
-
- """
- Pipeline times.
- """
- pipelineTimesValues: [Int!]
-
- """
- Labels for the weekly pipeline count.
- """
- weekPipelinesLabels: [String!]
-
- """
- Total weekly successful pipeline count.
- """
- weekPipelinesSuccessful: [Int!]
-
- """
- Total weekly pipeline count.
- """
- weekPipelinesTotals: [Int!]
-
- """
- Labels for the yearly pipeline count.
- """
- yearPipelinesLabels: [String!]
-
- """
- Total yearly successful pipeline count.
- """
- yearPipelinesSuccessful: [Int!]
-
- """
- Total yearly pipeline count.
- """
- yearPipelinesTotals: [Int!]
-}
-
-"""
-Autogenerated input type of PipelineCancel
-"""
-input PipelineCancelInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the pipeline to mutate.
- """
- id: CiPipelineID!
-}
-
-"""
-Autogenerated return type of PipelineCancel
-"""
-type PipelineCancelPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-enum PipelineConfigSourceEnum {
- AUTO_DEVOPS_SOURCE
- BRIDGE_SOURCE
- COMPLIANCE_SOURCE
- EXTERNAL_PROJECT_SOURCE
- PARAMETER_SOURCE
- REMOTE_SOURCE
- REPOSITORY_SOURCE
- UNKNOWN_SOURCE
- WEBIDE_SOURCE
-}
-
-"""
-The connection type for Pipeline.
-"""
-type PipelineConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [PipelineEdge]
-
- """
- A list of nodes.
- """
- nodes: [Pipeline]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of PipelineDestroy
-"""
-input PipelineDestroyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the pipeline to mutate.
- """
- id: CiPipelineID!
-}
-
-"""
-Autogenerated return type of PipelineDestroy
-"""
-type PipelineDestroyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type PipelineEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Pipeline
-}
-
-type PipelinePermissions {
- """
- Indicates the user can perform `admin_pipeline` on this resource
- """
- adminPipeline: Boolean!
-
- """
- Indicates the user can perform `destroy_pipeline` on this resource
- """
- destroyPipeline: Boolean!
-
- """
- Indicates the user can perform `update_pipeline` on this resource
- """
- updatePipeline: Boolean!
-}
-
-"""
-Autogenerated input type of PipelineRetry
-"""
-input PipelineRetryInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the pipeline to mutate.
- """
- id: CiPipelineID!
-}
-
-"""
-Autogenerated return type of PipelineRetry
-"""
-type PipelineRetryPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The pipeline after mutation.
- """
- pipeline: Pipeline
-}
-
-enum PipelineStatusEnum {
- CANCELED
- CREATED
- FAILED
- MANUAL
- PENDING
- PREPARING
- RUNNING
- SCHEDULED
- SKIPPED
- SUCCESS
- WAITING_FOR_RESOURCE
-}
-
-type Project {
- """
- Size limit for the repository in bytes.
- """
- actualRepositorySizeLimit: Float
-
- """
- A single Alert Management alert of the project.
- """
- alertManagementAlert(
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Filter query for given domain.
- """
- domain: AlertManagementDomainFilter! = operations
-
- """
- IID of the alert. For example, "1".
- """
- iid: String
-
- """
- Search query for title, description, service, or monitoring_tool.
- """
- search: String
-
- """
- Sort alerts by this criteria.
- """
- sort: AlertManagementAlertSort
-
- """
- Alerts with the specified statues. For example, [TRIGGERED].
- """
- statuses: [AlertManagementStatus!]
- ): AlertManagementAlert
-
- """
- Counts of alerts by status for the project.
- """
- alertManagementAlertStatusCounts(
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Search query for title, description, service, or monitoring_tool.
- """
- search: String
- ): AlertManagementAlertStatusCountsType
-
- """
- Alert Management alerts of the project.
- """
- alertManagementAlerts(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Filter query for given domain.
- """
- domain: AlertManagementDomainFilter! = operations
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the alert. For example, "1".
- """
- iid: String
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Search query for title, description, service, or monitoring_tool.
- """
- search: String
-
- """
- Sort alerts by this criteria.
- """
- sort: AlertManagementAlertSort
-
- """
- Alerts with the specified statues. For example, [TRIGGERED].
- """
- statuses: [AlertManagementStatus!]
- ): AlertManagementAlertConnection
-
- """
- Integrations which can receive alerts for the project.
- """
- alertManagementIntegrations(
- """
- 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
- ): 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.
- """
- allowMergeOnSkippedPipeline: Boolean
-
- """
- API fuzzing configuration for the project. Available only when feature flag `api_fuzzing_configuration_ui` is enabled.
- """
- apiFuzzingCiConfiguration: ApiFuzzingCiConfiguration
-
- """
- Indicates the archived status of the project.
- """
- archived: Boolean
-
- """
- Indicates if issues referenced by merge requests and commits within the default branch are closed automatically.
- """
- autocloseReferencedIssues: Boolean
-
- """
- URL to avatar image file of the project.
- """
- avatarUrl: String
-
- """
- A single board of the project.
- """
- board(
- """
- The board's ID.
- """
- id: BoardID!
- ): Board
-
- """
- Boards of the project.
- """
- boards(
- """
- 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
-
- """
- Find a board by its ID.
- """
- id: BoardID
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
- ): BoardConnection
-
- """
- CI/CD settings for the project.
- """
- ciCdSettings: ProjectCiCdSetting
-
- """
- Find a single cluster agent by name.
- """
- clusterAgent(
- """
- Name of the cluster agent.
- """
- name: String!
- ): ClusterAgent
-
- """
- Cluster agents associated with the project.
- """
- clusterAgents(
- """
- 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
- ): ClusterAgentConnection
-
- """
- Code coverage summary associated with the project.
- """
- codeCoverageSummary: CodeCoverageSummary
-
- """
- Compliance frameworks associated with the project.
- """
- complianceFrameworks(
- """
- 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
- ): ComplianceFrameworkConnection
-
- """
- The container expiration policy of the project.
- """
- containerExpirationPolicy: ContainerExpirationPolicy
-
- """
- Indicates if the project stores Docker container images in a container registry.
- """
- containerRegistryEnabled: Boolean
-
- """
- Container repositories of the project.
- """
- containerRepositories(
- """
- 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
-
- """
- Filter the container repositories by their name.
- """
- name: String
-
- """
- Sort container repositories by this criteria.
- """
- sort: ContainerRepositorySort = created_desc
- ): ContainerRepositoryConnection
-
- """
- Number of container repositories in the project.
- """
- containerRepositoriesCount: Int!
-
- """
- Timestamp of the project creation.
- """
- createdAt: Time
-
- """
- 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(
- """
- 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
- ): DastScannerProfileConnection
-
- """
- DAST Site Profile associated with the project.
- """
- dastSiteProfile(
- """
- ID of the site profile.
- """
- id: DastSiteProfileID!
- ): DastSiteProfile
-
- """
- DAST Site Profiles associated with the project.
- """
- dastSiteProfiles(
- """
- 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
- ): DastSiteProfileConnection
-
- """
- DAST Site Validations associated with the project. Always returns no nodes if
- `security_on_demand_scans_site_validation` is disabled.
- """
- dastSiteValidations(
- """
- 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
-
- """
- Normalized URL of the target to be scanned.
- """
- normalizedTargetUrls: [String!]
- ): DastSiteValidationConnection
-
- """
- Short description of the project.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- A single environment of the project.
- """
- environment(
- """
- Name of the environment.
- """
- name: String
-
- """
- Search query for environment name.
- """
- search: String
-
- """
- States of environments that should be included in result.
- """
- states: [String!]
- ): Environment
-
- """
- Environments of the project.
- """
- environments(
- """
- 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
-
- """
- Name of the environment.
- """
- name: String
-
- """
- Search query for environment name.
- """
- search: String
-
- """
- States of environments that should be included in result.
- """
- states: [String!]
- ): EnvironmentConnection
-
- """
- Number of times the project has been forked.
- """
- forksCount: Int!
-
- """
- Full path of the project.
- """
- fullPath: ID!
-
- """
- Grafana integration details for the project.
- """
- grafanaIntegration: GrafanaIntegration
-
- """
- Group of the project.
- """
- group: Group
-
- """
- URL to connect to the project via HTTPS.
- """
- httpUrlToRepo: String
-
- """
- ID of the project.
- """
- id: ID!
-
- """
- Status of import background job of the project.
- """
- importStatus: String
-
- """
- Incident Management On-call schedules of the project.
- """
- incidentManagementOncallSchedules(
- """
- 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
- ): IncidentManagementOncallScheduleConnection
-
- """
- A single issue of the project.
- """
- issue(
- """
- ID of a user assigned to the issues, "none" and "any" values are supported.
- """
- assigneeId: String
-
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Usernames of users assigned to the issue.
- """
- assigneeUsernames: [String!]
-
- """
- Username of the author of the issue.
- """
- authorUsername: String
-
- """
- Issues closed after this date.
- """
- closedAfter: Time
-
- """
- Issues closed before this date.
- """
- closedBefore: Time
-
- """
- Issues created after this date.
- """
- createdAfter: Time
-
- """
- Issues created before this date.
- """
- createdBefore: Time
-
- """
- ID of an epic associated with the issues, "none" and "any" values are supported.
- """
- epicId: String
-
- """
- IID of the issue. For example, "1".
- """
- iid: String
-
- """
- List of IIDs of issues. For example, [1, 2].
- """
- iids: [String!]
-
- """
- Iterations applied to the issue.
- """
- iterationId: [ID]
-
- """
- Labels applied to this issue.
- """
- labelName: [String]
-
- """
- Milestone applied to this issue.
- """
- milestoneTitle: [String]
-
- """
- Search query for issue title or description.
- """
- search: String
-
- """
- Sort issues by this criteria.
- """
- sort: IssueSort = created_desc
-
- """
- Current state of this issue.
- """
- state: IssuableState
-
- """
- Filter issues by the given issue types.
- """
- types: [IssueType!]
-
- """
- Issues updated after this date.
- """
- updatedAfter: Time
-
- """
- Issues updated before this date.
- """
- updatedBefore: Time
- ): Issue
-
- """
- Counts of issues by status for the project.
- """
- issueStatusCounts(
- """
- ID of a user assigned to the issues, "none" and "any" values are supported.
- """
- assigneeId: String
-
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Usernames of users assigned to the issue.
- """
- assigneeUsernames: [String!]
-
- """
- Username of the author of the issue.
- """
- authorUsername: String
-
- """
- Issues closed after this date.
- """
- closedAfter: Time
-
- """
- Issues closed before this date.
- """
- closedBefore: Time
-
- """
- Issues created after this date.
- """
- createdAfter: Time
-
- """
- Issues created before this date.
- """
- createdBefore: Time
-
- """
- IID of the issue. For example, "1".
- """
- iid: String
-
- """
- List of IIDs of issues. For example, [1, 2].
- """
- iids: [String!]
-
- """
- Labels applied to this issue.
- """
- labelName: [String]
-
- """
- Milestone applied to this issue.
- """
- milestoneTitle: [String]
-
- """
- Search query for issue title or description.
- """
- search: String
-
- """
- Filter issues by the given issue types.
- """
- types: [IssueType!]
-
- """
- Issues updated after this date.
- """
- updatedAfter: Time
-
- """
- Issues updated before this date.
- """
- updatedBefore: Time
- ): IssueStatusCountsType
-
- """
- Issues of the project.
- """
- issues(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- ID of a user assigned to the issues, "none" and "any" values are supported.
- """
- assigneeId: String
-
- """
- Username of a user assigned to the issue.
- """
- assigneeUsername: String
-
- """
- Usernames of users assigned to the issue.
- """
- assigneeUsernames: [String!]
-
- """
- Username of the author of the issue.
- """
- authorUsername: String
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Issues closed after this date.
- """
- closedAfter: Time
-
- """
- Issues closed before this date.
- """
- closedBefore: Time
-
- """
- Issues created after this date.
- """
- createdAfter: Time
-
- """
- Issues created before this date.
- """
- createdBefore: Time
-
- """
- ID of an epic associated with the issues, "none" and "any" values are supported.
- """
- epicId: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- IID of the issue. For example, "1".
- """
- iid: String
-
- """
- List of IIDs of issues. For example, [1, 2].
- """
- iids: [String!]
-
- """
- Iterations applied to the issue.
- """
- iterationId: [ID]
-
- """
- Labels applied to this issue.
- """
- labelName: [String]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Milestone applied to this issue.
- """
- milestoneTitle: [String]
-
- """
- Search query for issue title or description.
- """
- search: String
-
- """
- Sort issues by this criteria.
- """
- sort: IssueSort = created_desc
-
- """
- Current state of this issue.
- """
- state: IssuableState
-
- """
- Filter issues by the given issue types.
- """
- types: [IssueType!]
-
- """
- Issues updated after this date.
- """
- updatedAfter: Time
-
- """
- Issues updated before this date.
- """
- updatedBefore: Time
- ): IssueConnection
-
- """
- Indicates if Issues are enabled for the current user
- """
- issuesEnabled: Boolean
-
- """
- Find iterations.
- """
- iterations(
- """
- 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
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Global ID of the Iteration to look up.
- """
- id: ID
-
- """
- Internal ID of the Iteration to look up.
- """
- iid: ID
-
- """
- Whether to include ancestor iterations. Defaults to true.
- """
- includeAncestors: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter iterations by state.
- """
- state: IterationState
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
-
- """
- Fuzzy search by title.
- """
- title: String
- ): IterationConnection
-
- """
- Status of Jira import background job of the project.
- """
- jiraImportStatus: String
-
- """
- Jira imports into the project.
- """
- jiraImports(
- """
- 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
- ): JiraImportConnection
-
- """
- Indicates if CI/CD pipeline jobs are enabled for the current user.
- """
- jobsEnabled: Boolean
-
- """
- A label available on this project.
- """
- label(
- """
- Title of the label.
- """
- title: String!
- ): Label
-
- """
- Labels available on this project.
- """
- labels(
- """
- 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
-
- """
- Include labels from ancestor groups.
- """
- includeAncestorGroups: Boolean = false
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- A search term to find labels with.
- """
- searchTerm: String
- ): LabelConnection
-
- """
- Timestamp of the project last activity.
- """
- lastActivityAt: Time
-
- """
- Indicates if the project has Large File Storage (LFS) enabled.
- """
- lfsEnabled: Boolean
-
- """
- A single merge request of the project.
- """
- mergeRequest(
- """
- IID of the merge request, for example `1`.
- """
- iid: String!
- ): MergeRequest
-
- """
- Merge requests of the project.
- """
- mergeRequests(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of the assignee.
- """
- assigneeUsername: String
-
- """
- Username of the author.
- """
- authorUsername: 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
-
- """
- Array of IIDs of merge requests, for example `[1, 2]`.
- """
- iids: [String!]
-
- """
- Array of label names. All resolved merge requests will have all of these labels.
- """
- labels: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Merge requests merged after this date.
- """
- mergedAfter: Time
-
- """
- Merge requests merged before this date.
- """
- mergedBefore: Time
-
- """
- Title of the milestone.
- """
- milestoneTitle: String
-
- """
- Username of the reviewer.
- """
- reviewerUsername: String
-
- """
- Sort merge requests by this criteria.
- """
- sort: MergeRequestSort = created_desc
-
- """
- Array of source branch names. All resolved merge requests will have one of these branches as their source.
- """
- sourceBranches: [String!]
-
- """
- A merge request state. If provided, all resolved merge requests will have this state.
- """
- state: MergeRequestState
-
- """
- Array of target branch names. All resolved merge requests will have one of these branches as their target.
- """
- targetBranches: [String!]
- ): MergeRequestConnection
-
- """
- Indicates if Merge Requests are enabled for the current user
- """
- mergeRequestsEnabled: Boolean
-
- """
- Indicates if no merge commits should be created and all merges should instead
- be fast-forwarded, which means that merging is only allowed if the branch
- could be fast-forwarded.
- """
- mergeRequestsFfOnlyEnabled: Boolean
-
- """
- Milestones of the project.
- """
- milestones(
- """
- 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
-
- """
- A date that the milestone contains.
- """
- containingDate: Time
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.
- """
- endDate: Time
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Array of global milestone IDs, e.g., "gid://gitlab/Milestone/1".
- """
- ids: [ID!]
-
- """
- Also return milestones in the project's parent group and its ancestors.
- """
- includeAncestors: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- A search string for the title.
- """
- searchTitle: String
-
- """
- List items overlapping a time frame defined by startDate..endDate (if one
- date is provided, both must be present) Deprecated in 13.5: Use
- timeframe.start.
- """
- startDate: Time
-
- """
- Filter milestones by state.
- """
- state: MilestoneStateEnum
-
- """
- List items overlapping the given timeframe.
- """
- timeframe: Timeframe
-
- """
- The title of the milestone.
- """
- title: String
- ): MilestoneConnection
-
- """
- Name of the project (without namespace).
- """
- name: String!
-
- """
- Full name of the project with its namespace.
- """
- nameWithNamespace: String!
-
- """
- Namespace of the project.
- """
- namespace: Namespace
-
- """
- Indicates if merge requests of the project can only be merged when all the discussions are resolved.
- """
- onlyAllowMergeIfAllDiscussionsAreResolved: Boolean
-
- """
- Indicates if merge requests of the project can only be merged with successful jobs.
- """
- onlyAllowMergeIfPipelineSucceeds: Boolean
-
- """
- Number of open issues for the project.
- """
- openIssuesCount: Int
-
- """
- Packages of the project.
- """
- packages(
- """
- 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
-
- """
- Path of the project.
- """
- path: String!
-
- """
- Build pipeline of the project.
- """
- pipeline(
- """
- IID of the Pipeline, e.g., "1".
- """
- iid: ID!
- ): Pipeline
-
- """
- Pipeline analytics.
- """
- pipelineAnalytics: PipelineAnalytics
-
- """
- Build pipelines of the project.
- """
- 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
-
- """
- Filter pipelines by the ref they are run for.
- """
- ref: String
-
- """
- Filter pipelines by the sha of the commit they are run for.
- """
- sha: String
-
- """
- Filter pipelines by their status.
- """
- status: PipelineStatusEnum
- ): PipelineConnection
-
- """
- Indicates if a link to create or view a merge request should display after a
- push to Git repositories of the project from the command line.
- """
- printingMergeRequestLinkEnabled: Boolean
-
- """
- Members of the project.
- """
- projectMembers(
- """
- 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
-
- """
- Filter members by the given member relations.
- """
- relations: [ProjectMemberRelation!] = [DIRECT, INHERITED]
-
- """
- Search query.
- """
- search: String
- ): MemberInterfaceConnection
-
- """
- Indicates if there is public access to pipelines and job details of the project, including output logs and artifacts.
- """
- publicJobs: Boolean
-
- """
- A single release of the project.
- """
- release(
- """
- The name of the tag associated to the release.
- """
- tagName: String!
- ): Release
-
- """
- Releases of the project.
- """
- releases(
- """
- 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
-
- """
- Sort releases by this criteria.
- """
- sort: ReleaseSort = RELEASED_AT_DESC
- ): ReleaseConnection
-
- """
- Indicates if `Delete source branch` option should be enabled by default for all new merge requests of the project.
- """
- removeSourceBranchAfterMerge: Boolean
-
- """
- Git repository of the project.
- """
- repository: Repository
-
- """
- Size of repository that exceeds the limit in bytes.
- """
- repositorySizeExcess: Float
-
- """
- Indicates if users can request member access to the project.
- """
- requestAccessEnabled: Boolean
-
- """
- Find a single requirement.
- """
- requirement(
- """
- Filter requirements by author username.
- """
- authorUsername: [String!]
-
- """
- IID of the requirement, e.g., "1".
- """
- iid: ID
-
- """
- List of IIDs of requirements, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- The state of latest requirement test report.
- """
- lastTestReportState: TestReportState
-
- """
- Search query for requirement title.
- """
- search: String
-
- """
- List requirements by sort order.
- """
- sort: Sort
-
- """
- Filter requirements by state.
- """
- state: RequirementState
- ): Requirement
-
- """
- Number of requirements for the project by their state.
- """
- requirementStatesCount: RequirementStatesCount
-
- """
- Find requirements.
- """
- requirements(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Filter requirements by author username.
- """
- authorUsername: [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
-
- """
- IID of the requirement, e.g., "1".
- """
- iid: ID
-
- """
- List of IIDs of requirements, e.g., [1, 2].
- """
- iids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The state of latest requirement test report.
- """
- lastTestReportState: TestReportState
-
- """
- Search query for requirement title.
- """
- search: String
-
- """
- List requirements by sort order.
- """
- sort: Sort
-
- """
- Filter requirements by state.
- """
- state: RequirementState
- ): RequirementConnection
-
- """
- SAST CI configuration for the project.
- """
- sastCiConfiguration: SastCiConfiguration
-
- """
- Path to project's security dashboard.
- """
- securityDashboardPath: String
-
- """
- Information about security analyzers used in the project.
- """
- securityScanners: SecurityScanners
-
- """
- Detailed version of a Sentry error on the project.
- """
- sentryDetailedError(
- """
- ID of the Sentry issue.
- """
- id: GitlabErrorTrackingDetailedErrorID!
- ): SentryDetailedError
-
- """
- Paginated collection of Sentry errors on the project.
- """
- sentryErrors: SentryErrorCollection
-
- """
- E-mail address of the service desk.
- """
- serviceDeskAddress: String
-
- """
- Indicates if the project has service desk enabled.
- """
- serviceDeskEnabled: Boolean
-
- """
- Project services.
- """
- services(
- """
- Indicates if the service is active.
- """
- active: Boolean
-
- """
- 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
-
- """
- Class name of the service.
- """
- type: ServiceType
- ): ServiceConnection
-
- """
- Indicates if shared runners are enabled for the project.
- """
- sharedRunnersEnabled: Boolean
-
- """
- Snippets of the project.
- """
- snippets(
- """
- 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
-
- """
- Array of global snippet ids, e.g., "gid://gitlab/ProjectSnippet/1".
- """
- ids: [SnippetID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The visibility of the snippet.
- """
- visibility: VisibilityScopesEnum
- ): SnippetConnection
-
- """
- Indicates if Snippets are enabled for the current user
- """
- snippetsEnabled: Boolean
-
- """
- Indicates if `squashReadOnly` is enabled.
- """
- squashReadOnly: Boolean!
-
- """
- URL to connect to the project via SSH.
- """
- sshUrlToRepo: String
-
- """
- Number of times the project has been starred.
- """
- starCount: Int!
-
- """
- Statistics of the project.
- """
- statistics: ProjectStatistics
-
- """
- The commit message used to apply merge request suggestions.
- """
- suggestionCommitMessage: String
-
- """
- List of project topics (not Git tags).
- """
- tagList: String
-
- """
- Find a single Terraform state by name.
- """
- terraformState(
- """
- Name of the Terraform state.
- """
- name: String!
- ): TerraformState
-
- """
- Terraform states associated with the project.
- """
- terraformStates(
- """
- 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
- ): TerraformStateConnection
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: ProjectPermissions!
-
- """
- Visibility of the project.
- """
- visibility: String
-
- """
- Vulnerabilities reported on the project.
- """
- vulnerabilities(
- """
- 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 only the vulnerabilities which have linked issues.
- """
- hasIssues: Boolean
-
- """
- Returns only the vulnerabilities which have been resolved on default branch.
- """
- hasResolution: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by VulnerabilityScanner.externalId.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- List vulnerabilities by sort order.
- """
- sort: VulnerabilitySort = severity_desc
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilityConnection
-
- """
- Number of vulnerabilities per day for the project.
- """
- vulnerabilitiesCountByDay(
- """
- 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
-
- """
- Last day for which to fetch vulnerability history.
- """
- endDate: ISO8601Date!
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- First day for which to fetch vulnerability history.
- """
- startDate: ISO8601Date!
- ): VulnerabilitiesCountByDayConnection
-
- """
- Vulnerability scanners reported on the project vulnerabilities.
- """
- vulnerabilityScanners(
- """
- 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
- ): VulnerabilityScannerConnection
-
- """
- Counts for each vulnerability severity in the project.
- """
- vulnerabilitySeveritiesCount(
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by scanner.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilitySeveritiesCount
-
- """
- Web URL of the project.
- """
- webUrl: String
-
- """
- Indicates if Wikis are enabled for the current user
- """
- wikiEnabled: Boolean
-}
-
-type ProjectCiCdSetting {
- """
- Whether to keep the latest builds artifacts.
- """
- keepLatestArtifact: Boolean
-
- """
- Whether merge pipelines are enabled.
- """
- mergePipelinesEnabled: Boolean
-
- """
- Whether merge trains are enabled.
- """
- mergeTrainsEnabled: Boolean
-
- """
- Project the CI/CD settings belong to.
- """
- project: Project
-}
-
-"""
-The connection type for Project.
-"""
-type ProjectConnection {
- """
- A list of edges.
- """
- edges: [ProjectEdge]
-
- """
- A list of nodes.
- """
- nodes: [Project]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ProjectEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Project
-}
-
-"""
-Identifier of Project.
-"""
-scalar ProjectID
-
-"""
-Represents a Project Membership
-"""
-type ProjectMember implements MemberInterface {
- """
- GitLab::Access level.
- """
- accessLevel: AccessLevel
-
- """
- Date and time the membership was created.
- """
- createdAt: Time
-
- """
- User that authorized membership.
- """
- createdBy: User
-
- """
- Date and time the membership expires.
- """
- expiresAt: Time
-
- """
- ID of the member.
- """
- id: ID!
-
- """
- Project that User is a member of.
- """
- project: Project
-
- """
- Date and time the membership was last updated.
- """
- updatedAt: Time
-
- """
- User that is associated with the member object.
- """
- user: User!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: ProjectPermissions!
-}
-
-"""
-The connection type for ProjectMember.
-"""
-type ProjectMemberConnection {
- """
- A list of edges.
- """
- edges: [ProjectMemberEdge]
-
- """
- A list of nodes.
- """
- nodes: [ProjectMember]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ProjectMemberEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ProjectMember
-}
-
-"""
-Project member relation
-"""
-enum ProjectMemberRelation {
- """
- Descendants members
- """
- DESCENDANTS
-
- """
- Direct members
- """
- DIRECT
-
- """
- Inherited members
- """
- INHERITED
-
- """
- Invited Groups members
- """
- INVITED_GROUPS
-}
-
-type ProjectPermissions {
- """
- Indicates the user can perform `admin_operations` on this resource
- """
- adminOperations: Boolean!
-
- """
- Indicates the user can perform `admin_project` on this resource
- """
- adminProject: Boolean!
-
- """
- Indicates the user can perform `admin_remote_mirror` on this resource
- """
- adminRemoteMirror: Boolean!
-
- """
- Indicates the user can perform `admin_wiki` on this resource
- """
- adminWiki: Boolean!
-
- """
- Indicates the user can perform `archive_project` on this resource
- """
- archiveProject: Boolean!
-
- """
- Indicates the user can perform `change_namespace` on this resource
- """
- changeNamespace: Boolean!
-
- """
- Indicates the user can perform `change_visibility_level` on this resource
- """
- changeVisibilityLevel: Boolean!
-
- """
- Indicates the user can perform `create_deployment` on this resource
- """
- createDeployment: Boolean!
-
- """
- Indicates the user can perform `create_design` on this resource
- """
- createDesign: Boolean!
-
- """
- Indicates the user can perform `create_issue` on this resource
- """
- createIssue: Boolean!
-
- """
- Indicates the user can perform `create_label` on this resource
- """
- createLabel: Boolean!
-
- """
- Indicates the user can perform `create_merge_request_from` on this resource
- """
- createMergeRequestFrom: Boolean!
-
- """
- Indicates the user can perform `create_merge_request_in` on this resource
- """
- createMergeRequestIn: Boolean!
-
- """
- Indicates the user can perform `create_pages` on this resource
- """
- createPages: Boolean!
-
- """
- Indicates the user can perform `create_pipeline` on this resource
- """
- createPipeline: Boolean!
-
- """
- Indicates the user can perform `create_pipeline_schedule` on this resource
- """
- createPipelineSchedule: Boolean!
-
- """
- Indicates the user can perform `create_snippet` on this resource
- """
- createSnippet: Boolean!
-
- """
- Indicates the user can perform `create_wiki` on this resource
- """
- createWiki: Boolean!
-
- """
- Indicates the user can perform `destroy_design` on this resource
- """
- destroyDesign: Boolean!
-
- """
- Indicates the user can perform `destroy_pages` on this resource
- """
- destroyPages: Boolean!
-
- """
- Indicates the user can perform `destroy_wiki` on this resource
- """
- destroyWiki: Boolean!
-
- """
- Indicates the user can perform `download_code` on this resource
- """
- downloadCode: Boolean!
-
- """
- Indicates the user can perform `download_wiki_code` on this resource
- """
- downloadWikiCode: Boolean!
-
- """
- Indicates the user can perform `fork_project` on this resource
- """
- forkProject: Boolean!
-
- """
- Indicates the user can perform `push_code` on this resource
- """
- pushCode: Boolean!
-
- """
- Indicates the user can perform `push_to_delete_protected_branch` on this resource
- """
- pushToDeleteProtectedBranch: Boolean!
-
- """
- Indicates the user can perform `read_commit_status` on this resource
- """
- readCommitStatus: Boolean!
-
- """
- Indicates the user can perform `read_cycle_analytics` on this resource
- """
- readCycleAnalytics: Boolean!
-
- """
- Indicates the user can perform `read_design` on this resource
- """
- readDesign: Boolean!
-
- """
- Indicates the user can perform `read_merge_request` on this resource
- """
- readMergeRequest: Boolean!
-
- """
- Indicates the user can perform `read_pages_content` on this resource
- """
- readPagesContent: Boolean!
-
- """
- Indicates the user can perform `read_project` on this resource
- """
- readProject: Boolean!
-
- """
- Indicates the user can perform `read_project_member` on this resource
- """
- readProjectMember: Boolean!
-
- """
- Indicates the user can perform `read_wiki` on this resource
- """
- readWiki: Boolean!
-
- """
- Indicates the user can perform `remove_fork_project` on this resource
- """
- removeForkProject: Boolean!
-
- """
- Indicates the user can perform `remove_pages` on this resource
- """
- removePages: Boolean!
-
- """
- Indicates the user can perform `remove_project` on this resource
- """
- removeProject: Boolean!
-
- """
- Indicates the user can perform `rename_project` on this resource
- """
- renameProject: Boolean!
-
- """
- Indicates the user can perform `request_access` on this resource
- """
- requestAccess: Boolean!
-
- """
- Indicates the user can perform `update_pages` on this resource
- """
- updatePages: Boolean!
-
- """
- Indicates the user can perform `update_wiki` on this resource
- """
- updateWiki: Boolean!
-
- """
- Indicates the user can perform `upload_file` on this resource
- """
- uploadFile: Boolean!
-}
-
-type ProjectStatistics {
- """
- Build artifacts size of the project in bytes.
- """
- buildArtifactsSize: Float!
-
- """
- Commit count of the project.
- """
- commitCount: Float!
-
- """
- Large File Storage (LFS) object size of the project in bytes.
- """
- lfsObjectsSize: Float!
-
- """
- Packages size of the project in bytes.
- """
- packagesSize: Float!
-
- """
- Repository size of the project in bytes.
- """
- repositorySize: Float!
-
- """
- Snippets size of the project in bytes.
- """
- snippetsSize: Float
-
- """
- Storage size of the project in bytes.
- """
- storageSize: Float!
-
- """
- Uploads size of the project in bytes.
- """
- uploadsSize: Float
-
- """
- Wiki size of the project in bytes.
- """
- wikiSize: Float
-}
-
-"""
-The alert condition for Prometheus
-"""
-type PrometheusAlert {
- """
- The human-readable text of the alert condition.
- """
- humanizedText: String!
-
- """
- ID of the alert condition.
- """
- id: ID!
-}
-
-"""
-Autogenerated input type of PrometheusIntegrationCreate
-"""
-input PrometheusIntegrationCreateInput {
- """
- Whether the integration is receiving alerts.
- """
- active: Boolean!
-
- """
- Endpoint at which prometheus can be queried.
- """
- apiUrl: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project to create the integration in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of PrometheusIntegrationCreate
-"""
-type PrometheusIntegrationCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The newly created integration.
- """
- integration: AlertManagementPrometheusIntegration
-}
-
-"""
-Autogenerated input type of PrometheusIntegrationResetToken
-"""
-input PrometheusIntegrationResetTokenInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the integration to mutate.
- """
- id: PrometheusServiceID!
-}
-
-"""
-Autogenerated return type of PrometheusIntegrationResetToken
-"""
-type PrometheusIntegrationResetTokenPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The newly created integration.
- """
- integration: AlertManagementPrometheusIntegration
-}
-
-"""
-Autogenerated input type of PrometheusIntegrationUpdate
-"""
-input PrometheusIntegrationUpdateInput {
- """
- Whether the integration is receiving alerts.
- """
- active: Boolean
-
- """
- Endpoint at which prometheus can be queried.
- """
- apiUrl: String
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The ID of the integration to mutate.
- """
- id: PrometheusServiceID!
-}
-
-"""
-Autogenerated return type of PrometheusIntegrationUpdate
-"""
-type PrometheusIntegrationUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The newly created integration.
- """
- integration: AlertManagementPrometheusIntegration
-}
-
-"""
-Identifier of PrometheusService.
-"""
-scalar PrometheusServiceID
-
-"""
-Autogenerated input type of PromoteToEpic
-"""
-input PromoteToEpicInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The group the promoted epic will belong to.
- """
- groupPath: ID
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of PromoteToEpic
-"""
-type PromoteToEpicPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The epic after issue promotion.
- """
- epic: Epic
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-type Query {
- """
- CI related settings that apply to the entire instance.
- """
- ciApplicationSettings: CiApplicationSettings
-
- """
- Get linted and processed contents of a CI config. Should not be requested more than once per request.
- """
- ciConfig(
- """
- Contents of '.gitlab-ci.yml'.
- """
- content: String!
-
- """
- Run pipeline creation simulation, or only do static check.
- """
- dryRun: Boolean
-
- """
- The project of the CI config.
- """
- projectPath: ID!
- ): CiConfig
-
- """
- Find a container repository.
- """
- containerRepository(
- """
- The global ID of the container repository.
- """
- id: ContainerRepositoryID!
- ): ContainerRepositoryDetails
-
- """
- Get information about current user.
- """
- currentUser: User
-
- """
- Fields related to design management.
- """
- designManagement: DesignManagement!
-
- """
- Get configured DevOps adoption segments on the instance.
- """
- devopsAdoptionSegments(
- """
- 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
- ): DevopsAdoptionSegmentConnection
-
- """
- Text to echo back.
- """
- echo(
- """
- Text to echo back.
- """
- text: String!
- ): String!
-
- """
- Find a Geo node.
- """
- geoNode(
- """
- The name of the Geo node. Defaults to the current Geo node name.
- """
- name: String
- ): GeoNode
-
- """
- Find a group.
- """
- group(
- """
- The full path of the project, group or namespace, e.g., "gitlab-org/gitlab-foss".
- """
- fullPath: ID!
- ): Group
-
- """
- Fields related to Instance Security Dashboard.
- """
- instanceSecurityDashboard: InstanceSecurityDashboard
-
- """
- Get statistics on the instance.
- """
- instanceStatisticsMeasurements(
- """
- 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
-
- """
- The type of measurement/statistics to retrieve.
- """
- identifier: MeasurementIdentifier!
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Measurement recorded after this date.
- """
- recordedAfter: Time
-
- """
- Measurement recorded before this date.
- """
- recordedBefore: Time
- ): InstanceStatisticsMeasurementConnection
-
- """
- Find an issue.
- """
- issue(
- """
- The global ID of the Issue.
- """
- id: IssueID!
- ): Issue
-
- """
- Find an iteration.
- """
- iteration(
- """
- Find an iteration by its ID.
- """
- id: IterationID!
- ): Iteration
-
- """
- Metadata about GitLab.
- """
- metadata: Metadata
-
- """
- Find a milestone.
- """
- milestone(
- """
- Find a milestone by its ID.
- """
- id: MilestoneID!
- ): Milestone
-
- """
- Find a namespace.
- """
- namespace(
- """
- The full path of the project, group or namespace, e.g., "gitlab-org/gitlab-foss".
- """
- fullPath: ID!
- ): Namespace
-
- """
- Find a package.
- """
- package(
- """
- The global ID of the package.
- """
- id: PackagesPackageID!
- ): Package
-
- """
- Find a project.
- """
- project(
- """
- The full path of the project, group or namespace, e.g., "gitlab-org/gitlab-foss".
- """
- fullPath: ID!
- ): Project
-
- """
- Find projects visible to the current user.
- """
- projects(
- """
- 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
-
- """
- Filter projects by IDs.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Limit projects that the current user is a member of.
- """
- membership: Boolean
-
- """
- Search query for project name, path, or description.
- """
- search: String
-
- """
- Include namespace in project search.
- """
- searchNamespaces: Boolean
-
- """
- Sort order of results.
- """
- sort: String
- ): ProjectConnection
-
- """
- Supported runner platforms.
- """
- runnerPlatforms(
- """
- 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
- ): RunnerPlatformConnection
-
- """
- Get runner setup instructions.
- """
- runnerSetup(
- """
- Architecture to generate the instructions for.
- """
- architecture: String!
-
- """
- Group to register the runner for.
- """
- groupId: GroupID
-
- """
- Platform to generate the instructions for.
- """
- platform: String!
-
- """
- Project to register the runner for.
- """
- projectId: ProjectID
- ): RunnerSetup
-
- """
- Find Snippets visible to the current user.
- """
- snippets(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- The ID of an author.
- """
- authorId: UserID
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Explore personal snippets.
- """
- explore: Boolean
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Array of global snippet ids, e.g., "gid://gitlab/ProjectSnippet/1".
- """
- ids: [SnippetID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The ID of a project.
- """
- projectId: ProjectID
-
- """
- The type of snippet.
- """
- type: TypeEnum
-
- """
- The visibility of the snippet.
- """
- visibility: VisibilityScopesEnum
- ): SnippetConnection
-
- """
- Find a user.
- """
- user(
- """
- ID of the User.
- """
- id: UserID
-
- """
- Username of the User.
- """
- username: String
- ): User
-
- """
- Find users.
- """
- users(
- """
- Return only admin users.
- """
- admins: Boolean = false
-
- """
- 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
-
- """
- List of user Global IDs.
- """
- ids: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Query to search users by name, username, or primary email.
- """
- search: String
-
- """
- Sort users by this criteria.
- """
- sort: Sort = created_desc
-
- """
- List of usernames.
- """
- usernames: [String!]
- ): UserConnection
-
- """
- Vulnerabilities reported on projects on the current user's instance security dashboard.
- """
- vulnerabilities(
- """
- 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 only the vulnerabilities which have linked issues.
- """
- hasIssues: Boolean
-
- """
- Returns only the vulnerabilities which have been resolved on default branch.
- """
- hasResolution: Boolean
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Filter vulnerabilities by project.
- """
- projectId: [ID!]
-
- """
- Filter vulnerabilities by report type.
- """
- reportType: [VulnerabilityReportType!]
-
- """
- Filter vulnerabilities by VulnerabilityScanner.externalId.
- """
- scanner: [String!]
-
- """
- Filter vulnerabilities by severity.
- """
- severity: [VulnerabilitySeverity!]
-
- """
- List vulnerabilities by sort order.
- """
- sort: VulnerabilitySort = severity_desc
-
- """
- Filter vulnerabilities by state.
- """
- state: [VulnerabilityState!]
- ): VulnerabilityConnection
-
- """
- Number of vulnerabilities per day for the projects on the current user's instance security dashboard.
- """
- vulnerabilitiesCountByDay(
- """
- 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
-
- """
- Last day for which to fetch vulnerability history.
- """
- endDate: ISO8601Date!
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- First day for which to fetch vulnerability history.
- """
- startDate: ISO8601Date!
- ): VulnerabilitiesCountByDayConnection
-
- """
- Number of vulnerabilities per severity level, per day, for the projects on the
- current user's instance security dashboard. Deprecated in 13.3: Use
- `vulnerabilitiesCountByDay`.
- """
- vulnerabilitiesCountByDayAndSeverity(
- """
- 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
-
- """
- Last day for which to fetch vulnerability history.
- """
- endDate: ISO8601Date!
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- First day for which to fetch vulnerability history.
- """
- startDate: ISO8601Date!
- ): VulnerabilitiesCountByDayAndSeverityConnection @deprecated(reason: "Use `vulnerabilitiesCountByDay`. Deprecated in 13.3.")
-
- """
- Find a vulnerability.
- """
- vulnerability(
- """
- The Global ID of the Vulnerability.
- """
- id: VulnerabilityID!
- ): Vulnerability
-}
-
-"""
-State of a Geo registry
-"""
-enum RegistryState {
- """
- Registry that failed to sync
- """
- FAILED
-
- """
- Registry waiting to be synced
- """
- PENDING
-
- """
- Registry currently syncing
- """
- STARTED
-
- """
- Registry that is synced
- """
- SYNCED
-}
-
-"""
-Represents a release
-"""
-type Release {
- """
- Assets of the release.
- """
- assets: ReleaseAssets
-
- """
- User that created the release.
- """
- author: User
-
- """
- The commit associated with the release.
- """
- commit: Commit
-
- """
- Timestamp of when the release was created.
- """
- createdAt: Time
-
- """
- Description (also known as "release notes") of the release.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- Evidence for the release.
- """
- evidences(
- """
- 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
- ): ReleaseEvidenceConnection
-
- """
- Links of the release.
- """
- links: ReleaseLinks
-
- """
- Milestones associated to the release.
- """
- milestones(
- """
- 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
- ): MilestoneConnection
-
- """
- Name of the release.
- """
- name: String
-
- """
- Timestamp of when the release was released.
- """
- releasedAt: Time
-
- """
- Name of the tag associated with the release.
- """
- tagName: String
-
- """
- Relative web path to the tag associated with the release.
- """
- tagPath: String
-
- """
- Indicates the release is an upcoming release.
- """
- upcomingRelease: Boolean
-}
-
-"""
-Represents an asset link associated with a release
-"""
-type ReleaseAssetLink {
- """
- Direct asset URL of the link.
- """
- directAssetUrl: String
-
- """
- Indicates the link points to an external resource.
- """
- external: Boolean
-
- """
- ID of the link.
- """
- id: ID!
-
- """
- Type of the link: `other`, `runbook`, `image`, `package`; defaults to `other`.
- """
- linkType: ReleaseAssetLinkType
-
- """
- Name of the link.
- """
- name: String
-
- """
- URL of the link.
- """
- url: String
-}
-
-"""
-The connection type for ReleaseAssetLink.
-"""
-type ReleaseAssetLinkConnection {
- """
- A list of edges.
- """
- edges: [ReleaseAssetLinkEdge]
-
- """
- A list of nodes.
- """
- nodes: [ReleaseAssetLink]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ReleaseAssetLinkEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ReleaseAssetLink
-}
-
-"""
-Fields that are available when modifying a release asset link
-"""
-input ReleaseAssetLinkInput {
- """
- Relative path for a direct asset link.
- """
- directAssetPath: String
-
- """
- The type of the asset link.
- """
- linkType: ReleaseAssetLinkType = OTHER
-
- """
- Name of the asset link.
- """
- name: String!
-
- """
- URL of the asset link.
- """
- url: String!
-}
-
-"""
-Type of the link: `other`, `runbook`, `image`, `package`
-"""
-enum ReleaseAssetLinkType {
- """
- Image link type
- """
- IMAGE
-
- """
- Other link type
- """
- OTHER
-
- """
- Package link type
- """
- PACKAGE
-
- """
- Runbook link type
- """
- RUNBOOK
-}
-
-"""
-A container for all assets associated with a release
-"""
-type ReleaseAssets {
- """
- Number of assets of the release.
- """
- count: Int
-
- """
- Asset links of the release.
- """
- links(
- """
- 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
- ): ReleaseAssetLinkConnection
-
- """
- Sources of the release.
- """
- sources(
- """
- 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
- ): ReleaseSourceConnection
-}
-
-"""
-Fields that are available when modifying release assets
-"""
-input ReleaseAssetsInput {
- """
- A list of asset links to associate to the release.
- """
- links: [ReleaseAssetLinkInput!]
-}
-
-"""
-The connection type for Release.
-"""
-type ReleaseConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [ReleaseEdge]
-
- """
- A list of nodes.
- """
- nodes: [Release]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of ReleaseCreate
-"""
-input ReleaseCreateInput {
- """
- Assets associated to the release.
- """
- assets: ReleaseAssetsInput
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description (also known as "release notes") of the release.
- """
- description: String
-
- """
- The title of each milestone the release is associated with. GitLab Premium customers can specify group milestones.
- """
- milestones: [String!]
-
- """
- Name of the release.
- """
- name: String
-
- """
- Full path of the project the release is associated with.
- """
- projectPath: ID!
-
- """
- The commit SHA or branch name to use if creating a new tag.
- """
- ref: String
-
- """
- The date when the release will be/was ready. Defaults to the current time.
- """
- releasedAt: Time
-
- """
- Name of the tag to associate with the release.
- """
- tagName: String!
-}
-
-"""
-Autogenerated return type of ReleaseCreate
-"""
-type ReleaseCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The release after mutation.
- """
- release: Release
-}
-
-"""
-Autogenerated input type of ReleaseDelete
-"""
-input ReleaseDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Full path of the project the release is associated with.
- """
- projectPath: ID!
-
- """
- Name of the tag associated with the release to delete.
- """
- tagName: String!
-}
-
-"""
-Autogenerated return type of ReleaseDelete
-"""
-type ReleaseDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The deleted release.
- """
- release: Release
-}
-
-"""
-An edge in a connection.
-"""
-type ReleaseEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Release
-}
-
-"""
-Evidence for a release
-"""
-type ReleaseEvidence {
- """
- Timestamp when the evidence was collected.
- """
- collectedAt: Time
-
- """
- URL from where the evidence can be downloaded.
- """
- filepath: String
-
- """
- ID of the evidence.
- """
- id: ID!
-
- """
- SHA1 ID of the evidence hash.
- """
- sha: String
-}
-
-"""
-The connection type for ReleaseEvidence.
-"""
-type ReleaseEvidenceConnection {
- """
- A list of edges.
- """
- edges: [ReleaseEvidenceEdge]
-
- """
- A list of nodes.
- """
- nodes: [ReleaseEvidence]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ReleaseEvidenceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ReleaseEvidence
-}
-
-type ReleaseLinks {
- """
- HTTP URL of the issues page, filtered by this release and `state=closed`.
- """
- closedIssuesUrl: String
-
- """
- HTTP URL of the merge request page , filtered by this release and `state=closed`.
- """
- closedMergeRequestsUrl: String
-
- """
- HTTP URL of the release's edit page.
- """
- editUrl: String
-
- """
- HTTP URL of the merge request page , filtered by this release and `state=merged`.
- """
- mergedMergeRequestsUrl: String
-
- """
- HTTP URL of the issues page, filtered by this release and `state=open`.
- """
- openedIssuesUrl: String
-
- """
- HTTP URL of the merge request page, filtered by this release and `state=open`.
- """
- openedMergeRequestsUrl: String
-
- """
- HTTP URL of the release.
- """
- selfUrl: String
-}
-
-"""
-Values for sorting releases
-"""
-enum ReleaseSort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Released at by ascending order
- """
- RELEASED_AT_ASC
-
- """
- Released at by descending order
- """
- RELEASED_AT_DESC
-}
-
-"""
-Represents the source code attached to a release in a particular format
-"""
-type ReleaseSource {
- """
- Format of the source.
- """
- format: String
-
- """
- Download URL of the source.
- """
- url: String
-}
-
-"""
-The connection type for ReleaseSource.
-"""
-type ReleaseSourceConnection {
- """
- A list of edges.
- """
- edges: [ReleaseSourceEdge]
-
- """
- A list of nodes.
- """
- nodes: [ReleaseSource]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ReleaseSourceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ReleaseSource
-}
-
-"""
-Autogenerated input type of ReleaseUpdate
-"""
-input ReleaseUpdateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description (release notes) of the release.
- """
- description: String
-
- """
- The title of each milestone the release is associated with. GitLab Premium customers can specify group milestones.
- """
- milestones: [String!]
-
- """
- Name of the release.
- """
- name: String
-
- """
- Full path of the project the release is associated with.
- """
- projectPath: ID!
-
- """
- The release date.
- """
- releasedAt: Time
-
- """
- Name of the tag associated with the release.
- """
- tagName: String!
-}
-
-"""
-Autogenerated return type of ReleaseUpdate
-"""
-type ReleaseUpdatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The release after mutation.
- """
- release: Release
-}
-
-"""
-Autogenerated input type of RemoveAwardEmoji
-"""
-input RemoveAwardEmojiInput {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of RemoveAwardEmoji
-"""
-type RemoveAwardEmojiPayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of RemoveProjectFromSecurityDashboard
-"""
-input RemoveProjectFromSecurityDashboardInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the project to remove from the Instance Security Dashboard.
- """
- id: ProjectID!
-}
-
-"""
-Autogenerated return type of RemoveProjectFromSecurityDashboard
-"""
-type RemoveProjectFromSecurityDashboardPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of RepositionImageDiffNote
-"""
-input RepositionImageDiffNoteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the DiffNote to update.
- """
- id: DiffNoteID!
-
- """
- The position of this note on a diff.
- """
- position: UpdateDiffImagePositionInput!
-}
-
-"""
-Autogenerated return type of RepositionImageDiffNote
-"""
-type RepositionImageDiffNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-type Repository {
- """
- Indicates repository has no visible content.
- """
- empty: Boolean!
-
- """
- Indicates a corresponding Git repository exists on disk.
- """
- exists: Boolean!
-
- """
- Default branch of the repository.
- """
- rootRef: String
-
- """
- Tree of the repository.
- """
- tree(
- """
- The path to get the tree for. Default value is the root of the repository.
- """
- path: String = ""
-
- """
- Used to get a recursive tree. Default is false.
- """
- recursive: Boolean = false
-
- """
- The commit ref to get the tree for. Default value is HEAD.
- """
- ref: String = "head"
- ): Tree
-}
-
-"""
-Represents a requirement
-"""
-type Requirement {
- """
- Author of the requirement.
- """
- author: User!
-
- """
- Timestamp of when the requirement was created.
- """
- createdAt: Time!
-
- """
- Description of the requirement.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- ID of the requirement.
- """
- id: ID!
-
- """
- Internal ID of the requirement.
- """
- iid: ID!
-
- """
- Indicates if latest test report was created by user.
- """
- lastTestReportManuallyCreated: Boolean
-
- """
- Latest requirement test report state.
- """
- lastTestReportState: TestReportState
-
- """
- Project to which the requirement belongs.
- """
- project: Project!
-
- """
- State of the requirement.
- """
- state: RequirementState!
-
- """
- Test reports of the requirement.
- """
- testReports(
- """
- 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
-
- """
- List test reports by sort order.
- """
- sort: Sort
- ): TestReportConnection
-
- """
- Title of the requirement.
- """
- title: String
-
- """
- The GitLab Flavored Markdown rendering of `title`
- """
- titleHtml: String
-
- """
- Timestamp of when the requirement was last updated.
- """
- updatedAt: Time!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: RequirementPermissions!
-}
-
-"""
-The connection type for Requirement.
-"""
-type RequirementConnection {
- """
- A list of edges.
- """
- edges: [RequirementEdge]
-
- """
- A list of nodes.
- """
- nodes: [Requirement]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type RequirementEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Requirement
-}
-
-"""
-Check permissions for the current user on a requirement
-"""
-type RequirementPermissions {
- """
- Indicates the user can perform `admin_requirement` on this resource
- """
- adminRequirement: Boolean!
-
- """
- Indicates the user can perform `create_requirement` on this resource
- """
- createRequirement: Boolean!
-
- """
- Indicates the user can perform `destroy_requirement` on this resource
- """
- destroyRequirement: Boolean!
-
- """
- Indicates the user can perform `read_requirement` on this resource
- """
- readRequirement: Boolean!
-
- """
- Indicates the user can perform `update_requirement` on this resource
- """
- updateRequirement: Boolean!
-}
-
-"""
-State of a requirement
-"""
-enum RequirementState {
- ARCHIVED
- OPENED
-}
-
-"""
-Counts of requirements by their state
-"""
-type RequirementStatesCount {
- """
- Number of archived requirements.
- """
- archived: Int
-
- """
- Number of opened requirements.
- """
- opened: Int
-}
-
-interface ResolvableInterface {
- """
- Indicates if the object can be resolved.
- """
- resolvable: Boolean!
-
- """
- Indicates if the object is resolved.
- """
- resolved: Boolean!
-
- """
- Timestamp of when the object was resolved.
- """
- resolvedAt: Time
-
- """
- User who resolved the object.
- """
- resolvedBy: User
-}
-
-"""
-Autogenerated input type of RevertVulnerabilityToDetected
-"""
-input RevertVulnerabilityToDetectedInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the vulnerability to be reverted.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of RevertVulnerabilityToDetected
-"""
-type RevertVulnerabilityToDetectedPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after revert.
- """
- vulnerability: Vulnerability
-}
-
-type RootStorageStatistics {
- """
- The CI artifacts size in bytes.
- """
- buildArtifactsSize: Float!
-
- """
- The LFS objects size in bytes.
- """
- lfsObjectsSize: Float!
-
- """
- The packages size in bytes.
- """
- packagesSize: Float!
-
- """
- The CI pipeline artifacts size in bytes.
- """
- pipelineArtifactsSize: Float!
-
- """
- The Git repository size in bytes.
- """
- repositorySize: Float!
-
- """
- The snippets size in bytes.
- """
- snippetsSize: Float!
-
- """
- The total storage in bytes.
- """
- storageSize: Float!
-
- """
- The uploads size in bytes.
- """
- uploadsSize: Float!
-
- """
- The wiki size in bytes.
- """
- wikiSize: Float!
-}
-
-"""
-Autogenerated input type of RunDASTScan
-"""
-input RunDASTScanInput {
- """
- The branch to be associated with the scan.
- """
- branch: String!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The project the DAST scan belongs to.
- """
- projectPath: ID!
-
- """
- The type of scan to be run.
- """
- scanType: DastScanTypeEnum!
-
- """
- The URL of the target to be scanned.
- """
- targetUrl: String!
-}
-
-"""
-Autogenerated return type of RunDASTScan
-"""
-type RunDASTScanPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- URL of the pipeline that was created.
- """
- pipelineUrl: String
-}
-
-type RunnerArchitecture {
- """
- Download location for the runner for the platform architecture.
- """
- downloadLocation: String!
-
- """
- Name of the runner platform architecture.
- """
- name: String!
-}
-
-"""
-The connection type for RunnerArchitecture.
-"""
-type RunnerArchitectureConnection {
- """
- A list of edges.
- """
- edges: [RunnerArchitectureEdge]
-
- """
- A list of nodes.
- """
- nodes: [RunnerArchitecture]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type RunnerArchitectureEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: RunnerArchitecture
-}
-
-type RunnerPlatform {
- """
- Runner architectures supported for the platform.
- """
- architectures(
- """
- 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
- ): RunnerArchitectureConnection
-
- """
- Human readable name of the runner platform.
- """
- humanReadableName: String!
-
- """
- Name slug of the runner platform.
- """
- name: String!
-}
-
-"""
-The connection type for RunnerPlatform.
-"""
-type RunnerPlatformConnection {
- """
- A list of edges.
- """
- edges: [RunnerPlatformEdge]
-
- """
- A list of nodes.
- """
- nodes: [RunnerPlatform]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type RunnerPlatformEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: RunnerPlatform
-}
-
-type RunnerSetup {
- """
- Instructions for installing the runner on the specified architecture.
- """
- installInstructions: String!
-
- """
- Instructions for registering the runner.
- """
- registerInstructions: String
-}
-
-"""
-Represents a CI configuration of SAST
-"""
-type SastCiConfiguration {
- """
- List of analyzers entities attached to SAST configuration.
- """
- analyzers(
- """
- 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
- ): SastCiConfigurationAnalyzersEntityConnection
-
- """
- List of global entities related to SAST configuration.
- """
- global(
- """
- 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
- ): SastCiConfigurationEntityConnection
-
- """
- List of pipeline entities related to SAST configuration.
- """
- pipeline(
- """
- 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
- ): SastCiConfigurationEntityConnection
-}
-
-"""
-Represents an analyzer entity in SAST CI configuration
-"""
-type SastCiConfigurationAnalyzersEntity {
- """
- Analyzer description that is displayed on the form.
- """
- description: String
-
- """
- Indicates whether an analyzer is enabled.
- """
- enabled: Boolean
-
- """
- Analyzer label used in the config UI.
- """
- label: String
-
- """
- Name of the analyzer.
- """
- name: String
-
- """
- List of supported variables.
- """
- variables(
- """
- 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
- ): SastCiConfigurationEntityConnection
-}
-
-"""
-The connection type for SastCiConfigurationAnalyzersEntity.
-"""
-type SastCiConfigurationAnalyzersEntityConnection {
- """
- A list of edges.
- """
- edges: [SastCiConfigurationAnalyzersEntityEdge]
-
- """
- A list of nodes.
- """
- nodes: [SastCiConfigurationAnalyzersEntity]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SastCiConfigurationAnalyzersEntityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SastCiConfigurationAnalyzersEntity
-}
-
-"""
-Represents the analyzers entity in SAST CI configuration
-"""
-input SastCiConfigurationAnalyzersEntityInput {
- """
- State of the analyzer.
- """
- enabled: Boolean!
-
- """
- Name of analyzer.
- """
- name: String!
-
- """
- List of variables for the analyzer.
- """
- variables: [SastCiConfigurationEntityInput!]
-}
-
-"""
-Represents an entity in SAST CI configuration
-"""
-type SastCiConfigurationEntity {
- """
- Default value that is used if value is empty.
- """
- defaultValue: String
-
- """
- Entity description that is displayed on the form.
- """
- description: String
-
- """
- CI keyword of entity.
- """
- field: String
-
- """
- Label for entity used in the form.
- """
- label: String
-
- """
- Different possible values of the field.
- """
- options(
- """
- 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
- ): SastCiConfigurationOptionsEntityConnection
-
- """
- Size of the UI component.
- """
- size: SastUiComponentSize
-
- """
- Type of the field value.
- """
- type: String
-
- """
- Current value of the entity.
- """
- value: String
-}
-
-"""
-The connection type for SastCiConfigurationEntity.
-"""
-type SastCiConfigurationEntityConnection {
- """
- A list of edges.
- """
- edges: [SastCiConfigurationEntityEdge]
-
- """
- A list of nodes.
- """
- nodes: [SastCiConfigurationEntity]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SastCiConfigurationEntityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SastCiConfigurationEntity
-}
-
-"""
-Represents an entity in SAST CI configuration
-"""
-input SastCiConfigurationEntityInput {
- """
- Default value that is used if value is empty.
- """
- defaultValue: String!
-
- """
- CI keyword of entity.
- """
- field: String!
-
- """
- Current value of the entity.
- """
- value: String!
-}
-
-"""
-Represents a CI configuration of SAST
-"""
-input SastCiConfigurationInput {
- """
- List of analyzers and related variables for the SAST configuration.
- """
- analyzers: [SastCiConfigurationAnalyzersEntityInput!]
-
- """
- List of global entities related to SAST configuration.
- """
- global: [SastCiConfigurationEntityInput!]
-
- """
- List of pipeline entities related to SAST configuration.
- """
- pipeline: [SastCiConfigurationEntityInput!]
-}
-
-"""
-Represents an entity for options in SAST CI configuration
-"""
-type SastCiConfigurationOptionsEntity {
- """
- Label of option entity.
- """
- label: String
-
- """
- Value of option entity.
- """
- value: String
-}
-
-"""
-The connection type for SastCiConfigurationOptionsEntity.
-"""
-type SastCiConfigurationOptionsEntityConnection {
- """
- A list of edges.
- """
- edges: [SastCiConfigurationOptionsEntityEdge]
-
- """
- A list of nodes.
- """
- nodes: [SastCiConfigurationOptionsEntity]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SastCiConfigurationOptionsEntityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SastCiConfigurationOptionsEntity
-}
-
-"""
-Size of UI component in SAST configuration page
-"""
-enum SastUiComponentSize {
- LARGE
- MEDIUM
- SMALL
-}
-
-"""
-Represents a resource scanned by a security scan
-"""
-type ScannedResource {
- """
- The HTTP request method used to access the URL.
- """
- requestMethod: String
-
- """
- The URL scanned by the scanner.
- """
- url: String
-}
-
-"""
-The connection type for ScannedResource.
-"""
-type ScannedResourceConnection {
- """
- A list of edges.
- """
- edges: [ScannedResourceEdge]
-
- """
- A list of nodes.
- """
- nodes: [ScannedResource]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ScannedResourceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: ScannedResource
-}
-
-"""
-Represents summary of a security report
-"""
-type SecurityReportSummary {
- """
- Aggregated counts for the `api_fuzzing` scan
- """
- apiFuzzing: SecurityReportSummarySection
-
- """
- Aggregated counts for the `container_scanning` scan
- """
- containerScanning: SecurityReportSummarySection
-
- """
- Aggregated counts for the `coverage_fuzzing` scan
- """
- coverageFuzzing: SecurityReportSummarySection
-
- """
- Aggregated counts for the `dast` scan
- """
- dast: SecurityReportSummarySection
-
- """
- Aggregated counts for the `dependency_scanning` scan
- """
- dependencyScanning: SecurityReportSummarySection
-
- """
- Aggregated counts for the `sast` scan
- """
- sast: SecurityReportSummarySection
-
- """
- Aggregated counts for the `secret_detection` scan
- """
- secretDetection: SecurityReportSummarySection
-}
-
-"""
-Represents a section of a summary of a security report
-"""
-type SecurityReportSummarySection {
- """
- A list of the first 20 scanned resources.
- """
- scannedResources(
- """
- 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
- ): ScannedResourceConnection
-
- """
- Total number of scanned resources.
- """
- scannedResourcesCount: Int
-
- """
- Path to download all the scanned resources in CSV format.
- """
- scannedResourcesCsvPath: String
-
- """
- Total number of vulnerabilities.
- """
- vulnerabilitiesCount: Int
-}
-
-enum SecurityReportTypeEnum {
- """
- API FUZZING scan report
- """
- API_FUZZING
-
- """
- CONTAINER SCANNING scan report
- """
- CONTAINER_SCANNING
-
- """
- COVERAGE FUZZING scan report
- """
- COVERAGE_FUZZING
-
- """
- DAST scan report
- """
- DAST
-
- """
- DEPENDENCY SCANNING scan report
- """
- DEPENDENCY_SCANNING
-
- """
- SAST scan report
- """
- SAST
-
- """
- SECRET DETECTION scan report
- """
- SECRET_DETECTION
-}
-
-"""
-The type of the security scanner
-"""
-enum SecurityScannerType {
- API_FUZZING
- CONTAINER_SCANNING
- COVERAGE_FUZZING
- DAST
- DEPENDENCY_SCANNING
- SAST
- SECRET_DETECTION
-}
-
-"""
-Represents a list of security scanners
-"""
-type SecurityScanners {
- """
- List of analyzers which are available for the project.
- """
- available: [SecurityScannerType!]
-
- """
- List of analyzers which are enabled for the project.
- """
- enabled: [SecurityScannerType!]
-
- """
- List of analyzers which ran successfully in the latest pipeline.
- """
- pipelineRun: [SecurityScannerType!]
-}
-
-"""
-A Sentry error
-"""
-type SentryDetailedError {
- """
- Count of occurrences.
- """
- count: Int!
-
- """
- Culprit of the error.
- """
- culprit: String!
-
- """
- External Base URL of the Sentry Instance.
- """
- externalBaseUrl: String!
-
- """
- External URL of the error.
- """
- externalUrl: String!
-
- """
- Commit the error was first seen.
- """
- firstReleaseLastCommit: String
-
- """
- Release short version the error was first seen.
- """
- firstReleaseShortVersion: String
-
- """
- Release version the error was first seen.
- """
- firstReleaseVersion: String
-
- """
- Timestamp when the error was first seen.
- """
- firstSeen: Time!
-
- """
- Last 24hr stats of the error.
- """
- frequency: [SentryErrorFrequency!]!
-
- """
- 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.
- """
- gitlabCommitPath: String
-
- """
- URL of GitLab Issue.
- """
- gitlabIssuePath: String
-
- """
- ID (global ID) of the error.
- """
- id: ID!
-
- """
- Commit the error was last seen.
- """
- lastReleaseLastCommit: String
-
- """
- Release short version the error was last seen.
- """
- lastReleaseShortVersion: String
-
- """
- Release version the error was last seen.
- """
- lastReleaseVersion: String
-
- """
- Timestamp when the error was last seen.
- """
- lastSeen: Time!
-
- """
- Sentry metadata message of the error.
- """
- message: String
-
- """
- ID (Sentry ID) of the error.
- """
- sentryId: String!
-
- """
- ID of the project (Sentry project).
- """
- sentryProjectId: ID!
-
- """
- Name of the project affected by the error.
- """
- sentryProjectName: String!
-
- """
- Slug of the project affected by the error.
- """
- sentryProjectSlug: String!
-
- """
- Short ID (Sentry ID) of the error.
- """
- shortId: String!
-
- """
- Status of the error.
- """
- status: SentryErrorStatus!
-
- """
- Tags associated with the Sentry Error.
- """
- tags: SentryErrorTags!
-
- """
- Title of the error.
- """
- title: String!
-
- """
- Type of the error.
- """
- type: String!
-
- """
- Count of users affected by the error.
- """
- userCount: Int!
-}
-
-"""
-A Sentry error. A simplified version of SentryDetailedError
-"""
-type SentryError {
- """
- Count of occurrences.
- """
- count: Int!
-
- """
- Culprit of the error.
- """
- culprit: String!
-
- """
- External URL of the error.
- """
- externalUrl: String!
-
- """
- Timestamp when the error was first seen.
- """
- firstSeen: Time!
-
- """
- Last 24hr stats of the error.
- """
- frequency: [SentryErrorFrequency!]!
-
- """
- ID (global ID) of the error.
- """
- id: ID!
-
- """
- Timestamp when the error was last seen.
- """
- lastSeen: Time!
-
- """
- Sentry metadata message of the error.
- """
- message: String
-
- """
- ID (Sentry ID) of the error.
- """
- sentryId: String!
-
- """
- ID of the project (Sentry project).
- """
- sentryProjectId: ID!
-
- """
- Name of the project affected by the error.
- """
- sentryProjectName: String!
-
- """
- Slug of the project affected by the error.
- """
- sentryProjectSlug: String!
-
- """
- Short ID (Sentry ID) of the error.
- """
- shortId: String!
-
- """
- Status of the error.
- """
- status: SentryErrorStatus!
-
- """
- Title of the error.
- """
- title: String!
-
- """
- Type of the error.
- """
- type: String!
-
- """
- Count of users affected by the error.
- """
- userCount: Int!
-}
-
-"""
-An object containing a collection of Sentry errors, and a detailed error
-"""
-type SentryErrorCollection {
- """
- Detailed version of a Sentry error on the project.
- """
- detailedError(
- """
- ID of the Sentry issue.
- """
- id: GitlabErrorTrackingDetailedErrorID!
- ): SentryDetailedError
-
- """
- Stack Trace of Sentry Error.
- """
- errorStackTrace(
- """
- ID of the Sentry issue.
- """
- id: GitlabErrorTrackingDetailedErrorID!
- ): SentryErrorStackTrace
-
- """
- Collection of Sentry Errors.
- """
- errors(
- """
- 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
-
- """
- Search query for the Sentry error details.
- """
- searchTerm: String
-
- """
- Attribute to sort on. Options are frequency, first_seen, last_seen. last_seen is default.
- """
- sort: String
- ): SentryErrorConnection
-
- """
- External URL for Sentry.
- """
- externalUrl: String
-}
-
-"""
-The connection type for SentryError.
-"""
-type SentryErrorConnection {
- """
- A list of edges.
- """
- edges: [SentryErrorEdge]
-
- """
- A list of nodes.
- """
- nodes: [SentryError]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SentryErrorEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SentryError
-}
-
-type SentryErrorFrequency {
- """
- Count of errors received since the previously recorded time.
- """
- count: Int!
-
- """
- Time the error frequency stats were recorded.
- """
- time: Time!
-}
-
-"""
-An object containing a stack trace entry for a Sentry error
-"""
-type SentryErrorStackTrace {
- """
- Time the stack trace was received by Sentry.
- """
- dateReceived: String!
-
- """
- ID of the Sentry error.
- """
- issueId: String!
-
- """
- Stack trace entries for the Sentry error.
- """
- stackTraceEntries: [SentryErrorStackTraceEntry!]!
-}
-
-"""
-An object context for a Sentry error stack trace
-"""
-type SentryErrorStackTraceContext {
- """
- Code number of the context.
- """
- code: String!
-
- """
- Line number of the context.
- """
- line: Int!
-}
-
-"""
-An object containing a stack trace entry for a Sentry error
-"""
-type SentryErrorStackTraceEntry {
- """
- Function in which the Sentry error occurred.
- """
- col: String
-
- """
- File in which the Sentry error occurred.
- """
- fileName: String
-
- """
- Function in which the Sentry error occurred.
- """
- function: String
-
- """
- Function in which the Sentry error occurred.
- """
- line: String
-
- """
- Context of the Sentry error.
- """
- traceContext: [SentryErrorStackTraceContext!]
-}
-
-"""
-State of a Sentry error
-"""
-enum SentryErrorStatus {
- """
- Error has been ignored
- """
- IGNORED
-
- """
- Error has been resolved
- """
- RESOLVED
-
- """
- Error has been ignored until next release
- """
- RESOLVED_IN_NEXT_RELEASE
-
- """
- Error is unresolved
- """
- UNRESOLVED
-}
-
-"""
-State of a Sentry error
-"""
-type SentryErrorTags {
- """
- Severity level of the Sentry Error.
- """
- level: String
-
- """
- Logger of the Sentry Error.
- """
- logger: String
-}
-
-interface Service {
- """
- Indicates if the service is active.
- """
- active: Boolean
-
- """
- Class name of the service.
- """
- type: String
-}
-
-"""
-The connection type for Service.
-"""
-type ServiceConnection {
- """
- A list of edges.
- """
- edges: [ServiceEdge]
-
- """
- A list of nodes.
- """
- nodes: [Service]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type ServiceEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Service
-}
-
-enum ServiceType {
- """
- AsanaService type
- """
- ASANA_SERVICE
-
- """
- AssemblaService type
- """
- ASSEMBLA_SERVICE
-
- """
- BambooService type
- """
- BAMBOO_SERVICE
-
- """
- BugzillaService type
- """
- BUGZILLA_SERVICE
-
- """
- BuildkiteService type
- """
- BUILDKITE_SERVICE
-
- """
- CampfireService type
- """
- CAMPFIRE_SERVICE
-
- """
- ConfluenceService type
- """
- CONFLUENCE_SERVICE
-
- """
- CustomIssueTrackerService type
- """
- CUSTOM_ISSUE_TRACKER_SERVICE
-
- """
- DatadogService type
- """
- DATADOG_SERVICE
-
- """
- DiscordService type
- """
- DISCORD_SERVICE
-
- """
- DroneCiService type
- """
- DRONE_CI_SERVICE
-
- """
- EmailsOnPushService type
- """
- EMAILS_ON_PUSH_SERVICE
-
- """
- EwmService type
- """
- EWM_SERVICE
-
- """
- ExternalWikiService type
- """
- EXTERNAL_WIKI_SERVICE
-
- """
- FlowdockService type
- """
- FLOWDOCK_SERVICE
-
- """
- GithubService type
- """
- GITHUB_SERVICE
-
- """
- HangoutsChatService type
- """
- HANGOUTS_CHAT_SERVICE
-
- """
- HipchatService type
- """
- HIPCHAT_SERVICE
-
- """
- IrkerService type
- """
- IRKER_SERVICE
-
- """
- JenkinsService type
- """
- JENKINS_SERVICE
-
- """
- JiraService type
- """
- JIRA_SERVICE
-
- """
- MattermostService type
- """
- MATTERMOST_SERVICE
-
- """
- MattermostSlashCommandsService type
- """
- MATTERMOST_SLASH_COMMANDS_SERVICE
-
- """
- MicrosoftTeamsService type
- """
- MICROSOFT_TEAMS_SERVICE
-
- """
- PackagistService type
- """
- PACKAGIST_SERVICE
-
- """
- PipelinesEmailService type
- """
- PIPELINES_EMAIL_SERVICE
-
- """
- PivotaltrackerService type
- """
- PIVOTALTRACKER_SERVICE
-
- """
- PrometheusService type
- """
- PROMETHEUS_SERVICE
-
- """
- PushoverService type
- """
- PUSHOVER_SERVICE
-
- """
- RedmineService type
- """
- REDMINE_SERVICE
-
- """
- SlackService type
- """
- SLACK_SERVICE
-
- """
- SlackSlashCommandsService type
- """
- SLACK_SLASH_COMMANDS_SERVICE
-
- """
- TeamcityService type
- """
- TEAMCITY_SERVICE
-
- """
- UnifyCircuitService type
- """
- UNIFY_CIRCUIT_SERVICE
-
- """
- WebexTeamsService type
- """
- WEBEX_TEAMS_SERVICE
-
- """
- YoutrackService type
- """
- YOUTRACK_SERVICE
-}
-
-"""
-Represents a snippet entry
-"""
-type Snippet implements Noteable {
- """
- The owner of the snippet.
- """
- author: User
-
- """
- Snippet blob. Deprecated in 13.3: Use `blobs`.
- """
- blob: SnippetBlob! @deprecated(reason: "Use `blobs`. Deprecated in 13.3.")
-
- """
- Snippet blobs.
- """
- blobs(
- """
- 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
-
- """
- Paths of the blobs.
- """
- paths: [String!]
- ): SnippetBlobConnection
-
- """
- Timestamp this snippet was created.
- """
- createdAt: Time!
-
- """
- Description of the snippet.
- """
- description: String
-
- """
- The GitLab Flavored Markdown rendering of `description`
- """
- descriptionHtml: String
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- File Name of the snippet.
- """
- fileName: String
-
- """
- HTTP URL to the snippet repository.
- """
- httpUrlToRepo: String
-
- """
- ID of the snippet.
- """
- id: SnippetID!
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- The project the snippet is associated with.
- """
- project: Project
-
- """
- Raw URL of the snippet.
- """
- rawUrl: String!
-
- """
- SSH URL to the snippet repository.
- """
- sshUrlToRepo: String
-
- """
- Title of the snippet.
- """
- title: String!
-
- """
- Timestamp this snippet was updated.
- """
- updatedAt: Time!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: SnippetPermissions!
-
- """
- Visibility Level of the snippet.
- """
- visibilityLevel: VisibilityLevelsEnum!
-
- """
- Web URL of the snippet.
- """
- webUrl: String!
-}
-
-"""
-Represents the snippet blob
-"""
-type SnippetBlob {
- """
- Shows whether the blob is binary.
- """
- binary: Boolean!
-
- """
- Blob external storage.
- """
- externalStorage: String
-
- """
- Blob mode.
- """
- mode: String
-
- """
- Blob name.
- """
- name: String
-
- """
- Blob path.
- """
- path: String
-
- """
- Blob plain highlighted data.
- """
- plainData: String
-
- """
- Blob raw content endpoint path.
- """
- rawPath: String!
-
- """
- Shows whether the blob is rendered as text.
- """
- renderedAsText: Boolean!
-
- """
- Blob highlighted data.
- """
- richData: String
-
- """
- Blob content rich viewer.
- """
- richViewer: SnippetBlobViewer
-
- """
- Blob content simple viewer.
- """
- simpleViewer: SnippetBlobViewer!
-
- """
- Blob size.
- """
- size: Int!
-}
-
-"""
-Type of a snippet blob input action
-"""
-enum SnippetBlobActionEnum {
- create
- delete
- move
- update
-}
-
-"""
-Represents an action to perform over a snippet file
-"""
-input SnippetBlobActionInputType {
- """
- Type of input action.
- """
- action: SnippetBlobActionEnum!
-
- """
- Snippet file content.
- """
- content: String
-
- """
- Path of the snippet file.
- """
- filePath: String!
-
- """
- Previous path of the snippet file.
- """
- previousPath: String
-}
-
-"""
-The connection type for SnippetBlob.
-"""
-type SnippetBlobConnection {
- """
- A list of edges.
- """
- edges: [SnippetBlobEdge]
-
- """
- A list of nodes.
- """
- nodes: [SnippetBlob]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SnippetBlobEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SnippetBlob
-}
-
-"""
-Represents how the blob content should be displayed
-"""
-type SnippetBlobViewer {
- """
- Shows whether the blob should be displayed collapsed.
- """
- collapsed: Boolean!
-
- """
- Content file type.
- """
- fileType: String!
-
- """
- Shows whether the blob content is loaded asynchronously.
- """
- loadAsync: Boolean!
-
- """
- Loading partial name.
- """
- loadingPartialName: String!
-
- """
- Error rendering the blob content.
- """
- renderError: String
-
- """
- Shows whether the blob too large to be displayed.
- """
- tooLarge: Boolean!
-
- """
- Type of blob viewer.
- """
- type: BlobViewersType!
-}
-
-"""
-The connection type for Snippet.
-"""
-type SnippetConnection {
- """
- A list of edges.
- """
- edges: [SnippetEdge]
-
- """
- A list of nodes.
- """
- nodes: [Snippet]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SnippetEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Snippet
-}
-
-"""
-Identifier of Snippet.
-"""
-scalar SnippetID
-
-type SnippetPermissions {
- """
- Indicates the user can perform `admin_snippet` on this resource
- """
- adminSnippet: Boolean!
-
- """
- Indicates the user can perform `award_emoji` on this resource
- """
- awardEmoji: Boolean!
-
- """
- Indicates the user can perform `create_note` on this resource
- """
- createNote: Boolean!
-
- """
- Indicates the user can perform `read_snippet` on this resource
- """
- readSnippet: Boolean!
-
- """
- Indicates the user can perform `report_snippet` on this resource
- """
- reportSnippet: Boolean!
-
- """
- Indicates the user can perform `update_snippet` on this resource
- """
- updateSnippet: Boolean!
-}
-
-"""
-Represents the Geo sync and verification state of a snippet repository
-"""
-type SnippetRepositoryRegistry {
- """
- Timestamp when the SnippetRepositoryRegistry was created
- """
- createdAt: Time
-
- """
- ID of the SnippetRepositoryRegistry
- """
- id: ID!
-
- """
- Error message during sync of the SnippetRepositoryRegistry
- """
- lastSyncFailure: String
-
- """
- Timestamp of the most recent successful sync of the SnippetRepositoryRegistry
- """
- lastSyncedAt: Time
-
- """
- Timestamp after which the SnippetRepositoryRegistry should be resynced
- """
- retryAt: Time
-
- """
- Number of consecutive failed sync attempts of the SnippetRepositoryRegistry
- """
- retryCount: Int
-
- """
- ID of the Snippet Repository.
- """
- snippetRepositoryId: ID!
-
- """
- Sync state of the SnippetRepositoryRegistry
- """
- state: RegistryState
-}
-
-"""
-The connection type for SnippetRepositoryRegistry.
-"""
-type SnippetRepositoryRegistryConnection {
- """
- A list of edges.
- """
- edges: [SnippetRepositoryRegistryEdge]
-
- """
- A list of nodes.
- """
- nodes: [SnippetRepositoryRegistry]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SnippetRepositoryRegistryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: SnippetRepositoryRegistry
-}
-
-"""
-Common sort values
-"""
-enum Sort {
- """
- Created at ascending order
- """
- CREATED_ASC
-
- """
- Created at descending order
- """
- CREATED_DESC
-
- """
- Updated at ascending order
- """
- UPDATED_ASC
-
- """
- Updated at descending order
- """
- UPDATED_DESC
-
- """
- Created at ascending order
- """
- created_asc @deprecated(reason: "Use CREATED_ASC. Deprecated in 13.5.")
-
- """
- Created at descending order
- """
- created_desc @deprecated(reason: "Use CREATED_DESC. Deprecated in 13.5.")
-
- """
- Updated at ascending order
- """
- updated_asc @deprecated(reason: "Use UPDATED_ASC. Deprecated in 13.5.")
-
- """
- Updated at descending order
- """
- updated_desc @deprecated(reason: "Use UPDATED_DESC. Deprecated in 13.5.")
-}
-
-type StatusAction {
- """
- Title for the button, for example: Retry this job.
- """
- buttonTitle: String
-
- """
- Icon used in the action button.
- """
- icon: String
-
- """
- Method for the action, for example: :post.
- """
- method: String
-
- """
- Path for the action.
- """
- path: String
-
- """
- Title for the action, for example: Retry.
- """
- title: String
-}
-
-type Submodule implements Entry {
- """
- Flat path of the entry.
- """
- flatPath: String!
-
- """
- ID of the entry.
- """
- id: ID!
-
- """
- Name of the entry.
- """
- name: String!
-
- """
- Path of the entry.
- """
- path: String!
-
- """
- Last commit SHA for the entry.
- """
- sha: String!
-
- """
- Tree URL for the sub-module.
- """
- treeUrl: String
-
- """
- Type of tree entry.
- """
- type: EntryType!
-
- """
- Web URL for the sub-module.
- """
- webUrl: String
-}
-
-"""
-The connection type for Submodule.
-"""
-type SubmoduleConnection {
- """
- A list of edges.
- """
- edges: [SubmoduleEdge]
-
- """
- A list of nodes.
- """
- nodes: [Submodule]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type SubmoduleEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Submodule
-}
-
-"""
-Completion status of tasks
-"""
-type TaskCompletionStatus {
- """
- Number of completed tasks.
- """
- completedCount: Int!
-
- """
- Number of total tasks.
- """
- count: Int!
-}
-
-type TerraformState {
- """
- Timestamp the Terraform state was created.
- """
- createdAt: Time!
-
- """
- ID of the Terraform state.
- """
- id: ID!
-
- """
- The latest version of the Terraform state.
- """
- latestVersion: TerraformStateVersion
-
- """
- Timestamp the Terraform state was locked.
- """
- lockedAt: Time
-
- """
- The user currently holding a lock on the Terraform state.
- """
- lockedByUser: User
-
- """
- Name of the Terraform state.
- """
- name: String!
-
- """
- Timestamp the Terraform state was updated.
- """
- updatedAt: Time!
-}
-
-"""
-The connection type for TerraformState.
-"""
-type TerraformStateConnection {
- """
- Total count of collection.
- """
- count: Int!
-
- """
- A list of edges.
- """
- edges: [TerraformStateEdge]
-
- """
- A list of nodes.
- """
- nodes: [TerraformState]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of TerraformStateDelete
-"""
-input TerraformStateDeleteInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the Terraform state.
- """
- id: TerraformStateID!
-}
-
-"""
-Autogenerated return type of TerraformStateDelete
-"""
-type TerraformStateDeletePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type TerraformStateEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: TerraformState
-}
-
-"""
-Identifier of Terraform::State.
-"""
-scalar TerraformStateID
-
-"""
-Autogenerated input type of TerraformStateLock
-"""
-input TerraformStateLockInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the Terraform state.
- """
- id: TerraformStateID!
-}
-
-"""
-Autogenerated return type of TerraformStateLock
-"""
-type TerraformStateLockPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of TerraformStateUnlock
-"""
-input TerraformStateUnlockInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Global ID of the Terraform state.
- """
- id: TerraformStateID!
-}
-
-"""
-Autogenerated return type of TerraformStateUnlock
-"""
-type TerraformStateUnlockPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-type TerraformStateVersion {
- """
- Timestamp the version was created.
- """
- createdAt: Time!
-
- """
- The user that created this version.
- """
- createdByUser: User
-
- """
- URL for downloading the version's JSON file.
- """
- downloadPath: String
-
- """
- ID of the Terraform state version.
- """
- id: ID!
-
- """
- The job that created this version.
- """
- job: CiJob
-
- """
- Serial number of the version.
- """
- serial: Int
-
- """
- Timestamp the version was updated.
- """
- updatedAt: Time!
-}
-
-"""
-Represents the Geo sync and verification state of a terraform state version
-"""
-type TerraformStateVersionRegistry {
- """
- Timestamp when the TerraformStateVersionRegistry was created
- """
- createdAt: Time
-
- """
- ID of the TerraformStateVersionRegistry
- """
- id: ID!
-
- """
- Error message during sync of the TerraformStateVersionRegistry
- """
- lastSyncFailure: String
-
- """
- Timestamp of the most recent successful sync of the TerraformStateVersionRegistry
- """
- lastSyncedAt: Time
-
- """
- Timestamp after which the TerraformStateVersionRegistry should be resynced
- """
- retryAt: Time
-
- """
- Number of consecutive failed sync attempts of the TerraformStateVersionRegistry
- """
- retryCount: Int
-
- """
- Sync state of the TerraformStateVersionRegistry
- """
- state: RegistryState
-
- """
- ID of the terraform state version.
- """
- terraformStateVersionId: ID!
-}
-
-"""
-The connection type for TerraformStateVersionRegistry.
-"""
-type TerraformStateVersionRegistryConnection {
- """
- A list of edges.
- """
- edges: [TerraformStateVersionRegistryEdge]
-
- """
- A list of nodes.
- """
- nodes: [TerraformStateVersionRegistry]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type TerraformStateVersionRegistryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: TerraformStateVersionRegistry
-}
-
-"""
-Represents a requirement test report
-"""
-type TestReport {
- """
- Author of the test report.
- """
- author: User
-
- """
- Timestamp of when the test report was created.
- """
- createdAt: Time!
-
- """
- ID of the test report.
- """
- id: ID!
-
- """
- State of the test report.
- """
- state: TestReportState!
-}
-
-"""
-The connection type for TestReport.
-"""
-type TestReportConnection {
- """
- A list of edges.
- """
- edges: [TestReportEdge]
-
- """
- A list of nodes.
- """
- nodes: [TestReport]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type TestReportEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: TestReport
-}
-
-"""
-State of a test report
-"""
-enum TestReportState {
- FAILED
- PASSED
-}
-
-"""
-Time represented in ISO 8601
-"""
-scalar Time
-
-"""
-Represents the time report stats for timeboxes
-"""
-type TimeReportStats {
- """
- Completed issues metrics.
- """
- complete: TimeboxMetrics
-
- """
- Incomplete issues metrics.
- """
- incomplete: TimeboxMetrics
-
- """
- Total issues metrics.
- """
- total: TimeboxMetrics
-}
-
-"""
-Represents measured stats metrics for timeboxes
-"""
-type TimeboxMetrics {
- """
- The count metric.
- """
- count: Int!
-
- """
- The weight metric.
- """
- weight: Int!
-}
-
-"""
-Represents a historically accurate report about the timebox
-"""
-type TimeboxReport {
- """
- Daily scope and completed totals for burnup charts.
- """
- burnupTimeSeries: [BurnupChartDailyTotals!]
-
- """
- Represents the time report stats for the timebox.
- """
- stats: TimeReportStats
-}
-
-interface TimeboxReportInterface {
- """
- Historically accurate report about the timebox.
- """
- report: TimeboxReport
-}
-
-"""
-A time-frame defined as a closed inclusive range of two dates
-"""
-input Timeframe {
- """
- The end of the range.
- """
- end: Date!
-
- """
- The start of the range.
- """
- start: Date!
-}
-
-type Timelog {
- """
- The issue that logged time was added to.
- """
- issue: Issue
-
- """
- The note where the quick action to add the logged time was executed.
- """
- note: Note
-
- """
- Timestamp of when the time tracked was spent at.
- """
- spentAt: Time
-
- """
- The time spent displayed in seconds.
- """
- timeSpent: Int!
-
- """
- The user that logged the time.
- """
- user: User!
-}
-
-"""
-The connection type for Timelog.
-"""
-type TimelogConnection {
- """
- A list of edges.
- """
- edges: [TimelogEdge]
-
- """
- A list of nodes.
- """
- nodes: [Timelog]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type TimelogEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Timelog
-}
-
-"""
-Representing a to-do entry
-"""
-type Todo {
- """
- Action of the to-do item.
- """
- action: TodoActionEnum!
-
- """
- The author of this to-do item.
- """
- author: User!
-
- """
- Body of the to-do item.
- """
- body: String!
-
- """
- Timestamp this to-do item was created.
- """
- createdAt: Time!
-
- """
- Group this to-do item is associated with.
- """
- group: Group
-
- """
- ID of the to-do item.
- """
- id: ID!
-
- """
- The project this to-do item is associated with.
- """
- project: Project
-
- """
- State of the to-do item.
- """
- state: TodoStateEnum!
-
- """
- Target type of the to-do item.
- """
- targetType: TodoTargetEnum!
-}
-
-enum TodoActionEnum {
- approval_required
- assigned
- build_failed
- directly_addressed
- marked
- mentioned
- unmergeable
-}
-
-"""
-The connection type for Todo.
-"""
-type TodoConnection {
- """
- A list of edges.
- """
- edges: [TodoEdge]
-
- """
- A list of nodes.
- """
- nodes: [Todo]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of TodoCreate
-"""
-input TodoCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the to-do item's parent. Issues, merge requests, designs and epics are supported.
- """
- targetId: TodoableID!
-}
-
-"""
-Autogenerated return type of TodoCreate
-"""
-type TodoCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The to-do item created.
- """
- todo: Todo
-}
-
-"""
-An edge in a connection.
-"""
-type TodoEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Todo
-}
-
-"""
-Identifier of Todo.
-"""
-scalar TodoID
-
-"""
-Autogenerated input type of TodoMarkDone
-"""
-input TodoMarkDoneInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the to-do item to mark as done.
- """
- id: TodoID!
-}
-
-"""
-Autogenerated return type of TodoMarkDone
-"""
-type TodoMarkDonePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The requested to-do item.
- """
- todo: Todo!
-}
-
-"""
-Autogenerated input type of TodoRestore
-"""
-input TodoRestoreInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the to-do item to restore.
- """
- id: TodoID!
-}
-
-"""
-Autogenerated input type of TodoRestoreMany
-"""
-input TodoRestoreManyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global IDs of the to-do items to restore (a maximum of 50 is supported at once).
- """
- ids: [TodoID!]!
-}
-
-"""
-Autogenerated return type of TodoRestoreMany
-"""
-type TodoRestoreManyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Updated to-do items.
- """
- todos: [Todo!]!
-
- """
- The IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.
- """
- updatedIds: [TodoID!]! @deprecated(reason: "Use to-do items. Deprecated in 13.2.")
-}
-
-"""
-Autogenerated return type of TodoRestore
-"""
-type TodoRestorePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The requested to-do item.
- """
- todo: Todo!
-}
-
-enum TodoStateEnum {
- done
- pending
-}
-
-enum TodoTargetEnum {
- """
- An Alert
- """
- ALERT
-
- """
- A Commit
- """
- COMMIT
-
- """
- A Design
- """
- DESIGN
-
- """
- An Epic
- """
- EPIC
-
- """
- An Issue
- """
- ISSUE
-
- """
- A MergeRequest
- """
- MERGEREQUEST
-}
-
-"""
-Identifier of Todoable.
-"""
-scalar TodoableID
-
-"""
-Autogenerated input type of TodosMarkAllDone
-"""
-input TodosMarkAllDoneInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-}
-
-"""
-Autogenerated return type of TodosMarkAllDone
-"""
-type TodosMarkAllDonePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Updated to-do items.
- """
- todos: [Todo!]!
-
- """
- IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.
- """
- updatedIds: [TodoID!]! @deprecated(reason: "Use to-do items. Deprecated in 13.2.")
-}
-
-"""
-Autogenerated input type of ToggleAwardEmoji
-"""
-input ToggleAwardEmojiInput {
- """
- The global ID of the awardable resource.
- """
- awardableId: AwardableID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The emoji name.
- """
- name: String!
-}
-
-"""
-Autogenerated return type of ToggleAwardEmoji
-"""
-type ToggleAwardEmojiPayload {
- """
- The award emoji after mutation.
- """
- awardEmoji: AwardEmoji
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Indicates the status of the emoji. True if the toggle awarded the emoji, and false if the toggle removed the emoji.
- """
- toggledOn: Boolean!
-}
-
-type Tree {
- """
- Blobs of the tree.
- """
- blobs(
- """
- 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
- ): BlobConnection!
-
- """
- Last commit for the tree.
- """
- lastCommit: Commit
-
- """
- Sub-modules of the tree.
- """
- submodules(
- """
- 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
- ): SubmoduleConnection!
-
- """
- Trees of the tree.
- """
- trees(
- """
- 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
- ): TreeEntryConnection!
-}
-
-"""
-Represents a directory
-"""
-type TreeEntry implements Entry {
- """
- Flat path of the entry.
- """
- flatPath: String!
-
- """
- ID of the entry.
- """
- id: ID!
-
- """
- Name of the entry.
- """
- name: String!
-
- """
- Path of the entry.
- """
- path: String!
-
- """
- Last commit SHA for the entry.
- """
- sha: String!
-
- """
- Type of tree entry.
- """
- type: EntryType!
-
- """
- Web path for the tree entry (directory).
- """
- webPath: String
-
- """
- Web URL for the tree entry (directory).
- """
- webUrl: String
-}
-
-"""
-The connection type for TreeEntry.
-"""
-type TreeEntryConnection {
- """
- A list of edges.
- """
- edges: [TreeEntryEdge]
-
- """
- A list of nodes.
- """
- nodes: [TreeEntry]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type TreeEntryEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: TreeEntry
-}
-
-enum TypeEnum {
- personal
- project
-}
-
-"""
-A regexp containing patterns sourced from user input
-"""
-scalar UntrustedRegexp
-
-"""
-Autogenerated input type of UpdateAlertStatus
-"""
-input UpdateAlertStatusInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The IID of the alert to mutate.
- """
- iid: String!
-
- """
- The project the alert to mutate is in.
- """
- projectPath: ID!
-
- """
- The status to set the alert.
- """
- status: AlertManagementStatus!
-}
-
-"""
-Autogenerated return type of UpdateAlertStatus
-"""
-type UpdateAlertStatusPayload {
- """
- The alert after mutation.
- """
- alert: AlertManagementAlert
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue created after mutation.
- """
- issue: Issue
-
- """
- The to-do item after mutation.
- """
- todo: Todo
-}
-
-"""
-Autogenerated input type of UpdateBoardEpicUserPreferences
-"""
-input UpdateBoardEpicUserPreferencesInput {
- """
- The board global ID.
- """
- boardId: BoardID!
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Whether the epic should be collapsed in the board.
- """
- collapsed: Boolean!
-
- """
- ID of an epic to set preferences for.
- """
- epicId: EpicID!
-}
-
-"""
-Autogenerated return type of UpdateBoardEpicUserPreferences
-"""
-type UpdateBoardEpicUserPreferencesPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- User preferences for the epic in the board after mutation.
- """
- epicUserPreferences: BoardEpicUserPreferences
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of UpdateBoard
-"""
-input UpdateBoardInput {
- """
- The ID of user to be assigned to the board.
- """
- assigneeId: UserID
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Whether or not backlog list is hidden.
- """
- hideBacklogList: Boolean
-
- """
- Whether or not closed list is hidden.
- """
- hideClosedList: Boolean
-
- """
- The board global ID.
- """
- id: BoardID!
-
- """
- The ID of iteration to be assigned to the board.
- """
- iterationId: IterationID
-
- """
- The IDs of labels to be added to the board.
- """
- labelIds: [LabelID!]
-
- """
- Labels of the issue.
- """
- labels: [String!]
-
- """
- The ID of milestone to be assigned to the board.
- """
- milestoneId: MilestoneID
-
- """
- The board name.
- """
- name: String
-
- """
- The weight value to be assigned to the board.
- """
- weight: Int
-}
-
-"""
-Autogenerated input type of UpdateBoardList
-"""
-input UpdateBoardListInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates if list is collapsed for this user.
- """
- collapsed: Boolean
-
- """
- Global ID of the list.
- """
- listId: ListID!
-
- """
- Position of list within the board.
- """
- position: Int
-}
-
-"""
-Autogenerated return type of UpdateBoardList
-"""
-type UpdateBoardListPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Mutated list.
- """
- list: BoardList
-}
-
-"""
-Autogenerated return type of UpdateBoard
-"""
-type UpdateBoardPayload {
- """
- The board after mutation.
- """
- board: Board
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of UpdateComplianceFramework
-"""
-input UpdateComplianceFrameworkInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the compliance framework to update.
- """
- id: ComplianceManagementFrameworkID!
-
- """
- Parameters to update the compliance framework with.
- """
- params: ComplianceFrameworkInput!
-}
-
-"""
-Autogenerated return type of UpdateComplianceFramework
-"""
-type UpdateComplianceFrameworkPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The compliance framework after mutation.
- """
- complianceFramework: ComplianceFramework
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of UpdateContainerExpirationPolicy
-"""
-input UpdateContainerExpirationPolicyInput {
- """
- This container expiration policy schedule.
- """
- cadence: ContainerExpirationPolicyCadenceEnum
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates whether this container expiration policy is enabled.
- """
- enabled: Boolean
-
- """
- Number of tags to retain.
- """
- keepN: ContainerExpirationPolicyKeepEnum
-
- """
- Tags with names matching this regex pattern will expire.
- """
- nameRegex: UntrustedRegexp
-
- """
- Tags with names matching this regex pattern will be preserved.
- """
- nameRegexKeep: UntrustedRegexp
-
- """
- Tags older that this will expire.
- """
- olderThan: ContainerExpirationPolicyOlderThanEnum
-
- """
- The project path where the container expiration policy is located.
- """
- projectPath: ID!
-}
-
-"""
-Autogenerated return type of UpdateContainerExpirationPolicy
-"""
-type UpdateContainerExpirationPolicyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The container expiration policy after mutation.
- """
- containerExpirationPolicy: ContainerExpirationPolicy
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-input UpdateDiffImagePositionInput {
- """
- Total height of the image.
- """
- height: Int
-
- """
- Total width of the image.
- """
- width: Int
-
- """
- X position of the note.
- """
- x: Int
-
- """
- Y position of the note.
- """
- y: Int
-}
-
-"""
-Autogenerated input type of UpdateEpic
-"""
-input UpdateEpicInput {
- """
- The IDs of labels to be added to the epic.
- """
- addLabelIds: [ID!]
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates if the epic is confidential.
- """
- confidential: Boolean
-
- """
- The description of the epic.
- """
- description: String
-
- """
- The end date of the epic.
- """
- dueDateFixed: String
-
- """
- Indicates end date should be sourced from due_date_fixed field not the issue milestones.
- """
- dueDateIsFixed: Boolean
-
- """
- The group the epic to mutate is in.
- """
- groupPath: ID!
-
- """
- The IID of the epic to mutate.
- """
- iid: ID!
-
- """
- The IDs of labels to be removed from the epic.
- """
- removeLabelIds: [ID!]
-
- """
- The start date of the epic.
- """
- startDateFixed: String
-
- """
- Indicates start date should be sourced from start_date_fixed field not the issue milestones.
- """
- startDateIsFixed: Boolean
-
- """
- State event for the epic.
- """
- stateEvent: EpicStateEvent
-
- """
- The title of the epic.
- """
- title: String
-}
-
-"""
-Autogenerated return type of UpdateEpic
-"""
-type UpdateEpicPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The epic after mutation.
- """
- epic: Epic
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-Autogenerated input type of UpdateImageDiffNote
-"""
-input UpdateImageDiffNoteInput {
- """
- Content of the note.
- """
- body: String
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the note to update.
- """
- id: NoteID!
-
- """
- The position of this note on a diff.
- """
- position: UpdateDiffImagePositionInput
-}
-
-"""
-Autogenerated return type of UpdateImageDiffNote
-"""
-type UpdateImageDiffNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of UpdateIssue
-"""
-input UpdateIssueInput {
- """
- The IDs of labels to be added to the issue.
- """
- addLabelIds: [ID!]
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Indicates the issue is confidential.
- """
- confidential: Boolean
-
- """
- Description of the issue.
- """
- description: String
-
- """
- Due date of the issue.
- """
- dueDate: ISO8601Date
-
- """
- The ID of the parent epic. NULL when removing the association.
- """
- epicId: EpicID
-
- """
- The desired health status.
- """
- healthStatus: HealthStatus
-
- """
- The IID of the issue to mutate.
- """
- iid: String!
-
- """
- Indicates discussion is locked on the issue.
- """
- locked: Boolean
-
- """
- The ID of the milestone to assign to the issue. On update milestone will be removed if set to null.
- """
- milestoneId: ID
-
- """
- The project the issue to mutate is in.
- """
- projectPath: ID!
-
- """
- The IDs of labels to be removed from the issue.
- """
- removeLabelIds: [ID!]
-
- """
- Close or reopen an issue.
- """
- stateEvent: IssueStateEvent
-
- """
- Title of the issue.
- """
- title: String
-
- """
- The weight of the issue.
- """
- weight: Int
-}
-
-"""
-Autogenerated return type of UpdateIssue
-"""
-type UpdateIssuePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The issue after mutation.
- """
- issue: Issue
-}
-
-"""
-Autogenerated input type of UpdateIteration
-"""
-input UpdateIterationInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description of the iteration.
- """
- description: String
-
- """
- End date of the iteration.
- """
- dueDate: String
-
- """
- Group of the iteration.
- """
- groupPath: ID!
-
- """
- Global ID of the iteration.
- """
- id: ID!
-
- """
- Start date of the iteration.
- """
- startDate: String
-
- """
- Title of the iteration.
- """
- title: String
-}
-
-"""
-Autogenerated return type of UpdateIteration
-"""
-type UpdateIterationPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Updated iteration.
- """
- iteration: Iteration
-}
-
-"""
-Autogenerated input type of UpdateNamespacePackageSettings
-"""
-input UpdateNamespacePackageSettingsInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- When maven_duplicates_allowed is false, you can publish duplicate packages
- with names that match this regex. Otherwise, this setting has no effect.
- """
- mavenDuplicateExceptionRegex: UntrustedRegexp
-
- """
- Indicates whether duplicate Maven packages are allowed for this namespace.
- """
- mavenDuplicatesAllowed: Boolean
-
- """
- The namespace path where the namespace package setting is located.
- """
- namespacePath: ID!
-}
-
-"""
-Autogenerated return type of UpdateNamespacePackageSettings
-"""
-type UpdateNamespacePackageSettingsPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The namespace package setting after mutation.
- """
- packageSettings: PackageSettings
-}
-
-"""
-Autogenerated input type of UpdateNote
-"""
-input UpdateNoteInput {
- """
- Content of the note.
- """
- body: String
-
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The confidentiality flag of a note. Default is false.
- """
- confidential: Boolean
-
- """
- The global ID of the note to update.
- """
- id: NoteID!
-}
-
-"""
-Autogenerated return type of UpdateNote
-"""
-type UpdateNotePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The note after mutation.
- """
- note: Note
-}
-
-"""
-Autogenerated input type of UpdateRequirement
-"""
-input UpdateRequirementInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Description of the requirement.
- """
- description: String
-
- """
- The IID of the requirement to update.
- """
- iid: String!
-
- """
- Creates a test report for the requirement with the given state.
- """
- lastTestReportState: TestReportState
-
- """
- Full project path the requirement is associated with.
- """
- projectPath: ID!
-
- """
- State of the requirement.
- """
- state: RequirementState
-
- """
- Title of the requirement.
- """
- title: String
-}
-
-"""
-Autogenerated return type of UpdateRequirement
-"""
-type UpdateRequirementPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- Requirement after mutation.
- """
- requirement: Requirement
-}
-
-"""
-Autogenerated input type of UpdateSnippet
-"""
-input UpdateSnippetInput {
- """
- Actions to perform over the snippet repository and blobs.
- """
- 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
-
- """
- Description of the snippet.
- """
- description: String
-
- """
- The global ID of the snippet to update.
- """
- 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
-
- """
- The visibility level of the snippet.
- """
- visibilityLevel: VisibilityLevelsEnum
-}
-
-"""
-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
-
- """
- Errors encountered during execution of the mutation.
- """
- 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 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
-
-type User {
- """
- Merge Requests assigned to the user.
- """
- assignedMergeRequests(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of the author.
- """
- authorUsername: 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
-
- """
- Array of IIDs of merge requests, for example `[1, 2]`.
- """
- iids: [String!]
-
- """
- Array of label names. All resolved merge requests will have all of these labels.
- """
- labels: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Merge requests merged after this date.
- """
- mergedAfter: Time
-
- """
- Merge requests merged before this date.
- """
- mergedBefore: Time
-
- """
- Title of the milestone.
- """
- milestoneTitle: String
-
- """
- The global ID of the project the authored merge requests should be in. Incompatible with projectPath.
- """
- projectId: ProjectID
-
- """
- The full-path of the project the authored merge requests should be in. Incompatible with projectId.
- """
- projectPath: String
-
- """
- Username of the reviewer.
- """
- reviewerUsername: String
-
- """
- Sort merge requests by this criteria.
- """
- sort: MergeRequestSort = created_desc
-
- """
- Array of source branch names. All resolved merge requests will have one of these branches as their source.
- """
- sourceBranches: [String!]
-
- """
- A merge request state. If provided, all resolved merge requests will have this state.
- """
- state: MergeRequestState
-
- """
- Array of target branch names. All resolved merge requests will have one of these branches as their target.
- """
- targetBranches: [String!]
- ): MergeRequestConnection
-
- """
- Merge Requests authored by the user.
- """
- authoredMergeRequests(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of the assignee.
- """
- assigneeUsername: 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
-
- """
- Array of IIDs of merge requests, for example `[1, 2]`.
- """
- iids: [String!]
-
- """
- Array of label names. All resolved merge requests will have all of these labels.
- """
- labels: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Merge requests merged after this date.
- """
- mergedAfter: Time
-
- """
- Merge requests merged before this date.
- """
- mergedBefore: Time
-
- """
- Title of the milestone.
- """
- milestoneTitle: String
-
- """
- The global ID of the project the authored merge requests should be in. Incompatible with projectPath.
- """
- projectId: ProjectID
-
- """
- The full-path of the project the authored merge requests should be in. Incompatible with projectId.
- """
- projectPath: String
-
- """
- Username of the reviewer.
- """
- reviewerUsername: String
-
- """
- Sort merge requests by this criteria.
- """
- sort: MergeRequestSort = created_desc
-
- """
- Array of source branch names. All resolved merge requests will have one of these branches as their source.
- """
- sourceBranches: [String!]
-
- """
- A merge request state. If provided, all resolved merge requests will have this state.
- """
- state: MergeRequestState
-
- """
- Array of target branch names. All resolved merge requests will have one of these branches as their target.
- """
- targetBranches: [String!]
- ): MergeRequestConnection
-
- """
- URL of the user's avatar.
- """
- avatarUrl: String
-
- """
- Indicates if the user is a bot.
- """
- bot: Boolean!
-
- """
- User email. Deprecated in 13.7: Use public_email.
- """
- email: String @deprecated(reason: "Use public_email. Deprecated in 13.7.")
-
- """
- Group count for the user. Available only when feature flag `user_group_counts` is enabled.
- """
- groupCount: Int
-
- """
- Group memberships of the user.
- """
- groupMemberships(
- """
- 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
- ): GroupMemberConnection
-
- """
- ID of the user.
- """
- id: ID!
-
- """
- The location of the user.
- """
- location: String
-
- """
- Human-readable name of the user.
- """
- name: String!
-
- """
- Project memberships of the user.
- """
- projectMemberships(
- """
- 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
- ): ProjectMemberConnection
-
- """
- User's public email.
- """
- publicEmail: String
-
- """
- Merge Requests assigned to the user for review.
- """
- reviewRequestedMergeRequests(
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- Username of the assignee.
- """
- assigneeUsername: String
-
- """
- Username of the author.
- """
- authorUsername: 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
-
- """
- Array of IIDs of merge requests, for example `[1, 2]`.
- """
- iids: [String!]
-
- """
- Array of label names. All resolved merge requests will have all of these labels.
- """
- labels: [String!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- Merge requests merged after this date.
- """
- mergedAfter: Time
-
- """
- Merge requests merged before this date.
- """
- mergedBefore: Time
-
- """
- Title of the milestone.
- """
- milestoneTitle: String
-
- """
- The global ID of the project the authored merge requests should be in. Incompatible with projectPath.
- """
- projectId: ProjectID
-
- """
- The full-path of the project the authored merge requests should be in. Incompatible with projectId.
- """
- projectPath: String
-
- """
- Sort merge requests by this criteria.
- """
- sort: MergeRequestSort = created_desc
-
- """
- Array of source branch names. All resolved merge requests will have one of these branches as their source.
- """
- sourceBranches: [String!]
-
- """
- A merge request state. If provided, all resolved merge requests will have this state.
- """
- state: MergeRequestState
-
- """
- Array of target branch names. All resolved merge requests will have one of these branches as their target.
- """
- targetBranches: [String!]
- ): MergeRequestConnection
-
- """
- Snippets authored by the user.
- """
- snippets(
- """
- 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
-
- """
- Array of global snippet ids, e.g., "gid://gitlab/ProjectSnippet/1".
- """
- ids: [SnippetID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The type of snippet.
- """
- type: TypeEnum
-
- """
- The visibility of the snippet.
- """
- visibility: VisibilityScopesEnum
- ): SnippetConnection
-
- """
- Projects starred by the user.
- """
- starredProjects(
- """
- 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
-
- """
- Search query.
- """
- search: String
- ): ProjectConnection
-
- """
- State of the user.
- """
- state: UserState!
-
- """
- User status.
- """
- status: UserStatus
-
- """
- To-do items of the user.
- """
- todos(
- """
- The action to be filtered.
- """
- action: [TodoActionEnum!]
-
- """
- Returns the elements in the list that come after the specified cursor.
- """
- after: String
-
- """
- The ID of an author.
- """
- authorId: [ID!]
-
- """
- Returns the elements in the list that come before the specified cursor.
- """
- before: String
-
- """
- Returns the first _n_ elements from the list.
- """
- first: Int
-
- """
- The ID of a group.
- """
- groupId: [ID!]
-
- """
- Returns the last _n_ elements from the list.
- """
- last: Int
-
- """
- The ID of a project.
- """
- projectId: [ID!]
-
- """
- The state of the todo.
- """
- state: [TodoStateEnum!]
-
- """
- The type of the todo.
- """
- type: [TodoTargetEnum!]
- ): TodoConnection!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: UserPermissions!
-
- """
- Username of the user. Unique within this instance of GitLab.
- """
- username: String!
-
- """
- Web path of the user.
- """
- webPath: String!
-
- """
- Web URL of the user.
- """
- webUrl: String!
-}
-
-"""
-The connection type for User.
-"""
-type UserConnection {
- """
- A list of edges.
- """
- edges: [UserEdge]
-
- """
- A list of nodes.
- """
- nodes: [User]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type UserEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: User
-}
-
-"""
-Identifier of User.
-"""
-scalar UserID
-
-type UserPermissions {
- """
- Indicates the user can perform `create_snippet` on this resource
- """
- createSnippet: Boolean!
-}
-
-"""
-Possible states of a user
-"""
-enum UserState {
- """
- The user is active and is able to use the system
- """
- active
-
- """
- The user has been blocked and is prevented from using the system
- """
- blocked
-
- """
- The user is no longer active and is unable to use the system
- """
- deactivated
-}
-
-type UserStatus {
- """
- User availability status.
- """
- availability: AvailabilityEnum!
-
- """
- String representation of emoji.
- """
- emoji: String
-
- """
- User status message.
- """
- message: String
-
- """
- HTML of the user status message
- """
- messageHtml: String
-}
-
-enum VisibilityLevelsEnum {
- internal
- private
- public
-}
-
-enum VisibilityScopesEnum {
- internal
- private
- public
-}
-
-"""
-Represents the count of vulnerabilities by severity on a particular day. This data is retained for 365 days
-"""
-type VulnerabilitiesCountByDay {
- """
- Total number of vulnerabilities on a particular day with critical severity
- """
- critical: Int!
-
- """
- Date for the count.
- """
- date: ISO8601Date!
-
- """
- Total number of vulnerabilities on a particular day with high severity
- """
- high: Int!
-
- """
- Total number of vulnerabilities on a particular day with info severity
- """
- info: Int!
-
- """
- Total number of vulnerabilities on a particular day with low severity
- """
- low: Int!
-
- """
- Total number of vulnerabilities on a particular day with medium severity
- """
- medium: Int!
-
- """
- Total number of vulnerabilities on a particular day.
- """
- total: Int!
-
- """
- Total number of vulnerabilities on a particular day with unknown severity
- """
- unknown: Int!
-}
-
-"""
-Represents the number of vulnerabilities for a particular severity on a particular day. This data is retained for 365 days
-"""
-type VulnerabilitiesCountByDayAndSeverity {
- """
- Number of vulnerabilities.
- """
- count: Int
-
- """
- Date for the count.
- """
- day: ISO8601Date
-
- """
- Severity of the counted vulnerabilities.
- """
- severity: VulnerabilitySeverity
-}
-
-"""
-The connection type for VulnerabilitiesCountByDayAndSeverity.
-"""
-type VulnerabilitiesCountByDayAndSeverityConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilitiesCountByDayAndSeverityEdge]
-
- """
- A list of nodes.
- """
- nodes: [VulnerabilitiesCountByDayAndSeverity]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilitiesCountByDayAndSeverityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: VulnerabilitiesCountByDayAndSeverity
-}
-
-"""
-The connection type for VulnerabilitiesCountByDay.
-"""
-type VulnerabilitiesCountByDayConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilitiesCountByDayEdge]
-
- """
- A list of nodes.
- """
- nodes: [VulnerabilitiesCountByDay]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilitiesCountByDayEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: VulnerabilitiesCountByDay
-}
-
-"""
-Identifier of Vulnerabilities::ExternalIssueLink.
-"""
-scalar VulnerabilitiesExternalIssueLinkID
-
-"""
-Represents a vulnerability
-"""
-type Vulnerability implements Noteable {
- """
- Timestamp of when the vulnerability state was changed to confirmed.
- """
- confirmedAt: Time
-
- """
- The user that confirmed the vulnerability.
- """
- confirmedBy: User
-
- """
- Description of the vulnerability.
- """
- description: String
-
- """
- Details of the vulnerability.
- """
- details: [VulnerabilityDetail!]!
-
- """
- Timestamp of when the vulnerability was first detected.
- """
- detectedAt: Time!
-
- """
- All discussions on this noteable.
- """
- discussions(
- """
- 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
- ): DiscussionConnection!
-
- """
- Timestamp of when the vulnerability state was changed to dismissed.
- """
- dismissedAt: Time
-
- """
- The user that dismissed the vulnerability.
- """
- dismissedBy: User
-
- """
- List of external issue links related to the vulnerability.
- """
- externalIssueLinks(
- """
- 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
- ): VulnerabilityExternalIssueLinkConnection!
-
- """
- Indicates whether there is a solution available for this vulnerability.
- """
- hasSolutions: Boolean
-
- """
- GraphQL ID of the vulnerability.
- """
- id: ID!
-
- """
- Identifiers of the vulnerability.
- """
- identifiers: [VulnerabilityIdentifier!]!
-
- """
- List of issue links related to the vulnerability.
- """
- issueLinks(
- """
- 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
-
- """
- Filter issue links by link type.
- """
- linkType: VulnerabilityIssueLinkType
- ): VulnerabilityIssueLinkConnection!
-
- """
- Location metadata for the vulnerability. Its fields depend on the type of security scan that found the vulnerability.
- """
- location: VulnerabilityLocation
-
- """
- Merge request that fixes the vulnerability.
- """
- mergeRequest: MergeRequest
-
- """
- All notes on this noteable.
- """
- notes(
- """
- 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
- ): NoteConnection!
-
- """
- Primary identifier of the vulnerability.
- """
- primaryIdentifier: VulnerabilityIdentifier
-
- """
- The project on which the vulnerability was found.
- """
- project: Project
-
- """
- Type of the security report that found the vulnerability (SAST,
- DEPENDENCY_SCANNING, CONTAINER_SCANNING, DAST, SECRET_DETECTION,
- COVERAGE_FUZZING, API_FUZZING)
- """
- reportType: VulnerabilityReportType
-
- """
- Timestamp of when the vulnerability state was changed to resolved.
- """
- resolvedAt: Time
-
- """
- The user that resolved the vulnerability.
- """
- resolvedBy: User
-
- """
- Indicates whether the vulnerability is fixed on the default branch or not.
- """
- resolvedOnDefaultBranch: Boolean!
-
- """
- Scanner metadata for the vulnerability.
- """
- scanner: VulnerabilityScanner
-
- """
- Severity of the vulnerability (INFO, UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL)
- """
- severity: VulnerabilitySeverity
-
- """
- State of the vulnerability (DETECTED, CONFIRMED, RESOLVED, DISMISSED)
- """
- state: VulnerabilityState
-
- """
- Title of the vulnerability.
- """
- title: String
-
- """
- Number of user notes attached to the vulnerability.
- """
- userNotesCount: Int!
-
- """
- Permissions for the current user on the resource
- """
- userPermissions: VulnerabilityPermissions!
-
- """
- URL to the vulnerability's details page.
- """
- vulnerabilityPath: String
-}
-
-"""
-Autogenerated input type of VulnerabilityConfirm
-"""
-input VulnerabilityConfirmInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the vulnerability to be confirmed.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of VulnerabilityConfirm
-"""
-type VulnerabilityConfirmPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after state change.
- """
- vulnerability: Vulnerability
-}
-
-"""
-The connection type for Vulnerability.
-"""
-type VulnerabilityConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilityEdge]
-
- """
- A list of nodes.
- """
- nodes: [Vulnerability]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-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 {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Comment why vulnerability should be dismissed.
- """
- comment: String
-
- """
- Reason why vulnerability should be dismissed.
- """
- dismissalReason: VulnerabilityDismissalReason
-
- """
- ID of the vulnerability to be dismissed.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of VulnerabilityDismiss
-"""
-type VulnerabilityDismissPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after dismissal.
- """
- vulnerability: Vulnerability
-}
-
-"""
-The dismissal reason of the Vulnerability
-"""
-enum VulnerabilityDismissalReason {
- """
- The likelihood of the Vulnerability occurring and its impact are deemed acceptable
- """
- ACCEPTABLE_RISK
-
- """
- The Vulnerability was incorrectly identified as being present
- """
- FALSE_POSITIVE
-
- """
- There is a mitigating control that eliminates the Vulnerability or makes its risk acceptable
- """
- MITIGATING_CONTROL
-
- """
- Other reasons for dismissal
- """
- NOT_APPLICABLE
-
- """
- The Vulnerability is used in tests and does not pose an actual risk
- """
- USED_IN_TESTS
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilityEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: Vulnerability
-}
-
-"""
-Represents an external issue link of a vulnerability
-"""
-type VulnerabilityExternalIssueLink {
- """
- The external issue attached to the issue link.
- """
- externalIssue: ExternalIssue
-
- """
- GraphQL ID of the external issue link.
- """
- id: VulnerabilitiesExternalIssueLinkID!
-
- """
- Type of the external issue link.
- """
- linkType: VulnerabilityExternalIssueLinkType!
-}
-
-"""
-The connection type for VulnerabilityExternalIssueLink.
-"""
-type VulnerabilityExternalIssueLinkConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilityExternalIssueLinkEdge]
-
- """
- A list of nodes.
- """
- nodes: [VulnerabilityExternalIssueLink]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-Autogenerated input type of VulnerabilityExternalIssueLinkCreate
-"""
-input VulnerabilityExternalIssueLinkCreateInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- External tracker type of the external issue link.
- """
- externalTracker: VulnerabilityExternalIssueLinkExternalTracker!
-
- """
- ID of the vulnerability.
- """
- id: VulnerabilityID!
-
- """
- Type of the external issue link.
- """
- linkType: VulnerabilityExternalIssueLinkType!
-}
-
-"""
-Autogenerated return type of VulnerabilityExternalIssueLinkCreate
-"""
-type VulnerabilityExternalIssueLinkCreatePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The created external issue link.
- """
- externalIssueLink: VulnerabilityExternalIssueLink
-}
-
-"""
-Autogenerated input type of VulnerabilityExternalIssueLinkDestroy
-"""
-input VulnerabilityExternalIssueLinkDestroyInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- The global ID of the vulnerability external issue link.
- """
- id: VulnerabilitiesExternalIssueLinkID!
-}
-
-"""
-Autogenerated return type of VulnerabilityExternalIssueLinkDestroy
-"""
-type VulnerabilityExternalIssueLinkDestroyPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilityExternalIssueLinkEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: VulnerabilityExternalIssueLink
-}
-
-"""
-The external tracker of the external issue link related to a vulnerability
-"""
-enum VulnerabilityExternalIssueLinkExternalTracker {
- """
- Jira external tracker
- """
- JIRA
-}
-
-"""
-The type of the external issue link related to a vulnerability
-"""
-enum VulnerabilityExternalIssueLinkType {
- """
- Created link type
- """
- CREATED
-}
-
-"""
-The grade of the vulnerable project
-"""
-enum VulnerabilityGrade {
- A
- B
- C
- D
- F
-}
-
-"""
-Identifier of Vulnerability.
-"""
-scalar VulnerabilityID
-
-"""
-Represents a vulnerability identifier
-"""
-type VulnerabilityIdentifier {
- """
- External ID of the vulnerability identifier.
- """
- externalId: String
-
- """
- External type of the vulnerability identifier.
- """
- externalType: String
-
- """
- Name of the vulnerability identifier.
- """
- name: String
-
- """
- URL of the vulnerability identifier.
- """
- url: String
-}
-
-"""
-Represents an issue link of a vulnerability
-"""
-type VulnerabilityIssueLink {
- """
- GraphQL ID of the vulnerability.
- """
- id: ID!
-
- """
- The issue attached to issue link.
- """
- issue: Issue!
-
- """
- Type of the issue link.
- """
- linkType: VulnerabilityIssueLinkType!
-}
-
-"""
-The connection type for VulnerabilityIssueLink.
-"""
-type VulnerabilityIssueLinkConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilityIssueLinkEdge]
-
- """
- A list of nodes.
- """
- nodes: [VulnerabilityIssueLink]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilityIssueLinkEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: VulnerabilityIssueLink
-}
-
-"""
-The type of the issue link related to a vulnerability
-"""
-enum VulnerabilityIssueLinkType {
- CREATED
- RELATED
-}
-
-"""
-Represents a vulnerability location. The fields with data will depend on the vulnerability report type
-"""
-union VulnerabilityLocation = VulnerabilityLocationContainerScanning | VulnerabilityLocationCoverageFuzzing | VulnerabilityLocationDast | VulnerabilityLocationDependencyScanning | VulnerabilityLocationSast | VulnerabilityLocationSecretDetection
-
-"""
-Represents the location of a vulnerability found by a container security scan
-"""
-type VulnerabilityLocationContainerScanning {
- """
- Dependency containing the vulnerability.
- """
- dependency: VulnerableDependency
-
- """
- Name of the vulnerable container image.
- """
- image: String
-
- """
- Operating system that runs on the vulnerable container image.
- """
- operatingSystem: String
-}
-
-"""
-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
-
- """
- Path to the vulnerable file.
- """
- file: String
-
- """
- Number of the first relevant line in the vulnerable file.
- """
- startLine: String
-
- """
- Class containing the vulnerability.
- """
- vulnerableClass: String
-
- """
- Method containing the vulnerability.
- """
- vulnerableMethod: String
-}
-
-"""
-Represents the location of a vulnerability found by a DAST scan
-"""
-type VulnerabilityLocationDast {
- """
- Domain name of the vulnerable request.
- """
- hostname: String
-
- """
- Query parameter for the URL on which the vulnerability occurred.
- """
- param: String
-
- """
- URL path and query string of the vulnerable request.
- """
- path: String
-
- """
- HTTP method of the vulnerable request.
- """
- requestMethod: String
-}
-
-"""
-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
-
- """
- Path to the vulnerable file.
- """
- file: String
-}
-
-"""
-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
-
- """
- Path to the vulnerable file.
- """
- file: String
-
- """
- Number of the first relevant line in the vulnerable file.
- """
- startLine: String
-
- """
- Class containing the vulnerability.
- """
- vulnerableClass: String
-
- """
- Method containing the vulnerability.
- """
- vulnerableMethod: String
-}
-
-"""
-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
-
- """
- Path to the vulnerable file.
- """
- file: String
-
- """
- Number of the first relevant line in the vulnerable file.
- """
- startLine: String
-
- """
- Class containing the vulnerability.
- """
- vulnerableClass: String
-
- """
- Method containing the vulnerability.
- """
- vulnerableMethod: String
-}
-
-"""
-Check permissions for the current user on a vulnerability
-"""
-type VulnerabilityPermissions {
- """
- Indicates the user can perform `admin_vulnerability` on this resource
- """
- adminVulnerability: Boolean!
-
- """
- Indicates the user can perform `admin_vulnerability_external_issue_link` on this resource
- """
- adminVulnerabilityExternalIssueLink: Boolean!
-
- """
- Indicates the user can perform `admin_vulnerability_issue_link` on this resource
- """
- adminVulnerabilityIssueLink: Boolean!
-
- """
- Indicates the user can perform `create_vulnerability` on this resource
- """
- createVulnerability: Boolean!
-
- """
- Indicates the user can perform `create_vulnerability_export` on this resource
- """
- createVulnerabilityExport: Boolean!
-
- """
- Indicates the user can perform `create_vulnerability_feedback` on this resource
- """
- createVulnerabilityFeedback: Boolean!
-
- """
- Indicates the user can perform `destroy_vulnerability_feedback` on this resource
- """
- destroyVulnerabilityFeedback: Boolean!
-
- """
- Indicates the user can perform `read_vulnerability_feedback` on this resource
- """
- readVulnerabilityFeedback: Boolean!
-
- """
- Indicates the user can perform `update_vulnerability_feedback` on this resource
- """
- updateVulnerabilityFeedback: Boolean!
-}
-
-"""
-The type of the security scan that found the vulnerability
-"""
-enum VulnerabilityReportType {
- API_FUZZING
- CONTAINER_SCANNING
- COVERAGE_FUZZING
- DAST
- DEPENDENCY_SCANNING
- SAST
- SECRET_DETECTION
-}
-
-"""
-Autogenerated input type of VulnerabilityResolve
-"""
-input VulnerabilityResolveInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the vulnerability to be resolved.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of VulnerabilityResolve
-"""
-type VulnerabilityResolvePayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after state change.
- """
- vulnerability: Vulnerability
-}
-
-"""
-Autogenerated input type of VulnerabilityRevertToDetected
-"""
-input VulnerabilityRevertToDetectedInput {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- ID of the vulnerability to be reverted.
- """
- id: VulnerabilityID!
-}
-
-"""
-Autogenerated return type of VulnerabilityRevertToDetected
-"""
-type VulnerabilityRevertToDetectedPayload {
- """
- A unique identifier for the client performing the mutation.
- """
- clientMutationId: String
-
- """
- Errors encountered during execution of the mutation.
- """
- errors: [String!]!
-
- """
- The vulnerability after revert.
- """
- vulnerability: Vulnerability
-}
-
-"""
-Represents a vulnerability scanner
-"""
-type VulnerabilityScanner {
- """
- External ID of the vulnerability scanner.
- """
- externalId: String
-
- """
- Name of the vulnerability scanner.
- """
- name: String
-
- """
- Type of the vulnerability report.
- """
- reportType: VulnerabilityReportType
-
- """
- Vendor of the vulnerability scanner.
- """
- vendor: String
-}
-
-"""
-The connection type for VulnerabilityScanner.
-"""
-type VulnerabilityScannerConnection {
- """
- A list of edges.
- """
- edges: [VulnerabilityScannerEdge]
-
- """
- A list of nodes.
- """
- nodes: [VulnerabilityScanner]
-
- """
- Information to aid in pagination.
- """
- pageInfo: PageInfo!
-}
-
-"""
-An edge in a connection.
-"""
-type VulnerabilityScannerEdge {
- """
- A cursor for use in pagination.
- """
- cursor: String!
-
- """
- The item at the end of the edge.
- """
- node: VulnerabilityScanner
-}
-
-"""
-Represents vulnerability counts by severity
-"""
-type VulnerabilitySeveritiesCount {
- """
- Number of vulnerabilities of CRITICAL severity of the project
- """
- critical: Int
-
- """
- Number of vulnerabilities of HIGH severity of the project
- """
- high: Int
-
- """
- Number of vulnerabilities of INFO severity of the project
- """
- info: Int
-
- """
- Number of vulnerabilities of LOW severity of the project
- """
- low: Int
-
- """
- Number of vulnerabilities of MEDIUM severity of the project
- """
- medium: Int
-
- """
- Number of vulnerabilities of UNKNOWN severity of the project
- """
- unknown: Int
-}
-
-"""
-The severity of the vulnerability
-"""
-enum VulnerabilitySeverity {
- CRITICAL
- HIGH
- INFO
- LOW
- MEDIUM
- UNKNOWN
-}
-
-"""
-Vulnerability sort values
-"""
-enum VulnerabilitySort {
- """
- Detection timestamp in ascending order
- """
- detected_asc
-
- """
- Detection timestamp in descending order
- """
- detected_desc
-
- """
- Report Type in ascending order
- """
- report_type_asc
-
- """
- Report Type in descending order
- """
- report_type_desc
-
- """
- Severity in ascending order
- """
- severity_asc
-
- """
- Severity in descending order
- """
- severity_desc
-
- """
- State in ascending order
- """
- state_asc
-
- """
- State in descending order
- """
- state_desc
-
- """
- Title in ascending order
- """
- title_asc
-
- """
- Title in descending order
- """
- title_desc
-}
-
-"""
-The state of the vulnerability
-"""
-enum VulnerabilityState {
- CONFIRMED
- DETECTED
- DISMISSED
- RESOLVED
-}
-
-"""
-Represents a vulnerable dependency. Used in vulnerability location data
-"""
-type VulnerableDependency {
- """
- The package associated with the vulnerable dependency.
- """
- package: VulnerablePackage
-
- """
- The version of the vulnerable dependency.
- """
- version: String
-}
-
-"""
-Represents a vulnerable package. Used in vulnerability dependency data
-"""
-type VulnerablePackage {
- """
- The name of the vulnerable package.
- """
- name: String
-}
-
-"""
-Represents vulnerability letter grades with associated projects
-"""
-type VulnerableProjectsByGrade {
- """
- Number of projects within this grade.
- """
- count: Int!
-
- """
- Grade based on the highest severity vulnerability present.
- """
- grade: VulnerabilityGrade!
-
- """
- Projects within this grade.
- """
- projects(
- """
- 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
- ): ProjectConnection!
-} \ No newline at end of file
diff --git a/doc/api/graphql/reference/gitlab_schema.json b/doc/api/graphql/reference/gitlab_schema.json
deleted file mode 100644
index 492682d2e54..00000000000
--- a/doc/api/graphql/reference/gitlab_schema.json
+++ /dev/null
@@ -1,85944 +0,0 @@
-{
- "data": {
- "__schema": {
- "queryType": {
- "name": "Query"
- },
- "mutationType": {
- "name": "Mutation"
- },
- "subscriptionType": null,
- "types": [
- {
- "kind": "OBJECT",
- "name": "AccessLevel",
- "description": "Represents the access level of a relationship between a User and object that it is related to",
- "fields": [
- {
- "name": "integerValue",
- "description": "Integer representation of access level.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stringValue",
- "description": "String representation of access level.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "AccessLevelEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AccessLevelEnum",
- "description": "Access level to a resource",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NO_ACCESS",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GUEST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REPORTER",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEVELOPER",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MAINTAINER",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "OWNER",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "AddAwardEmojiInput",
- "description": "Autogenerated input type of AddAwardEmoji",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "AddAwardEmojiPayload",
- "description": "Autogenerated return type of AddAwardEmoji",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "AddProjectToSecurityDashboardInput",
- "description": "Autogenerated input type of AddProjectToSecurityDashboard",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the project to be added to Instance Security Dashboard.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "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": "AddProjectToSecurityDashboardPayload",
- "description": "Autogenerated return type of AddProjectToSecurityDashboard",
- "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": "project",
- "description": "Project that was added to the Instance Security Dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "AdminSidekiqQueuesDeleteJobsInput",
- "description": "Autogenerated input type of AdminSidekiqQueuesDeleteJobs",
- "fields": null,
- "inputFields": [
- {
- "name": "user",
- "description": "Delete jobs matching user in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "project",
- "description": "Delete jobs matching project in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "rootNamespace",
- "description": "Delete jobs matching root_namespace in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "subscriptionPlan",
- "description": "Delete jobs matching subscription_plan in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "callerId",
- "description": "Delete jobs matching caller_id in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "remoteIp",
- "description": "Delete jobs matching remote_ip in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "relatedClass",
- "description": "Delete jobs matching related_class in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "featureCategory",
- "description": "Delete jobs matching feature_category in the context metadata",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "queueName",
- "description": "The name of the queue to delete jobs from.",
- "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": "AdminSidekiqQueuesDeleteJobsPayload",
- "description": "Autogenerated return type of AdminSidekiqQueuesDeleteJobs",
- "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": "result",
- "description": "Information about the status of the deletion request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DeleteJobsResponse",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "description": "Describes an alert from the project's Alert Management",
- "fields": [
- {
- "name": "assignees",
- "description": "Assignees of the alert.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp the alert was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "details",
- "description": "Alert details.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "JSON",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detailsUrl",
- "description": "The URL of the alert detail page.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "endedAt",
- "description": "Timestamp the alert ended.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "environment",
- "description": "Environment for the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Environment",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "eventCount",
- "description": "Number of events of this alert.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hosts",
- "description": "List of hosts the alert came from.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueIid",
- "description": "Internal ID of the GitLab issue attached to the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "metricsDashboardUrl",
- "description": "URL for metrics embed for the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "monitoringTool",
- "description": "Monitoring tool the alert came from.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "prometheusAlert",
- "description": "The alert condition for Prometheus.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PrometheusAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "runbook",
- "description": "Runbook for the alert as defined in alert details.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "service",
- "description": "Service the alert came from.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity",
- "description": "Severity of the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "AlertManagementSeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startedAt",
- "description": "Timestamp the alert was raised.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "AlertManagementStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the alert.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todos",
- "description": "To-do items of the current user for the alert.",
- "args": [
- {
- "name": "action",
- "description": "The action to be filtered.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoActionEnum",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorId",
- "description": "The ID of an author.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The ID of a project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupId",
- "description": "The ID of a group.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "The state of the todo.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "The type of the todo.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoTargetEnum",
- "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": "TodoConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp the alert was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementAlertConnection",
- "description": "The connection type for AlertManagementAlert.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "AlertManagementAlertEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "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": "AlertManagementAlertEdge",
- "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": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementAlertSort",
- "description": "Values for sorting alerts",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "updated_desc",
- "description": "Updated at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "updated_asc",
- "description": "Updated at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "created_desc",
- "description": "Created at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "created_asc",
- "description": "Created at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "UPDATED_DESC",
- "description": "Updated at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_ASC",
- "description": "Updated at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STARTED_AT_ASC",
- "description": "Start time by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STARTED_AT_DESC",
- "description": "Start time by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ENDED_AT_ASC",
- "description": "End time by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ENDED_AT_DESC",
- "description": "End time by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_TIME_ASC",
- "description": "Created time by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_TIME_DESC",
- "description": "Created time by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_TIME_ASC",
- "description": "Created time by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_TIME_DESC",
- "description": "Created time by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVENT_COUNT_ASC",
- "description": "Events count by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVENT_COUNT_DESC",
- "description": "Events count by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SEVERITY_ASC",
- "description": "Severity from less critical to more critical",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SEVERITY_DESC",
- "description": "Severity from more critical to less critical",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STATUS_ASC",
- "description": "Status by order: Ignored > Resolved > Acknowledged > Triggered",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STATUS_DESC",
- "description": "Status by order: Triggered > Acknowledged > Resolved > Ignored",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementAlertStatusCountsType",
- "description": "Represents total number of alerts for the represented categories",
- "fields": [
- {
- "name": "acknowledged",
- "description": "Number of alerts with status ACKNOWLEDGED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "all",
- "description": "Total number of alerts for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ignored",
- "description": "Number of alerts with status IGNORED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "open",
- "description": "Number of alerts with status TRIGGERED or ACKNOWLEDGED for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolved",
- "description": "Number of alerts with status RESOLVED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "triggered",
- "description": "Number of alerts with status TRIGGERED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementDomainFilter",
- "description": "Filters the alerts based on given domain",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "operations",
- "description": "Alerts for operations domain",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "threat_monitoring",
- "description": "Alerts for threat monitoring domain",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "description": "An endpoint and credentials used to accept alerts for a project",
- "fields": [
- {
- "name": "active",
- "description": "Whether the endpoint is currently accepting alerts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "apiUrl",
- "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "token",
- "description": "Token used to authenticate alert notification requests.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementIntegrationType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "Endpoint which accepts alert notifications.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "AlertManagementIntegration",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "AlertManagementHttpIntegrationID",
- "description": "Identifier of AlertManagement::HttpIntegration.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "AlertManagementIntegration",
- "description": null,
- "fields": [
- {
- "name": "active",
- "description": "Whether the endpoint is currently accepting alerts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "apiUrl",
- "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "token",
- "description": "Token used to authenticate alert notification requests.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementIntegrationType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "Endpoint which accepts alert notifications.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementPrometheusIntegration",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementIntegrationConnection",
- "description": "The connection type for AlertManagementIntegration.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "AlertManagementIntegrationEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "INTERFACE",
- "name": "AlertManagementIntegration",
- "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": "AlertManagementIntegrationEdge",
- "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": "INTERFACE",
- "name": "AlertManagementIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementIntegrationType",
- "description": "Values of types of integrations",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "PROMETHEUS",
- "description": "Prometheus integration",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HTTP",
- "description": "Integration with any monitoring tool",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "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",
- "fields": null,
- "inputFields": [
- {
- "name": "fieldName",
- "description": "A GitLab alert field name.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementPayloadAlertFieldName",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "path",
- "description": "Path to value inside payload JSON.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "label",
- "description": "Human-readable label of the payload path.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "Type of the parsed value.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementPayloadAlertFieldType",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementPayloadAlertFieldName",
- "description": "Values for alert field names used in the custom mapping",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "TITLE",
- "description": "The title of the incident.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DESCRIPTION",
- "description": "A high-level summary of the problem.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "START_TIME",
- "description": "The time of the incident.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "END_TIME",
- "description": "The resolved time of the incident.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SERVICE",
- "description": "The affected service.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MONITORING_TOOL",
- "description": "The name of the associated monitoring tool.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HOSTS",
- "description": "One or more hosts, as to where this incident occurred.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SEVERITY",
- "description": "The severity of the alert.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FINGERPRINT",
- "description": "The unique identifier of the alert. This can be used to group occurrences of the same alert.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GITLAB_ENVIRONMENT_NAME",
- "description": "The name of the associated GitLab environment.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementPayloadAlertFieldType",
- "description": "Values for alert field types used in the custom mapping",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ARRAY",
- "description": "Array field type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DATETIME",
- "description": "DateTime field type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STRING",
- "description": "String field type",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AlertManagementPrometheusIntegration",
- "description": "An endpoint and credentials used to accept Prometheus alerts for a project",
- "fields": [
- {
- "name": "active",
- "description": "Whether the endpoint is currently accepting alerts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "apiUrl",
- "description": "URL at which Prometheus metrics can be queried to populate the metrics dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the integration.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "token",
- "description": "Token used to authenticate alert notification requests.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementIntegrationType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "Endpoint which accepts alert notifications.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "AlertManagementIntegration",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementSeverity",
- "description": "Alert severity values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CRITICAL",
- "description": "Critical severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HIGH",
- "description": "High severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MEDIUM",
- "description": "Medium severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LOW",
- "description": "Low severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INFO",
- "description": "Info severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNKNOWN",
- "description": "Unknown severity",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AlertManagementStatus",
- "description": "Alert status values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "TRIGGERED",
- "description": "Triggered status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ACKNOWLEDGED",
- "description": "Acknowledged status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RESOLVED",
- "description": "Resolved status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "IGNORED",
- "description": "Ignored status",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "AlertSetAssigneesInput",
- "description": "Autogenerated input type of AlertSetAssignees",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the alert 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 alert to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "The usernames to assign to the alert. Replaces existing assignees by default.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "operationMode",
- "description": "The operation to perform. Defaults to REPLACE.",
- "type": {
- "kind": "ENUM",
- "name": "MutationOperationMode",
- "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": "AlertSetAssigneesPayload",
- "description": "Autogenerated return type of AlertSetAssignees",
- "fields": [
- {
- "name": "alert",
- "description": "The alert after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "issue",
- "description": "The issue created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todo",
- "description": "The to-do item after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "AlertTodoCreateInput",
- "description": "Autogenerated input type of AlertTodoCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the alert 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 alert to mutate.",
- "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": "AlertTodoCreatePayload",
- "description": "Autogenerated return type of AlertTodoCreate",
- "fields": [
- {
- "name": "alert",
- "description": "The alert after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "issue",
- "description": "The issue created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todo",
- "description": "The to-do item after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "AnalyticsDevopsAdoptionSegmentID",
- "description": "Identifier of Analytics::DevopsAdoption::Segment.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ApiFuzzingCiConfiguration",
- "description": "Data associated with configuring API fuzzing scans in GitLab CI",
- "fields": [
- {
- "name": "scanModes",
- "description": "All available scan modes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "ApiFuzzingScanMode",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scanProfiles",
- "description": "All default scan profiles.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ApiFuzzingScanProfile",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ApiFuzzingCiConfigurationCreateInput",
- "description": "Autogenerated input type of ApiFuzzingCiConfigurationCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "apiSpecificationFile",
- "description": "File path or URL to the file that defines the API surface for scanning. Must be in the format specified by the `scanMode` argument.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authPassword",
- "description": "CI variable containing the password for authenticating with the target API.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authUsername",
- "description": "CI variable containing the username for authenticating with the target API.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "scanMode",
- "description": "The mode for API fuzzing scans.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "ApiFuzzingScanMode",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanProfile",
- "description": "Name of a default profile to use for scanning. Ex: Quick-10.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "target",
- "description": "URL for the target of API fuzzing scans.",
- "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": "ApiFuzzingCiConfigurationCreatePayload",
- "description": "Autogenerated return type of ApiFuzzingCiConfigurationCreate",
- "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": "configurationYaml",
- "description": "A YAML snippet that can be inserted into the project's `.gitlab-ci.yml` to set up API fuzzing scans.",
- "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": "gitlabCiYamlEditPath",
- "description": "The location at which the project's `.gitlab-ci.yml` file can be edited in the browser.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ApiFuzzingScanMode",
- "description": "All possible ways to specify the API surface for an API fuzzing scan",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "HAR",
- "description": "The API surface is specified by a HAR file.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "OPENAPI",
- "description": "The API surface is specified by a OPENAPI file.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ApiFuzzingScanProfile",
- "description": "An API Fuzzing scan profile.",
- "fields": [
- {
- "name": "description",
- "description": "A short description of the profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "The unique name of the profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "yaml",
- "description": "A syntax highlit HTML representation of the YAML.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "AvailabilityEnum",
- "description": "User availability status",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NOT_SET",
- "description": "Not Set",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BUSY",
- "description": "Busy",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "description": "An emoji awarded by a user",
- "fields": [
- {
- "name": "description",
- "description": "The emoji description.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "emoji",
- "description": "The emoji as an icon.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "unicode",
- "description": "The emoji in Unicode.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "unicodeVersion",
- "description": "The Unicode version for this emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "The user who awarded the emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "AwardEmojiAddInput",
- "description": "Autogenerated input type of AwardEmojiAdd",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "AwardEmojiAddPayload",
- "description": "Autogenerated return type of AwardEmojiAdd",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "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",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "AwardEmojiRemovePayload",
- "description": "Autogenerated return type of AwardEmojiRemove",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "AwardEmojiToggleInput",
- "description": "Autogenerated input type of AwardEmojiToggle",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "AwardEmojiTogglePayload",
- "description": "Autogenerated return type of AwardEmojiToggle",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "toggledOn",
- "description": "Indicates the status of the emoji. True if the toggle awarded the emoji, and false if the toggle removed the emoji.",
- "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": "SCALAR",
- "name": "AwardableID",
- "description": "Identifier of Awardable.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BaseService",
- "description": null,
- "fields": [
- {
- "name": "active",
- "description": "Indicates if the service is active.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Class name of the service.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Service",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "BigInt",
- "description": "Represents non-fractional signed whole numeric values. Since the value may exceed the size of a 32-bit integer, it's encoded as a string.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Blob",
- "description": null,
- "fields": [
- {
- "name": "flatPath",
- "description": "Flat path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsOid",
- "description": "LFS ID of the blob.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mode",
- "description": "Blob mode in numeric format.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "Last commit SHA for the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of tree entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EntryType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the blob.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the blob.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Entry",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BlobConnection",
- "description": "The connection type for Blob.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BlobEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Blob",
- "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": "BlobEdge",
- "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": "Blob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "BlobViewersType",
- "description": "Types of blob viewers",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "rich",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "simple",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "auxiliary",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Board",
- "description": "Represents a project or group board",
- "fields": [
- {
- "name": "assignee",
- "description": "The board assignee.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epics",
- "description": "Epics associated with board issues.",
- "args": [
- {
- "name": "issueFilters",
- "description": "Filters applied when selecting issues on the board.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "BoardIssueInput",
- "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": "BoardEpicConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hideBacklogList",
- "description": "Whether or not backlog list is hidden.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hideClosedList",
- "description": "Whether or not closed list is hidden.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID (global ID) of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iteration",
- "description": "The board iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels of the board.",
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lists",
- "description": "Lists of the board.",
- "args": [
- {
- "name": "id",
- "description": "Find a list by its global ID.",
- "type": {
- "kind": "SCALAR",
- "name": "ListID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "issueFilters",
- "description": "Filters applied when getting issue metadata in the board list.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "BoardIssueInput",
- "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": "BoardListConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "The board milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weight",
- "description": "Weight of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardConnection",
- "description": "The connection type for Board.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BoardEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Board",
- "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": "BoardEdge",
- "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": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardEpic",
- "description": "Represents an epic on an issue board",
- "fields": [
- {
- "name": "author",
- "description": "Author of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "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.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the epic, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of epics, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter epics by state.",
- "type": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for epic title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List epics by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "EpicSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter epics by author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Filter epics by labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter epics by milestone title, computed from epic's issues.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iidStartsWith",
- "description": "Filter epics by IID for autocomplete.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeDescendantGroups",
- "description": "Include epics from descendant groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "true"
- },
- {
- "name": "confidential",
- "description": "Filter epics by given confidentiality.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "EpicConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedAt",
- "description": "Timestamp of when the epic was closed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confidential",
- "description": "Indicates if the epic is confidential.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the epic was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descendantCounts",
- "description": "Number of open and closed descendant epics and issues.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicDescendantCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descendantWeightSum",
- "description": "Total weight of open and closed issues in the epic and its descendants.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicDescendantWeights",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downvotes",
- "description": "Number of downvotes the epic has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateFixed",
- "description": "Fixed due date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateFromMilestones",
- "description": "Inherited due date of the epic from milestones.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateIsFixed",
- "description": "Indicates if the due date has been manually set.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "events",
- "description": "A list of events associated with the object.",
- "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": "EventConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group to which the epic belongs.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasChildren",
- "description": "Indicates if the epic has children.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasIssues",
- "description": "Indicates if the epic has direct issues.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasParent",
- "description": "Indicates if the epic has a parent epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "healthStatus",
- "description": "Current health status of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicHealthStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issues",
- "description": "A list of issues 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": "EpicIssueConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels assigned to 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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "parent",
- "description": "Parent epic of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "List of participants for 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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reference",
- "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.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relationPath",
- "description": "URI path of the epic-issue relationship.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relativePosition",
- "description": "The relative position of the epic in the epic tree.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDate",
- "description": "Start date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateFixed",
- "description": "Fixed start date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateFromMilestones",
- "description": "Inherited start date of the epic from milestones.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateIsFixed",
- "description": "Indicates if the start date has been manually set.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscribed",
- "description": "Indicates the currently logged in user is subscribed to the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the epic was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upvotes",
- "description": "Number of upvotes the epic has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userDiscussionsCount",
- "description": "Number of user discussions in the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "Number of user notes of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPreferences",
- "description": "User preferences for the epic on the issue board.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardEpicUserPreferences",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "Eventable",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardEpicConnection",
- "description": "The connection type for BoardEpic.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BoardEpicEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BoardEpic",
- "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": "BoardEpicEdge",
- "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": "BoardEpic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardEpicUserPreferences",
- "description": "Represents user preferences for a board epic",
- "fields": [
- {
- "name": "collapsed",
- "description": "Indicates epic should be displayed as collapsed.",
- "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": "SCALAR",
- "name": "BoardID",
- "description": "Identifier of Board.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "BoardIssueInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "labelName",
- "description": "Filter by label name.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter by milestone title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Filter by assignee username.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter by author username.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "releaseTag",
- "description": "Filter by release tag.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "myReactionEmoji",
- "description": "Filter by reaction emoji.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "Filter by epic ID. Incompatible with epicWildcardId.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationTitle",
- "description": "Filter by iteration title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "Filter by weight.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "not",
- "description": "List of negated params. Warning: this argument is experimental and a subject to change in future.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "NegatedBoardIssueInput",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for issue title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicWildcardId",
- "description": "Filter by epic ID wildcard. Incompatible with epicId.",
- "type": {
- "kind": "ENUM",
- "name": "EpicWildcardId",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationWildcardId",
- "description": "Filter by iteration ID wildcard.",
- "type": {
- "kind": "ENUM",
- "name": "IterationWildcardId",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardList",
- "description": "Represents a list for an issue board",
- "fields": [
- {
- "name": "assignee",
- "description": "Assignee in the list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "collapsed",
- "description": "Indicates if list is collapsed for this user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID (global ID) of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issues",
- "description": "Board issues.",
- "args": [
- {
- "name": "filters",
- "description": "Filters applied when selecting issues in the board list.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "BoardIssueInput",
- "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": "IssueConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issuesCount",
- "description": "Count of issues in the list.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iteration",
- "description": "Iteration of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "Label of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "limitMetric",
- "description": "The current limit metric for the list.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ListLimitMetric",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "listType",
- "description": "Type of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "maxIssueCount",
- "description": "Maximum number of issues in the list.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "maxIssueWeight",
- "description": "Maximum weight of issues in the list.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "Milestone of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "position",
- "description": "Position of list within the board.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalWeight",
- "description": "Total weight of all issues in the list.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardListConnection",
- "description": "The connection type for BoardList.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BoardListEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BoardList",
- "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": "BoardListCreateInput",
- "description": "Autogenerated input type of BoardListCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "backlog",
- "description": "Create the backlog list.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelId",
- "description": "Global ID of an existing label.",
- "type": {
- "kind": "SCALAR",
- "name": "LabelID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "boardId",
- "description": "Global ID of the issue board to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneId",
- "description": "Global ID of an existing milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationId",
- "description": "Global ID of an existing iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "IterationID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "Global ID of an existing user.",
- "type": {
- "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": "BoardListCreatePayload",
- "description": "Autogenerated return type of BoardListCreate",
- "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": "list",
- "description": "Issue list in the issue board.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardListEdge",
- "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": "BoardList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "BoardListUpdateLimitMetricsInput",
- "description": "Autogenerated input type of BoardListUpdateLimitMetrics",
- "fields": null,
- "inputFields": [
- {
- "name": "listId",
- "description": "The global ID of the list.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ListID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "limitMetric",
- "description": "The new limit metric type for the list.",
- "type": {
- "kind": "ENUM",
- "name": "ListLimitMetric",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "maxIssueCount",
- "description": "The new maximum issue count limit.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "maxIssueWeight",
- "description": "The new maximum issue weight limit.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "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": "BoardListUpdateLimitMetricsPayload",
- "description": "Autogenerated return type of BoardListUpdateLimitMetrics",
- "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": "list",
- "description": "The updated list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "BoardsEpicBoardID",
- "description": "Identifier of Boards::EpicBoard.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "BoardsEpicListID",
- "description": "Identifier of Boards::EpicList.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Boolean",
- "description": "Represents `true` or `false` values.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Branch",
- "description": null,
- "fields": [
- {
- "name": "commit",
- "description": "Commit for the branch.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Commit",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the branch.",
- "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": "BurnupChartDailyTotals",
- "description": "Represents the total number of issues and their weights for a particular day",
- "fields": [
- {
- "name": "completedCount",
- "description": "Number of closed issues as of this day.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "completedWeight",
- "description": "Total weight of closed issues as of this day.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "date",
- "description": "Date for burnup totals.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scopeCount",
- "description": "Number of issues as of this day.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scopeWeight",
- "description": "Total weight of issues as of this day.",
- "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": "CiApplicationSettings",
- "description": null,
- "fields": [
- {
- "name": "keepLatestArtifact",
- "description": "Whether to keep the latest jobs artifacts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiBuildNeed",
- "description": null,
- "fields": [
- {
- "name": "name",
- "description": "Name of the job we need to complete.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiBuildNeedConnection",
- "description": "The connection type for CiBuildNeed.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiBuildNeedEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiBuildNeed",
- "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": "CiBuildNeedEdge",
- "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": "CiBuildNeed",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CiCdSettingsUpdateInput",
- "description": "Autogenerated input type of CiCdSettingsUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "Full Path of the project the settings belong to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "keepLatestArtifact",
- "description": "Indicates if the latest artifact should be kept for this project.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "CiCdSettingsUpdatePayload",
- "description": "Autogenerated return type of CiCdSettingsUpdate",
- "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": "CiConfig",
- "description": null,
- "fields": [
- {
- "name": "errors",
- "description": "Linting errors.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergedYaml",
- "description": "Merged CI configuration YAML.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stages",
- "description": "Stages of the pipeline.",
- "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": "CiConfigStageConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of linting, can be either valid or invalid.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "CiConfigStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigGroup",
- "description": null,
- "fields": [
- {
- "name": "jobs",
- "description": "Jobs in group.",
- "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": "CiConfigJobConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the job group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "size",
- "description": "Size of the job group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigGroupConnection",
- "description": "The connection type for CiConfigGroup.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigGroupEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigGroup",
- "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": "CiConfigGroupEdge",
- "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": "CiConfigGroup",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigJob",
- "description": null,
- "fields": [
- {
- "name": "afterScript",
- "description": "Override a set of commands that are executed after the job.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "allowFailure",
- "description": "Allow job to fail.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "beforeScript",
- "description": "Override a set of commands that are executed before the job.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "environment",
- "description": "Name of an environment to which the job deploys.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "except",
- "description": "Limit when jobs are not created.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiConfigJobRestriction",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groupName",
- "description": "Name of the job group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the job.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "needs",
- "description": "Builds that must complete before the jobs run.",
- "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": "CiConfigNeedConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "only",
- "description": "Jobs are created when these conditions do not apply.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiConfigJobRestriction",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "script",
- "description": "Shell script that is executed by a runner.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stage",
- "description": "Name of the job stage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tags",
- "description": "List of tags that are used to select a runner.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "when",
- "description": "When to run the job.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigJobConnection",
- "description": "The connection type for CiConfigJob.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigJobEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigJob",
- "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": "CiConfigJobEdge",
- "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": "CiConfigJob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigJobRestriction",
- "description": null,
- "fields": [
- {
- "name": "refs",
- "description": "The Git refs the job restriction applies to.",
- "args": [
-
- ],
- "type": {
- "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": "CiConfigNeed",
- "description": null,
- "fields": [
- {
- "name": "name",
- "description": "Name of the need.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigNeedConnection",
- "description": "The connection type for CiConfigNeed.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigNeedEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigNeed",
- "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": "CiConfigNeedEdge",
- "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": "CiConfigNeed",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigStage",
- "description": null,
- "fields": [
- {
- "name": "groups",
- "description": "Groups of jobs for the stage.",
- "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": "CiConfigGroupConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the stage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiConfigStageConnection",
- "description": "The connection type for CiConfigStage.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigStageEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiConfigStage",
- "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": "CiConfigStageEdge",
- "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": "CiConfigStage",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "CiConfigStatus",
- "description": "Values for YAML processor result",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "VALID",
- "description": "The configuration file is valid",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INVALID",
- "description": "The configuration file is not valid",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiGroup",
- "description": null,
- "fields": [
- {
- "name": "detailedStatus",
- "description": "Detailed status of the group.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DetailedStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jobs",
- "description": "Jobs in group.",
- "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": "CiJobConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the job group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "size",
- "description": "Size of the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiGroupConnection",
- "description": "The connection type for CiGroup.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiGroupEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiGroup",
- "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": "CiGroupEdge",
- "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": "CiGroup",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiJob",
- "description": null,
- "fields": [
- {
- "name": "artifacts",
- "description": "Artifacts generated by the job.",
- "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": "CiJobArtifactConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detailedStatus",
- "description": "Detailed status of the job.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DetailedStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the job.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "needs",
- "description": "References to builds that must complete before the jobs run.",
- "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": "CiBuildNeedConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipeline",
- "description": "Pipeline the job belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scheduledAt",
- "description": "Schedule for the build.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiJobArtifact",
- "description": null,
- "fields": [
- {
- "name": "downloadPath",
- "description": "URL for downloading the artifact's file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fileType",
- "description": "File type of the artifact.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "JobArtifactFileType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiJobArtifactConnection",
- "description": "The connection type for CiJobArtifact.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiJobArtifactEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiJobArtifact",
- "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": "CiJobArtifactEdge",
- "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": "CiJobArtifact",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiJobConnection",
- "description": "The connection type for CiJob.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiJobEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiJob",
- "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": "CiJobEdge",
- "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": "CiJob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "CiPipelineID",
- "description": "Identifier of Ci::Pipeline.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiStage",
- "description": null,
- "fields": [
- {
- "name": "detailedStatus",
- "description": "Detailed status of the stage.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DetailedStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groups",
- "description": "Group of jobs for the stage.",
- "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": "CiGroupConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the stage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CiStageConnection",
- "description": "The connection type for CiStage.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiStageEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CiStage",
- "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": "CiStageEdge",
- "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": "CiStage",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ClusterAgent",
- "description": null,
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp the cluster agent was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdByUser",
- "description": "User object, containing information about the person who created the agent.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the cluster agent.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the cluster agent.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project this cluster agent is associated with.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tokens",
- "description": "Tokens associated with the cluster agent.",
- "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": "ClusterAgentTokenConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp the cluster agent was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ClusterAgentConnection",
- "description": "The connection type for ClusterAgent.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ClusterAgentEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ClusterAgent",
- "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": "ClusterAgentDeleteInput",
- "description": "Autogenerated input type of ClusterAgentDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the cluster agent that will be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ClustersAgentID",
- "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": "ClusterAgentDeletePayload",
- "description": "Autogenerated return type of ClusterAgentDelete",
- "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": "ClusterAgentEdge",
- "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": "ClusterAgent",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ClusterAgentToken",
- "description": null,
- "fields": [
- {
- "name": "clusterAgent",
- "description": "Cluster agent this token is associated with.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgent",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp the token was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdByUser",
- "description": "The user who created the token.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Global ID of the token.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ClustersAgentTokenID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ClusterAgentTokenConnection",
- "description": "The connection type for ClusterAgentToken.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ClusterAgentTokenEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ClusterAgentToken",
- "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": "ClusterAgentTokenCreateInput",
- "description": "Autogenerated input type of ClusterAgentTokenCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "clusterAgentId",
- "description": "Global ID of the cluster agent that will be associated with the new token.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ClustersAgentID",
- "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": "ClusterAgentTokenCreatePayload",
- "description": "Autogenerated return type of ClusterAgentTokenCreate",
- "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": "secret",
- "description": "Token secret value. Make sure you save it - you won't be able to access it again.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "token",
- "description": "Token created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgentToken",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ClusterAgentTokenDeleteInput",
- "description": "Autogenerated input type of ClusterAgentTokenDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the cluster agent token that will be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ClustersAgentTokenID",
- "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": "ClusterAgentTokenDeletePayload",
- "description": "Autogenerated return type of ClusterAgentTokenDelete",
- "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": "ClusterAgentTokenEdge",
- "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": "ClusterAgentToken",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ClustersAgentID",
- "description": "Identifier of Clusters::Agent.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ClustersAgentTokenID",
- "description": "Identifier of Clusters::AgentToken.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ClustersClusterID",
- "description": "Identifier of Clusters::Cluster.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CodeCoverageActivity",
- "description": "Represents the code coverage activity for a group",
- "fields": [
- {
- "name": "averageCoverage",
- "description": "Average percentage of the different code coverage results available for the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "coverageCount",
- "description": "Number of different code coverage results available for the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "date",
- "description": "Date when the code coverage was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Date",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectCount",
- "description": "Number of projects with code coverage results for the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CodeCoverageActivityConnection",
- "description": "The connection type for CodeCoverageActivity.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CodeCoverageActivityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CodeCoverageActivity",
- "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": "CodeCoverageActivityEdge",
- "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": "CodeCoverageActivity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CodeCoverageSummary",
- "description": "Represents the code coverage summary for a project",
- "fields": [
- {
- "name": "averageCoverage",
- "description": "Average percentage of the different code coverage results available for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "coverageCount",
- "description": "Number of different code coverage results available.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastUpdatedOn",
- "description": "Latest date when the code coverage was created for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Date",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Commit",
- "description": null,
- "fields": [
- {
- "name": "author",
- "description": "Author of the commit.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "authorGravatar",
- "description": "Commit authors gravatar.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "authorName",
- "description": "Commit authors name.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "authoredDate",
- "description": "Timestamp of when the commit was authored.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the commit message.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID (global ID) of the commit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "message",
- "description": "Raw commit message.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelines",
- "description": "Pipelines of the commit ordered latest first.",
- "args": [
- {
- "name": "status",
- "description": "Filter pipelines by their status.",
- "type": {
- "kind": "ENUM",
- "name": "PipelineStatusEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ref",
- "description": "Filter pipelines by the ref they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sha",
- "description": "Filter pipelines by the sha of the commit they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "PipelineConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "SHA1 ID of the commit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shortId",
- "description": "Short SHA1 ID of the commit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "signatureHtml",
- "description": "Rendered HTML of the commit signature.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the commit message.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "titleHtml",
- "description": "The GitLab Flavored Markdown rendering of `title`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the commit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the commit.",
- "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": "CommitAction",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "action",
- "description": "The action to perform, create, delete, move, update, chmod.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "CommitActionMode",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "filePath",
- "description": "Full path to the file.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "content",
- "description": "Content of the file.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "previousPath",
- "description": "Original full path to the file being moved.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "lastCommitId",
- "description": "Last known file commit ID.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "executeFilemode",
- "description": "Enables/disables the execute flag on the file.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "encoding",
- "description": "Encoding of the file. Default is text.",
- "type": {
- "kind": "ENUM",
- "name": "CommitEncoding",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "CommitActionMode",
- "description": "Mode of a commit action",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CREATE",
- "description": "Create command",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DELETE",
- "description": "Delete command",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MOVE",
- "description": "Move command",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATE",
- "description": "Update command",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CHMOD",
- "description": "Chmod command",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "CommitConnection",
- "description": "The connection type for Commit.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CommitEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Commit",
- "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": "CommitCreateInput",
- "description": "Autogenerated input type of CommitCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Project full path the branch is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "branch",
- "description": "Name of the branch to commit into, it can be a new branch.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "startBranch",
- "description": "If on a new branch, name of the original branch.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "message",
- "description": "Raw commit message.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "actions",
- "description": "Array of action hashes to commit as a batch.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CommitAction",
- "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": "CommitCreatePayload",
- "description": "Autogenerated return type of CommitCreate",
- "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": "commit",
- "description": "The commit after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Commit",
- "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": "CommitEdge",
- "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": "Commit",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "CommitEncoding",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "TEXT",
- "description": "Text encoding",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BASE64",
- "description": "Base64 encoding",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ComplianceFramework",
- "description": "Represents a ComplianceFramework associated with a Project",
- "fields": [
- {
- "name": "color",
- "description": "Hexadecimal representation of compliance framework's label color.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the compliance framework.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Compliance framework ID.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the compliance framework.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineConfigurationFullPath",
- "description": "Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/.compliance-gitlab-ci.yml@compliance/hippa`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ComplianceFrameworkConnection",
- "description": "The connection type for ComplianceFramework.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ComplianceFrameworkEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ComplianceFramework",
- "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": "ComplianceFrameworkEdge",
- "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": "ComplianceFramework",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ComplianceFrameworkInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "name",
- "description": "New name for the compliance framework.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "New description for the compliance framework.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "color",
- "description": "New color representation of the compliance framework in hex format. e.g. #FCA121.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "pipelineConfigurationFullPath",
- "description": "Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/.compliance-gitlab-ci.yml@compliance/hippa`.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ComplianceManagementFrameworkID",
- "description": "Identifier of ComplianceManagement::Framework.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "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",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "configuration",
- "description": "SAST CI configuration for the project.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationInput",
- "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": "ConfigureSastPayload",
- "description": "Autogenerated return type of ConfigureSast",
- "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": "status",
- "description": "Status of creating the commit for the supplied SAST CI configuration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "successPath",
- "description": "Redirect path to use when the response is successful.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerExpirationPolicy",
- "description": "A tag expiration policy designed to keep only the images that matter most",
- "fields": [
- {
- "name": "cadence",
- "description": "This container expiration policy schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyCadenceEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the container expiration policy was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enabled",
- "description": "Indicates whether this container expiration policy is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "keepN",
- "description": "Number of tags to retain.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyKeepEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nameRegex",
- "description": "Tags with names matching this regex pattern will expire.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nameRegexKeep",
- "description": "Tags with names matching this regex pattern will be preserved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nextRunAt",
- "description": "Next time that this container expiration policy will get executed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "olderThan",
- "description": "Tags older that this will expire.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyOlderThanEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the container expiration policy was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyCadenceEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "EVERY_DAY",
- "description": "Every day",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVERY_WEEK",
- "description": "Every week",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVERY_TWO_WEEKS",
- "description": "Every two weeks",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVERY_MONTH",
- "description": "Every month",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EVERY_THREE_MONTHS",
- "description": "Every three months",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyKeepEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ONE_TAG",
- "description": "1 tag per image name",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FIVE_TAGS",
- "description": "5 tags per image name",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TEN_TAGS",
- "description": "10 tags per image name",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TWENTY_FIVE_TAGS",
- "description": "25 tags per image name",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FIFTY_TAGS",
- "description": "50 tags per image name",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ONE_HUNDRED_TAGS",
- "description": "100 tags per image name",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyOlderThanEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SEVEN_DAYS",
- "description": "7 days until tags are automatically removed",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FOURTEEN_DAYS",
- "description": "14 days until tags are automatically removed",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "THIRTY_DAYS",
- "description": "30 days until tags are automatically removed",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NINETY_DAYS",
- "description": "90 days until tags are automatically removed",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerRepository",
- "description": "A container repository",
- "fields": [
- {
- "name": "canDelete",
- "description": "Can the current user delete the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp when the container repository was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expirationPolicyCleanupStatus",
- "description": "The tags cleanup status for the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositoryCleanupStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expirationPolicyStartedAt",
- "description": "Timestamp when the cleanup done by the expiration policy was started on the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "location",
- "description": "URL of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project of the container registry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositoryStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tagsCount",
- "description": "Number of tags associated with this image.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp when the container repository was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerRepositoryCleanupStatus",
- "description": "Status of the tags cleanup of a container repository",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "UNSCHEDULED",
- "description": "The tags cleanup is not scheduled. This is the default state.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SCHEDULED",
- "description": "The tags cleanup is scheduled and is going to be executed shortly.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNFINISHED",
- "description": "The tags cleanup has been partially executed. There are still remaining tags to delete.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ONGOING",
- "description": "The tags cleanup is ongoing.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerRepositoryConnection",
- "description": "The connection type for ContainerRepository.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ContainerRepositoryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ContainerRepository",
- "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": "ContainerRepositoryDetails",
- "description": "Details of a container repository",
- "fields": [
- {
- "name": "canDelete",
- "description": "Can the current user delete the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp when the container repository was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expirationPolicyCleanupStatus",
- "description": "The tags cleanup status for the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositoryCleanupStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expirationPolicyStartedAt",
- "description": "Timestamp when the cleanup done by the expiration policy was started on the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "location",
- "description": "URL of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project of the container registry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the container repository.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositoryStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tags",
- "description": "Tags of the container repository.",
- "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": "ContainerRepositoryTagConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tagsCount",
- "description": "Number of tags associated with this image.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp when the container repository was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerRepositoryEdge",
- "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": "ContainerRepository",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ContainerRepositoryID",
- "description": "Identifier of ContainerRepository.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerRepositorySort",
- "description": "Values for sorting container repositories",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "updated_desc",
- "description": "Updated at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "updated_asc",
- "description": "Updated at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "created_desc",
- "description": "Created at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "created_asc",
- "description": "Created at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "UPDATED_DESC",
- "description": "Updated at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_ASC",
- "description": "Updated at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NAME_ASC",
- "description": "Name by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NAME_DESC",
- "description": "Name by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ContainerRepositoryStatus",
- "description": "Status of a container repository",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "DELETE_SCHEDULED",
- "description": "Delete Scheduled status.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DELETE_FAILED",
- "description": "Delete Failed status.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerRepositoryTag",
- "description": "A tag from a container repository",
- "fields": [
- {
- "name": "canDelete",
- "description": "Can the current user delete this tag.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp when the tag was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "digest",
- "description": "Digest of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "location",
- "description": "URL of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "revision",
- "description": "Revision of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shortRevision",
- "description": "Short revision of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalSize",
- "description": "The size of the tag.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "BigInt",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ContainerRepositoryTagConnection",
- "description": "The connection type for ContainerRepositoryTag.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ContainerRepositoryTagEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ContainerRepositoryTag",
- "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": "ContainerRepositoryTagEdge",
- "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": "ContainerRepositoryTag",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateAlertIssueInput",
- "description": "Autogenerated input type of CreateAlertIssue",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the alert 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 alert to mutate.",
- "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": "CreateAlertIssuePayload",
- "description": "Autogenerated return type of CreateAlertIssue",
- "fields": [
- {
- "name": "alert",
- "description": "The alert after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "issue",
- "description": "The issue created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todo",
- "description": "The to-do item after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateAnnotationInput",
- "description": "Autogenerated input type of CreateAnnotation",
- "fields": null,
- "inputFields": [
- {
- "name": "environmentId",
- "description": "The global ID of the environment to add an annotation to.",
- "type": {
- "kind": "SCALAR",
- "name": "EnvironmentID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "clusterId",
- "description": "The global ID of the cluster to add an annotation to.",
- "type": {
- "kind": "SCALAR",
- "name": "ClustersClusterID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startingAt",
- "description": "Timestamp indicating starting moment to which the annotation relates.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endingAt",
- "description": "Timestamp indicating ending moment to which the annotation relates.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dashboardPath",
- "description": "The path to a file defining the dashboard on which the annotation should be added.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the annotation.",
- "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": "CreateAnnotationPayload",
- "description": "Autogenerated return type of CreateAnnotation",
- "fields": [
- {
- "name": "annotation",
- "description": "The created annotation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MetricsDashboardAnnotation",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "CreateBoardInput",
- "description": "Autogenerated input type of CreateBoard",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project with which the resource is associated.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "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": "assigneeId",
- "description": "The ID of user to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "UserID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneId",
- "description": "The ID of milestone to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationId",
- "description": "The ID of iteration to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "IterationID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The weight value to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Labels of the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelIds",
- "description": "The IDs of labels to be added to the board.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "LabelID",
- "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": "CreateBoardPayload",
- "description": "Autogenerated return type of CreateBoard",
- "fields": [
- {
- "name": "board",
- "description": "The board after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "CreateBranchInput",
- "description": "Autogenerated input type of CreateBranch",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Project full path the branch is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "Name of the branch.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "ref",
- "description": "Branch name or commit SHA to create branch from.",
- "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": "CreateBranchPayload",
- "description": "Autogenerated return type of CreateBranch",
- "fields": [
- {
- "name": "branch",
- "description": "Branch after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Branch",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "CreateClusterAgentInput",
- "description": "Autogenerated input type of CreateClusterAgent",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the associated project for this cluster agent.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "Name of the cluster agent.",
- "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": "CreateClusterAgentPayload",
- "description": "Autogenerated return type of CreateClusterAgent",
- "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": "clusterAgent",
- "description": "Cluster agent created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgent",
- "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": "INPUT_OBJECT",
- "name": "CreateComplianceFrameworkInput",
- "description": "Autogenerated input type of CreateComplianceFramework",
- "fields": null,
- "inputFields": [
- {
- "name": "namespacePath",
- "description": "Full path of the namespace to add the compliance framework to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "params",
- "description": "Parameters to update the compliance framework with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ComplianceFrameworkInput",
- "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": "CreateComplianceFrameworkPayload",
- "description": "Autogenerated return type of CreateComplianceFramework",
- "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": "framework",
- "description": "The created compliance framework.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ComplianceFramework",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateCustomEmojiInput",
- "description": "Autogenerated input type of CreateCustomEmoji",
- "fields": null,
- "inputFields": [
- {
- "name": "groupPath",
- "description": "Namespace full path the emoji is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "Name of the emoji.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "url",
- "description": "Location of the emoji file.",
- "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": "CreateCustomEmojiPayload",
- "description": "Autogenerated return type of CreateCustomEmoji",
- "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": "customEmoji",
- "description": "The new custom emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CustomEmoji",
- "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": "INPUT_OBJECT",
- "name": "CreateDevopsAdoptionSegmentInput",
- "description": "Autogenerated input type of CreateDevopsAdoptionSegment",
- "fields": null,
- "inputFields": [
- {
- "name": "namespaceId",
- "description": "Namespace ID to set for the segment.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NamespaceID",
- "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": "CreateDevopsAdoptionSegmentPayload",
- "description": "Autogenerated return type of CreateDevopsAdoptionSegment",
- "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": "segment",
- "description": "The segment after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSegment",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateDiffNoteInput",
- "description": "Autogenerated input type of CreateDiffNote",
- "fields": null,
- "inputFields": [
- {
- "name": "noteableId",
- "description": "The global ID of the resource to add a note to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "The confidentiality flag of a note. Default is false.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "position",
- "description": "The position of this note on a diff.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DiffPositionInput",
- "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": "CreateDiffNotePayload",
- "description": "Autogenerated return type of CreateDiffNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateEpicInput",
- "description": "Autogenerated input type of CreateEpic",
- "fields": null,
- "inputFields": [
- {
- "name": "groupPath",
- "description": "The group the epic to mutate is in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "The title of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "Indicates if the epic is confidential.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDateFixed",
- "description": "The start date of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDateFixed",
- "description": "The end date of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDateIsFixed",
- "description": "Indicates start date should be sourced from start_date_fixed field not the issue milestones.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDateIsFixed",
- "description": "Indicates end date should be sourced from due_date_fixed field not the issue milestones.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "addLabelIds",
- "description": "The IDs of labels to be added to the epic.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "removeLabelIds",
- "description": "The IDs of labels to be removed from the epic.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": "CreateEpicPayload",
- "description": "Autogenerated return type of CreateEpic",
- "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": "epic",
- "description": "The created epic.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "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": "INPUT_OBJECT",
- "name": "CreateImageDiffNoteInput",
- "description": "Autogenerated input type of CreateImageDiffNote",
- "fields": null,
- "inputFields": [
- {
- "name": "noteableId",
- "description": "The global ID of the resource to add a note to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "The confidentiality flag of a note. Default is false.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "position",
- "description": "The position of this note on a diff.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DiffImagePositionInput",
- "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": "CreateImageDiffNotePayload",
- "description": "Autogenerated return type of CreateImageDiffNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateIssueInput",
- "description": "Autogenerated input type of CreateIssue",
- "fields": null,
- "inputFields": [
- {
- "name": "description",
- "description": "Description of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "Indicates the issue is confidential.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "locked",
- "description": "Indicates discussion is locked on the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "Project full path the issue is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "The IID (internal ID) of a project issue. Only admins and project owners can modify.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Title of the issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneId",
- "description": "The ID of the milestone to assign to the issue. On update milestone will be removed if set to null.",
- "type": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Labels of the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelIds",
- "description": "The IDs of labels to be added to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "LabelID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp when the issue was created. Available only for admins and project owners.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergeRequestToResolveDiscussionsOf",
- "description": "The IID of a merge request for which to resolve discussions.",
- "type": {
- "kind": "SCALAR",
- "name": "MergeRequestID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "discussionToResolve",
- "description": "The ID of a discussion to resolve. Also pass `merge_request_to_resolve_discussions_of`.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeIds",
- "description": "The array of user IDs to assign to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "UserID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "healthStatus",
- "description": "The desired health status.",
- "type": {
- "kind": "ENUM",
- "name": "HealthStatus",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The weight of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "The ID of an epic to associate the issue with.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "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": "CreateIssuePayload",
- "description": "Autogenerated return type of CreateIssue",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateIterationInput",
- "description": "Autogenerated input type of CreateIteration",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project with which the resource is associated.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "title",
- "description": "The title of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDate",
- "description": "The start date of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDate",
- "description": "The end date of the iteration.",
- "type": {
- "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": "CreateIterationPayload",
- "description": "Autogenerated return type of CreateIteration",
- "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": "iteration",
- "description": "The created iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateNoteInput",
- "description": "Autogenerated input type of CreateNote",
- "fields": null,
- "inputFields": [
- {
- "name": "noteableId",
- "description": "The global ID of the resource to add a note to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "The confidentiality flag of a note. Default is false.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "discussionId",
- "description": "The global ID of the discussion this note is in reply to.",
- "type": {
- "kind": "SCALAR",
- "name": "DiscussionID",
- "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": "CreateNotePayload",
- "description": "Autogenerated return type of CreateNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateRequirementInput",
- "description": "Autogenerated input type of CreateRequirement",
- "fields": null,
- "inputFields": [
- {
- "name": "title",
- "description": "Title of the requirement.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the requirement.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "Full project path the requirement is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": "CreateRequirementPayload",
- "description": "Autogenerated return type of CreateRequirement",
- "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": "requirement",
- "description": "Requirement after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Requirement",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateSnippetInput",
- "description": "Autogenerated input type of CreateSnippet",
- "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": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the snippet.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "visibilityLevel",
- "description": "The visibility level of the snippet.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VisibilityLevelsEnum",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "The project full path the snippet is associated with.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "uploadedFiles",
- "description": "The paths to files uploaded in the snippet description.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "blobActions",
- "description": "Actions to perform over the snippet repository and blobs.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SnippetBlobActionInputType",
- "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": "CreateSnippetPayload",
- "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": [
-
- ],
- "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": "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": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Snippet",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "spam",
- "description": "Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "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,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "CreateTestCaseInput",
- "description": "Autogenerated input type of CreateTestCase",
- "fields": null,
- "inputFields": [
- {
- "name": "title",
- "description": "The test case title.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The test case description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelIds",
- "description": "The IDs of labels to be added to the test case.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "The project full path to create the test case.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": "CreateTestCasePayload",
- "description": "Autogenerated return type of CreateTestCase",
- "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": "testCase",
- "description": "The test case created.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "description": null,
- "fields": [
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "BoardEpic",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicIssue",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "CustomEmoji",
- "description": "A custom emoji uploaded by user",
- "fields": [
- {
- "name": "external",
- "description": "Whether the emoji is an external link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "The ID of the emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "CustomEmojiID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "The name of the emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "The link to file of the emoji.",
- "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": "CustomEmojiConnection",
- "description": "The connection type for CustomEmoji.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CustomEmojiEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "CustomEmoji",
- "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": "CustomEmojiEdge",
- "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": "CustomEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "CustomEmojiID",
- "description": "Identifier of CustomEmoji.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastOnDemandScanCreateInput",
- "description": "Autogenerated input type of DastOnDemandScanCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "dastSiteProfileId",
- "description": "ID of the site profile to be used for the scan.",
- "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 used for the scan.",
- "type": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "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": "DastOnDemandScanCreatePayload",
- "description": "Autogenerated return type of DastOnDemandScanCreate",
- "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": "pipelineUrl",
- "description": "URL of the pipeline that was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "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": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastProfileDeleteInput",
- "description": "Autogenerated input type of DastProfileDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the profile to be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastProfileID",
- "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": "DastProfileDeletePayload",
- "description": "Autogenerated return type of DastProfileDelete",
- "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": "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": "INPUT_OBJECT",
- "name": "DastProfileRunInput",
- "description": "Autogenerated input type of DastProfileRun",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "Full path for the project the scanner profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "ID of the profile to be used for the scan.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastProfileID",
- "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": "DastProfileRunPayload",
- "description": "Autogenerated return type of DastProfileRun",
- "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": "pipelineUrl",
- "description": "URL of the pipeline that was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastProfileUpdateInput",
- "description": "Autogenerated input type of DastProfileUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the profile to be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastProfileID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "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": "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": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dastScannerProfileId",
- "description": "ID of the scanner profile to be associated.",
- "type": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "runAfterUpdate",
- "description": "Run scan using profile after update. 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": "DastProfileUpdatePayload",
- "description": "Autogenerated return type of DastProfileUpdate",
- "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 updated 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 the input argument `runAfterUpdate` to be set to `true` when calling the mutation, otherwise no pipeline will be created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DastScanTypeEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "PASSIVE",
- "description": "Passive DAST scan. This scan will not make active attacks against the target site.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ACTIVE",
- "description": "Active DAST scan. This scan will make active attacks against the target site.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastScannerProfile",
- "description": "Represents a DAST scanner profile",
- "fields": [
- {
- "name": "editPath",
- "description": "Relative web path to the edit page of a scanner profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "globalId",
- "description": "ID of the DAST scanner profile. Deprecated in 13.6: Use `id`.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use `id`. Deprecated in 13.6."
- },
- {
- "name": "id",
- "description": "ID of the DAST scanner profile.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "profileName",
- "description": "Name of the DAST scanner profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scanType",
- "description": "Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "DastScanTypeEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "showDebugMessages",
- "description": "Indicates if debug messages should be included in DAST console output. True to include the debug messages.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "spiderTimeout",
- "description": "The maximum number of minutes allowed for the spider to traverse the site.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetTimeout",
- "description": "The maximum number of seconds allowed for the site under test to respond to a request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "useAjaxSpider",
- "description": "Indicates if the AJAX spider should be used to crawl the target site. True to run the AJAX spider in addition to the traditional spider, and false to run only the traditional spider.",
- "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": "DastScannerProfileConnection",
- "description": "The connection type for DastScannerProfile.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastScannerProfileEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastScannerProfile",
- "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": "DastScannerProfileCreateInput",
- "description": "Autogenerated input type of DastScannerProfileCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the scanner profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "profileName",
- "description": "The name of the scanner profile.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "spiderTimeout",
- "description": "The maximum number of minutes allowed for the spider to traverse the site.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "targetTimeout",
- "description": "The maximum number of seconds allowed for the site under test to respond to a request.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "scanType",
- "description": "Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.",
- "type": {
- "kind": "ENUM",
- "name": "DastScanTypeEnum",
- "ofType": null
- },
- "defaultValue": "PASSIVE"
- },
- {
- "name": "useAjaxSpider",
- "description": "Indicates if the AJAX spider should be used to crawl the target site. True to run the AJAX spider in addition to the traditional spider, and false to run only the traditional spider.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "showDebugMessages",
- "description": "Indicates if debug messages should be included in DAST console output. True to include the debug messages.",
- "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": "DastScannerProfileCreatePayload",
- "description": "Autogenerated return type of DastScannerProfileCreate",
- "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": "globalId",
- "description": "ID of the scanner profile. Deprecated in 13.6: Use `id`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use `id`. Deprecated in 13.6."
- },
- {
- "name": "id",
- "description": "ID of the scanner profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastScannerProfileDeleteInput",
- "description": "Autogenerated input type of DastScannerProfileDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "Full path for the project the scanner profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "ID of the scanner profile to be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "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": "DastScannerProfileDeletePayload",
- "description": "Autogenerated return type of DastScannerProfileDelete",
- "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": "DastScannerProfileEdge",
- "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": "DastScannerProfile",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "description": "Identifier of DastScannerProfile.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastScannerProfileUpdateInput",
- "description": "Autogenerated input type of DastScannerProfileUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the scanner profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "ID of the scanner profile to be updated.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "profileName",
- "description": "The name of the scanner profile.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "spiderTimeout",
- "description": "The maximum number of minutes allowed for the spider to traverse the site.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetTimeout",
- "description": "The maximum number of seconds allowed for the site under test to respond to a request.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanType",
- "description": "Indicates the type of DAST scan that will run. Either a Passive Scan or an Active Scan.",
- "type": {
- "kind": "ENUM",
- "name": "DastScanTypeEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "useAjaxSpider",
- "description": "Indicates if the AJAX spider should be used to crawl the target site. True to run the AJAX spider in addition to the traditional spider, and false to run only the traditional spider.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "showDebugMessages",
- "description": "Indicates if debug messages should be included in DAST console output. True to include the debug messages.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "DastScannerProfileUpdatePayload",
- "description": "Autogenerated return type of DastScannerProfileUpdate",
- "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": "id",
- "description": "ID of the scanner profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastScannerProfileID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteProfile",
- "description": "Represents a DAST Site Profile",
- "fields": [
- {
- "name": "editPath",
- "description": "Relative web path to the edit page of a site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "normalizedTargetUrl",
- "description": "Normalized URL of the target to be scanned.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "profileName",
- "description": "The name of the site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetUrl",
- "description": "The URL of the target to be scanned.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastSiteProfilePermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "validationStatus",
- "description": "The current validation status of the site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "DastSiteProfileValidationStatusEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteProfileConnection",
- "description": "The connection type for DastSiteProfile.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastSiteProfileEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastSiteProfile",
- "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": "DastSiteProfileCreateInput",
- "description": "Autogenerated input type of DastSiteProfileCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "profileName",
- "description": "The name of the site profile.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetUrl",
- "description": "The URL of the target to be scanned.",
- "type": {
- "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": "DastSiteProfileCreatePayload",
- "description": "Autogenerated return type of DastSiteProfileCreate",
- "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": "id",
- "description": "ID of the site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteProfileDeleteInput",
- "description": "Autogenerated input type of DastSiteProfileDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "ID of the site profile to be deleted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "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": "DastSiteProfileDeletePayload",
- "description": "Autogenerated return type of DastSiteProfileDelete",
- "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": "DastSiteProfileEdge",
- "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": "DastSiteProfile",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "description": "Identifier of DastSiteProfile.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteProfilePermissions",
- "description": "Check permissions for the current user on site profile",
- "fields": [
- {
- "name": "createOnDemandDastScan",
- "description": "Indicates the user can perform `create_on_demand_dast_scan` on this resource",
- "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": "INPUT_OBJECT",
- "name": "DastSiteProfileUpdateInput",
- "description": "Autogenerated input type of DastSiteProfileUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "ID of the site profile to be updated.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "profileName",
- "description": "The name of the site profile.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetUrl",
- "description": "The URL of the target to be scanned.",
- "type": {
- "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": "DastSiteProfileUpdatePayload",
- "description": "Autogenerated return type of DastSiteProfileUpdate",
- "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": "id",
- "description": "ID of the site profile.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DastSiteProfileValidationStatusEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NONE",
- "description": "No site validation exists",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PENDING_VALIDATION",
- "description": "Site validation process has not started",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INPROGRESS_VALIDATION",
- "description": "Site validation process is in progress",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PASSED_VALIDATION",
- "description": "Site validation process finished successfully",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FAILED_VALIDATION",
- "description": "Site validation process finished but failed",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteTokenCreateInput",
- "description": "Autogenerated input type of DastSiteTokenCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site token belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetUrl",
- "description": "The URL of the target to be validated.",
- "type": {
- "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": "DastSiteTokenCreatePayload",
- "description": "Autogenerated return type of DastSiteTokenCreate",
- "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": "id",
- "description": "ID of the site token.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastSiteTokenID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "The current validation status of the target.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "DastSiteProfileValidationStatusEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "token",
- "description": "Token string.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DastSiteTokenID",
- "description": "Identifier of DastSiteToken.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteValidation",
- "description": "Represents a DAST Site Validation",
- "fields": [
- {
- "name": "id",
- "description": "Global ID of the site validation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteValidationID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "normalizedTargetUrl",
- "description": "Normalized URL of the target to be validated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the site validation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DastSiteProfileValidationStatusEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteValidationConnection",
- "description": "The connection type for DastSiteValidation.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastSiteValidationEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DastSiteValidation",
- "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": "DastSiteValidationCreateInput",
- "description": "Autogenerated input type of DastSiteValidationCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "fullPath",
- "description": "The project the site profile belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "dastSiteTokenId",
- "description": "ID of the site token.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteTokenID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "validationPath",
- "description": "The path to be requested during validation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "strategy",
- "description": "The validation strategy to be used.",
- "type": {
- "kind": "ENUM",
- "name": "DastSiteValidationStrategyEnum",
- "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": "DastSiteValidationCreatePayload",
- "description": "Autogenerated return type of DastSiteValidationCreate",
- "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": "id",
- "description": "ID of the site validation.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "DastSiteValidationID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "The current validation status.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "DastSiteProfileValidationStatusEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DastSiteValidationEdge",
- "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": "DastSiteValidation",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DastSiteValidationID",
- "description": "Identifier of DastSiteValidation.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "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,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "TEXT_FILE",
- "description": "Text file validation",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HEADER",
- "description": "Header validation",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DataVisualizationColorEnum",
- "description": "Color of the data visualization palette",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "BLUE",
- "description": "Blue color",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ORANGE",
- "description": "Orange color",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "AQUA",
- "description": "Aqua color",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GREEN",
- "description": "Green color",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MAGENTA",
- "description": "Magenta color",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DataVisualizationWeightEnum",
- "description": "Weight of the data visualization palette",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "WEIGHT_50",
- "description": "50 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_100",
- "description": "100 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_200",
- "description": "200 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_300",
- "description": "300 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_400",
- "description": "400 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_500",
- "description": "500 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_600",
- "description": "600 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_700",
- "description": "700 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_800",
- "description": "800 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_900",
- "description": "900 weight",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_950",
- "description": "950 weight",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Date",
- "description": "Date represented in ISO 8601",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DeleteAnnotationInput",
- "description": "Autogenerated input type of DeleteAnnotation",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the annotation to delete.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "MetricsDashboardAnnotationID",
- "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": "DeleteAnnotationPayload",
- "description": "Autogenerated return type of DeleteAnnotation",
- "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": "INPUT_OBJECT",
- "name": "DeleteDevopsAdoptionSegmentInput",
- "description": "Autogenerated input type of DeleteDevopsAdoptionSegment",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the segment.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AnalyticsDevopsAdoptionSegmentID",
- "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": "DeleteDevopsAdoptionSegmentPayload",
- "description": "Autogenerated return type of DeleteDevopsAdoptionSegment",
- "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": "DeleteJobsResponse",
- "description": "The response from the AdminSidekiqQueuesDeleteJobs mutation",
- "fields": [
- {
- "name": "completed",
- "description": "Whether or not the entire queue was processed in time; if not, retrying the same request is safe.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deletedJobs",
- "description": "The number of matching jobs deleted.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "queueSize",
- "description": "The queue size after processing.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Design",
- "description": "A single design",
- "fields": [
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffRefs",
- "description": "The diff refs for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "event",
- "description": "How this design was changed in the current version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DesignVersionEvent",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filename",
- "description": "The filename of the design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "The full path to the design file.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "The ID of this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "image",
- "description": "The URL of the full-sized image.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "imageV432x230",
- "description": "The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "The issue the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notesCount",
- "description": "The total count of user-created notes for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "versions",
- "description": "All versions related to this design ordered newest first.",
- "args": [
- {
- "name": "earlierOrEqualToSha",
- "description": "The SHA256 of the most recent acceptable version.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "earlierOrEqualToId",
- "description": "The Global ID of the most recent acceptable version.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignVersionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "DesignFields",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "description": "A design pinned to a specific version. The image field reflects the design as of the associated version",
- "fields": [
- {
- "name": "design",
- "description": "The underlying design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffRefs",
- "description": "The diff refs for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "event",
- "description": "How this design was changed in the current version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DesignVersionEvent",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filename",
- "description": "The filename of the design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "The full path to the design file.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "The ID of this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "image",
- "description": "The URL of the full-sized image.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "imageV432x230",
- "description": "The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "The issue the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notesCount",
- "description": "The total count of user-created notes for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "The version this design-at-versions is pinned to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "DesignFields",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignAtVersionConnection",
- "description": "The connection type for DesignAtVersion.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignAtVersionEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "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": "DesignAtVersionEdge",
- "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": "DesignAtVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignCollection",
- "description": "A collection of designs",
- "fields": [
- {
- "name": "copyState",
- "description": "Copy state of the design collection.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "DesignCollectionCopyState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "design",
- "description": "Find a specific design.",
- "args": [
- {
- "name": "id",
- "description": "Find a design by its ID.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "filename",
- "description": "Find a design by its filename.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designAtVersion",
- "description": "Find a design as of a version.",
- "args": [
- {
- "name": "id",
- "description": "The Global ID of the design at this version.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignAtVersionID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designs",
- "description": "All designs for the design collection.",
- "args": [
- {
- "name": "ids",
- "description": "Filters designs by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "filenames",
- "description": "Filters designs by their filename.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "atVersion",
- "description": "Filters designs to only those that existed at the version. If argument is omitted or nil then all designs will reflect the latest version",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "Issue associated with the design collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project associated with the design collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "A specific version.",
- "args": [
- {
- "name": "sha",
- "description": "The SHA256 of a specific version.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "The Global ID of the version.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "versions",
- "description": "All versions related to all designs, ordered newest first.",
- "args": [
- {
- "name": "earlierOrEqualToSha",
- "description": "The SHA256 of the most recent acceptable version.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "earlierOrEqualToId",
- "description": "The Global ID of the most recent acceptable version.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignVersionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DesignCollectionCopyState",
- "description": "Copy state of a DesignCollection",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "READY",
- "description": "The DesignCollection has no copy in progress",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "IN_PROGRESS",
- "description": "The DesignCollection is being copied",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ERROR",
- "description": "The DesignCollection encountered an error during a copy",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignConnection",
- "description": "The connection type for Design.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Design",
- "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": "DesignEdge",
- "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": "Design",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "DesignFields",
- "description": null,
- "fields": [
- {
- "name": "diffRefs",
- "description": "The diff refs for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "event",
- "description": "How this design was changed in the current version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DesignVersionEvent",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filename",
- "description": "The filename of the design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "The full path to the design file.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "The ID of this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "image",
- "description": "The URL of the full-sized image.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "imageV432x230",
- "description": "The URL of the design resized to fit within the bounds of 432x230. This will be `null` if the image has not been generated",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "The issue the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notesCount",
- "description": "The total count of user-created notes for this design.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project the design belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "DesignManagement",
- "description": null,
- "fields": [
- {
- "name": "designAtVersion",
- "description": "Find a design as of a version.",
- "args": [
- {
- "name": "id",
- "description": "The Global ID of the design at this version.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignAtVersionID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "Find a version.",
- "args": [
- {
- "name": "id",
- "description": "The Global ID of the version.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DesignManagementDeleteInput",
- "description": "Autogenerated input type of DesignManagementDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project where the issue is to upload designs for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "The IID of the issue to modify designs for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "filenames",
- "description": "The filenames of the designs to delete.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignManagementDeletePayload",
- "description": "Autogenerated return type of DesignManagementDelete",
- "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": "version",
- "description": "The new version in which the designs are deleted.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DesignManagementDesignAtVersionID",
- "description": "Identifier of DesignManagement::DesignAtVersion.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "description": "Identifier of DesignManagement::Design.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DesignManagementMoveInput",
- "description": "Autogenerated input type of DesignManagementMove",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the design to move.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "previous",
- "description": "ID of the immediately preceding design.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "next",
- "description": "ID of the immediately following design.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "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": "DesignManagementMovePayload",
- "description": "Autogenerated return type of DesignManagementMove",
- "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": "designCollection",
- "description": "The current state of the collection.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignCollection",
- "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": "INPUT_OBJECT",
- "name": "DesignManagementUploadInput",
- "description": "Autogenerated input type of DesignManagementUpload",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project where the issue is to upload designs for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "The IID of the issue to modify designs for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "files",
- "description": "The files to upload.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Upload",
- "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": "DesignManagementUploadPayload",
- "description": "Autogenerated return type of DesignManagementUpload",
- "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": "designs",
- "description": "The designs that were uploaded by the mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Design",
- "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": "skippedDesigns",
- "description": "Any designs that were skipped from the upload due to there being no change to their content since their last version",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DesignManagementVersionID",
- "description": "Identifier of DesignManagement::Version.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "description": "A specific version in which designs were added, modified or deleted",
- "fields": [
- {
- "name": "designAtVersion",
- "description": "A particular design as of this version, provided it is visible at this version.",
- "args": [
- {
- "name": "id",
- "description": "The ID of the DesignAtVersion.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignAtVersionID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "designId",
- "description": "The ID of a specific design.",
- "type": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "filename",
- "description": "The filename of a specific design.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignAtVersion",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designs",
- "description": "All designs that were changed in the version.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designsAtVersion",
- "description": "All designs that are visible at this version, as of this version.",
- "args": [
- {
- "name": "ids",
- "description": "Filters designs by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DesignManagementDesignID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "filenames",
- "description": "Filters designs by their filename.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignAtVersionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the design version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "SHA of the design version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DesignVersionConnection",
- "description": "The connection type for DesignVersion.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignVersionEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignVersion",
- "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": "DesignVersionEdge",
- "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": "DesignVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DesignVersionEvent",
- "description": "Mutation event of a design within a version",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NONE",
- "description": "No change",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATION",
- "description": "A creation event",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MODIFICATION",
- "description": "A modification event",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DELETION",
- "description": "A deletion event",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DestroyBoardInput",
- "description": "Autogenerated input type of DestroyBoard",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the board to destroy.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "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": "INPUT_OBJECT",
- "name": "DestroyBoardListInput",
- "description": "Autogenerated input type of DestroyBoardList",
- "fields": null,
- "inputFields": [
- {
- "name": "listId",
- "description": "Global ID of the list to destroy. Only label lists are accepted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ListID",
- "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": "DestroyBoardListPayload",
- "description": "Autogenerated return type of DestroyBoardList",
- "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": "list",
- "description": "The list after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DestroyBoardPayload",
- "description": "Autogenerated return type of DestroyBoard",
- "fields": [
- {
- "name": "board",
- "description": "The board after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "DestroyComplianceFrameworkInput",
- "description": "Autogenerated input type of DestroyComplianceFramework",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the compliance framework to destroy.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ComplianceManagementFrameworkID",
- "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": "DestroyComplianceFrameworkPayload",
- "description": "Autogenerated return type of DestroyComplianceFramework",
- "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": "INPUT_OBJECT",
- "name": "DestroyContainerRepositoryInput",
- "description": "Autogenerated input type of DestroyContainerRepository",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the container repository.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ContainerRepositoryID",
- "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": "DestroyContainerRepositoryPayload",
- "description": "Autogenerated return type of DestroyContainerRepository",
- "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": "containerRepository",
- "description": "The container repository policy after scheduling the deletion.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ContainerRepository",
- "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": "INPUT_OBJECT",
- "name": "DestroyContainerRepositoryTagsInput",
- "description": "Autogenerated input type of DestroyContainerRepositoryTags",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the container repository.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ContainerRepositoryID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "tagNames",
- "description": "Container repository tag(s) to delete. Total number can't be greater than 20",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DestroyContainerRepositoryTagsPayload",
- "description": "Autogenerated return type of DestroyContainerRepositoryTags",
- "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": "deletedTagNames",
- "description": "Deleted container repository tags.",
- "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": "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": "INPUT_OBJECT",
- "name": "DestroyNoteInput",
- "description": "Autogenerated input type of DestroyNote",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the note to destroy.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteID",
- "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": "DestroyNotePayload",
- "description": "Autogenerated return type of DestroyNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DestroySnippetInput",
- "description": "Autogenerated input type of DestroySnippet",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the snippet to destroy.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "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": "DestroySnippetPayload",
- "description": "Autogenerated return type of DestroySnippet",
- "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": "snippet",
- "description": "The snippet after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Snippet",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DetailedStatus",
- "description": null,
- "fields": [
- {
- "name": "action",
- "description": "Action information for the status. This includes method, button title, icon, path, and title.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "StatusAction",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detailsPath",
- "description": "Path of the details for the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "favicon",
- "description": "Favicon of the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group of the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasDetails",
- "description": "Indicates if the status has further details.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "icon",
- "description": "Icon of the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "Label of the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "text",
- "description": "Text of the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tooltip",
- "description": "Tooltip associated with the status.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSegment",
- "description": "Segment",
- "fields": [
- {
- "name": "id",
- "description": "ID of the segment.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "latestSnapshot",
- "description": "The latest adoption metrics for the segment.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSnapshot",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "namespace",
- "description": "Segment namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Namespace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSegmentConnection",
- "description": "The connection type for DevopsAdoptionSegment.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSegmentEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSegment",
- "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": "DevopsAdoptionSegmentEdge",
- "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": "DevopsAdoptionSegment",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DevopsAdoptionSnapshot",
- "description": "Snapshot",
- "fields": [
- {
- "name": "deploySucceeded",
- "description": "At least one deployment succeeded.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "endTime",
- "description": "The end time for the snapshot where the data points were collected.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueOpened",
- "description": "At least one issue was opened.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestApproved",
- "description": "At least one merge request was approved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestOpened",
- "description": "At least one merge request was opened.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineSucceeded",
- "description": "At least one pipeline succeeded.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "recordedAt",
- "description": "The time the snapshot was recorded.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "runnerConfigured",
- "description": "At least one runner was used.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "securityScanSucceeded",
- "description": "At least one security scan succeeded.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startTime",
- "description": "The start time for the snapshot where the data points were collected.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DiffImagePositionInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "headSha",
- "description": "SHA of the HEAD at the time the comment was made.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "baseSha",
- "description": "Merge base of the branch the comment was made on.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startSha",
- "description": "SHA of the branch being compared against.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "paths",
- "description": "The paths of the file that was changed. Both of the properties of this input are optional, but at least one of them is required",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DiffPathsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "x",
- "description": "X position of the note.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "y",
- "description": "Y position of the note.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "width",
- "description": "Total width of the image.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "height",
- "description": "Total height of the image.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DiffNoteID",
- "description": "Identifier of DiffNote.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DiffPathsInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "oldPath",
- "description": "The path of the file on the start sha.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "newPath",
- "description": "The path of the file on the head sha.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DiffPosition",
- "description": null,
- "fields": [
- {
- "name": "diffRefs",
- "description": "Information about the branch, HEAD, and base at the time of commenting.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filePath",
- "description": "Path of the file that was changed.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "height",
- "description": "Total height of the image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "newLine",
- "description": "Line on HEAD SHA that was changed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "newPath",
- "description": "Path of the file on the HEAD SHA.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "oldLine",
- "description": "Line on start SHA that was changed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "oldPath",
- "description": "Path of the file on the start SHA.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "positionType",
- "description": "Type of file the position refers to.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DiffPositionType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "width",
- "description": "Total width of the image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "x",
- "description": "X position of the note.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "y",
- "description": "Y position of the note.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DiffPositionInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "headSha",
- "description": "SHA of the HEAD at the time the comment was made.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "baseSha",
- "description": "Merge base of the branch the comment was made on.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startSha",
- "description": "SHA of the branch being compared against.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "paths",
- "description": "The paths of the file that was changed. Both of the properties of this input are optional, but at least one of them is required",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DiffPathsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "oldLine",
- "description": "Line on start SHA that was changed.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "newLine",
- "description": "Line on HEAD SHA that was changed.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "DiffPositionType",
- "description": "Type of file the position refers to",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "text",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "image",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "description": null,
- "fields": [
- {
- "name": "baseSha",
- "description": "Merge base of the branch the comment was made on.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "headSha",
- "description": "SHA of the HEAD at the time the comment was made.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startSha",
- "description": "SHA of the branch being compared against.",
- "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": "DiffStats",
- "description": "Changes to a single file",
- "fields": [
- {
- "name": "additions",
- "description": "Number of lines added to this file.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deletions",
- "description": "Number of lines deleted from this file.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "File path, relative to repository root.",
- "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": "DiffStatsSummary",
- "description": "Aggregated summary of changes",
- "fields": [
- {
- "name": "additions",
- "description": "Number of lines added.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "changes",
- "description": "Number of lines changed.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deletions",
- "description": "Number of lines deleted.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fileCount",
- "description": "Number of files changed.",
- "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": "Discussion",
- "description": null,
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp of the discussion's creation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of this discussion.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DiscussionID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes in the discussion.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "replyId",
- "description": "ID used to reply to this discussion.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DiscussionID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvable",
- "description": "Indicates if the object can be resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolved",
- "description": "Indicates if the object is resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedAt",
- "description": "Timestamp of when the object was resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedBy",
- "description": "User who resolved the object.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "ResolvableInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "description": "The connection type for Discussion.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Discussion",
- "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": "DiscussionEdge",
- "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": "Discussion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "DiscussionID",
- "description": "Identifier of Discussion.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "DiscussionToggleResolveInput",
- "description": "Autogenerated input type of DiscussionToggleResolve",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the discussion.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DiscussionID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "resolve",
- "description": "Will resolve the discussion when true, and unresolve the discussion when false.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "DiscussionToggleResolvePayload",
- "description": "Autogenerated return type of DiscussionToggleResolve",
- "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": "discussion",
- "description": "The discussion after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Discussion",
- "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": "INPUT_OBJECT",
- "name": "DismissVulnerabilityInput",
- "description": "Autogenerated input type of DismissVulnerability",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be dismissed.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "comment",
- "description": "Comment why vulnerability should be dismissed.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dismissalReason",
- "description": "Reason why vulnerability should be dismissed.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityDismissalReason",
- "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": "DismissVulnerabilityPayload",
- "description": "Autogenerated return type of DismissVulnerability",
- "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": "vulnerability",
- "description": "The vulnerability after dismissal.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "Entry",
- "description": null,
- "fields": [
- {
- "name": "flatPath",
- "description": "Flat path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "Last commit SHA for the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of tree entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EntryType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "Blob",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Submodule",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "TreeEntry",
- "ofType": null
- }
- ]
- },
- {
- "kind": "ENUM",
- "name": "EntryType",
- "description": "Type of a tree entry",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "tree",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blob",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commit",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Environment",
- "description": "Describes where code is deployed for a project",
- "fields": [
- {
- "name": "id",
- "description": "ID of the environment.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "latestOpenedMostSevereAlert",
- "description": "The most severe open alert for the environment. If multiple alerts have equal severity, the most recent is returned.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "metricsDashboard",
- "description": "Metrics dashboard schema for the environment.",
- "args": [
- {
- "name": "path",
- "description": "Path to a file which defines metrics dashboard eg: 'config/prometheus/common_metrics.yml'.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MetricsDashboard",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Human-readable name of the environment.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "The path to the environment.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the environment, for example: available/stopped.",
- "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": "EnvironmentConnection",
- "description": "The connection type for Environment.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EnvironmentEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Environment",
- "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": "EnvironmentEdge",
- "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": "Environment",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "EnvironmentID",
- "description": "Identifier of Environment.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "EnvironmentsCanaryIngressUpdateInput",
- "description": "Autogenerated input type of EnvironmentsCanaryIngressUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the environment to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "EnvironmentID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The weight of the Canary Ingress.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "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": "EnvironmentsCanaryIngressUpdatePayload",
- "description": "Autogenerated return type of EnvironmentsCanaryIngressUpdate",
- "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": "Epic",
- "description": "Represents an epic",
- "fields": [
- {
- "name": "author",
- "description": "Author of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "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.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the epic, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of epics, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter epics by state.",
- "type": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for epic title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List epics by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "EpicSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter epics by author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Filter epics by labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter epics by milestone title, computed from epic's issues.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iidStartsWith",
- "description": "Filter epics by IID for autocomplete.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeDescendantGroups",
- "description": "Include epics from descendant groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "true"
- },
- {
- "name": "confidential",
- "description": "Filter epics by given confidentiality.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "EpicConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedAt",
- "description": "Timestamp of when the epic was closed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confidential",
- "description": "Indicates if the epic is confidential.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the epic was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descendantCounts",
- "description": "Number of open and closed descendant epics and issues.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicDescendantCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descendantWeightSum",
- "description": "Total weight of open and closed issues in the epic and its descendants.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicDescendantWeights",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downvotes",
- "description": "Number of downvotes the epic has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateFixed",
- "description": "Fixed due date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateFromMilestones",
- "description": "Inherited due date of the epic from milestones.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDateIsFixed",
- "description": "Indicates if the due date has been manually set.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "events",
- "description": "A list of events associated with the object.",
- "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": "EventConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group to which the epic belongs.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasChildren",
- "description": "Indicates if the epic has children.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasIssues",
- "description": "Indicates if the epic has direct issues.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasParent",
- "description": "Indicates if the epic has a parent epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "healthStatus",
- "description": "Current health status of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicHealthStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issues",
- "description": "A list of issues 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": "EpicIssueConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels assigned to 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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "parent",
- "description": "Parent epic of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "List of participants for 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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reference",
- "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.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relationPath",
- "description": "URI path of the epic-issue relationship.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relativePosition",
- "description": "The relative position of the epic in the epic tree.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDate",
- "description": "Start date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateFixed",
- "description": "Fixed start date of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateFromMilestones",
- "description": "Inherited start date of the epic from milestones.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDateIsFixed",
- "description": "Indicates if the start date has been manually set.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscribed",
- "description": "Indicates the currently logged in user is subscribed to the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the epic was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upvotes",
- "description": "Number of upvotes the epic has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userDiscussionsCount",
- "description": "Number of user discussions in the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "Number of user notes of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the epic.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "Eventable",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "EpicAddIssueInput",
- "description": "Autogenerated input type of EpicAddIssue",
- "fields": null,
- "inputFields": [
- {
- "name": "iid",
- "description": "The IID of the epic to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupPath",
- "description": "The group the epic to mutate belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "The full path of the project the issue belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "issueIid",
- "description": "The IID of the issue to be added.",
- "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": "EpicAddIssuePayload",
- "description": "Autogenerated return type of EpicAddIssue",
- "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": "epic",
- "description": "The epic after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicIssue",
- "description": "The epic-issue relation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicIssue",
- "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": "EpicBoard",
- "description": "Represents an epic board",
- "fields": [
- {
- "name": "id",
- "description": "Global ID of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardsEpicBoardID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lists",
- "description": "Epic board lists.",
- "args": [
- {
- "name": "id",
- "description": "Find an epic board list by ID.",
- "type": {
- "kind": "SCALAR",
- "name": "BoardsEpicListID",
- "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": "EpicListConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the board.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicBoardConnection",
- "description": "The connection type for EpicBoard.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicBoardEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicBoard",
- "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": "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.",
- "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": "EpicBoard",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "EpicBoardListCreateInput",
- "description": "Autogenerated input type of EpicBoardListCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "backlog",
- "description": "Create the backlog list.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelId",
- "description": "Global ID of an existing label.",
- "type": {
- "kind": "SCALAR",
- "name": "LabelID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "boardId",
- "description": "Global ID of the issue board to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardsEpicBoardID",
- "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": "EpicBoardListCreatePayload",
- "description": "Autogenerated return type of EpicBoardListCreate",
- "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": "list",
- "description": "Epic list in the epic board.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicConnection",
- "description": "The connection type for Epic.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Epic",
- "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": "EpicDescendantCount",
- "description": "Counts of descendent epics",
- "fields": [
- {
- "name": "closedEpics",
- "description": "Number of closed child epics.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedIssues",
- "description": "Number of closed epic issues.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openedEpics",
- "description": "Number of opened child epics.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openedIssues",
- "description": "Number of opened epic issues.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicDescendantWeights",
- "description": "Total weight of open and closed descendant issues",
- "fields": [
- {
- "name": "closedIssues",
- "description": "Total weight of completed (closed) issues in this epic, including epic descendants.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openedIssues",
- "description": "Total weight of opened issues in this epic, including epic descendants.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicEdge",
- "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": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicHealthStatus",
- "description": "Health status of child issues",
- "fields": [
- {
- "name": "issuesAtRisk",
- "description": "Number of issues at risk.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issuesNeedingAttention",
- "description": "Number of issues that need attention.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issuesOnTrack",
- "description": "Number of issues on track.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "EpicID",
- "description": "Identifier of Epic.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicIssue",
- "description": "Relationship between an epic and an issue",
- "fields": [
- {
- "name": "alertManagementAlert",
- "description": "Alert associated to this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "assignees",
- "description": "Assignees of the issue.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "User that created the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blocked",
- "description": "Indicates the issue is blocked.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blockedByCount",
- "description": "Count of issues blocking this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedAt",
- "description": "Timestamp of when the issue was closed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confidential",
- "description": "Indicates the issue is confidential.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNoteEmail",
- "description": "User specific email address for the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the issue was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designCollection",
- "description": "Collection of design images associated with this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignCollection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussionLocked",
- "description": "Indicates discussion is locked on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downvotes",
- "description": "Number of downvotes the issue has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "emailsDisabled",
- "description": "Indicates if a project has email notifications disabled: `true` if email notifications are disabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epic",
- "description": "Epic to which this issue belongs.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicIssueId",
- "description": "ID of the epic-issue relation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "healthStatus",
- "description": "Current health status.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "HealthStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "humanTimeEstimate",
- "description": "Human-readable time estimate of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "humanTotalTimeSpent",
- "description": "Human-readable total time reported as spent on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Global ID of the epic-issue relation.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iteration",
- "description": "Iteration of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels of the issue.",
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "metricImages",
- "description": "Metric images associated to the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MetricImage",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "Milestone of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "moved",
- "description": "Indicates if issue got moved from other project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "movedTo",
- "description": "Updated Issue after it got moved to another project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "List of participants in the issue.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reference",
- "description": "Internal reference of the issue. Returned in shortened format by default.",
- "args": [
- {
- "name": "full",
- "description": "Boolean option specifying whether the reference should be returned in full.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relationPath",
- "description": "URI path of the epic-issue relation.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relativePosition",
- "description": "Relative position of the issue (used for positioning in epic tree and issue boards).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity",
- "description": "Severity level of the incident.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "IssuableSeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "slaDueAt",
- "description": "Timestamp of when the issue SLA expires.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "statusPagePublishedIncident",
- "description": "Indicates whether an issue is published to the status page.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscribed",
- "description": "Indicates the currently logged in user is subscribed to the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "taskCompletionStatus",
- "description": "Task completion status of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TaskCompletionStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timeEstimate",
- "description": "Time estimate of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "titleHtml",
- "description": "The GitLab Flavored Markdown rendering of `title`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalTimeSpent",
- "description": "Total time reported as spent on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the issue was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedBy",
- "description": "User that last updated the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upvotes",
- "description": "Number of upvotes the issue has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userDiscussionsCount",
- "description": "Number of user discussions in the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "Number of user notes of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IssuePermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weight",
- "description": "Weight of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicIssueConnection",
- "description": "The connection type for EpicIssue.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicIssueEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicIssue",
- "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
- },
- {
- "name": "weight",
- "description": "Total weight of issues collection.",
- "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": "EpicIssueEdge",
- "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": "EpicIssue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicList",
- "description": "Represents an epic board list",
- "fields": [
- {
- "name": "epics",
- "description": "List epics.",
- "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": "EpicConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Global ID of the board list.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardsEpicListID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "Label of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "listType",
- "description": "Type of the list.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "position",
- "description": "Position of the list within the board.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the list.",
- "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": "EpicListConnection",
- "description": "The connection type for EpicList.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicListEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EpicList",
- "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": "EpicListEdge",
- "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": "EpicList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicPermissions",
- "description": "Check permissions for the current user on an epic",
- "fields": [
- {
- "name": "adminEpic",
- "description": "Indicates the user can perform `admin_epic` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmoji",
- "description": "Indicates the user can perform `award_emoji` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createEpic",
- "description": "Indicates the user can perform `create_epic` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": "Indicates the user can perform `create_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyEpic",
- "description": "Indicates the user can perform `destroy_epic` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readEpic",
- "description": "Indicates the user can perform `read_epic` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readEpicIid",
- "description": "Indicates the user can perform `read_epic_iid` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateEpic",
- "description": "Indicates the user can perform `update_epic` on this resource",
- "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": "INPUT_OBJECT",
- "name": "EpicSetSubscriptionInput",
- "description": "Autogenerated input type of EpicSetSubscription",
- "fields": null,
- "inputFields": [
- {
- "name": "iid",
- "description": "The IID of the epic to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupPath",
- "description": "The group the epic to mutate belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "subscribedState",
- "description": "The desired state of the subscription.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "EpicSetSubscriptionPayload",
- "description": "Autogenerated return type of EpicSetSubscription",
- "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": "epic",
- "description": "The epic after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "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": "EpicSort",
- "description": "Roadmap sort values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "start_date_desc",
- "description": "Start date at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "start_date_asc",
- "description": "Start date at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "end_date_desc",
- "description": "End date at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "end_date_asc",
- "description": "End date at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "EpicState",
- "description": "State of an epic",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "all",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "opened",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "EpicStateEvent",
- "description": "State event of an epic",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "REOPEN",
- "description": "Reopen the epic",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CLOSE",
- "description": "Close the epic",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "EpicTreeNodeFieldsInputType",
- "description": "A node of an epic tree.",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the epic_issue or epic that is being moved.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "EpicTreeSortingID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "adjacentReferenceId",
- "description": "The ID of the epic_issue or issue that the actual epic or issue is switched with.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicTreeSortingID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "relativePosition",
- "description": "The type of the switch, after or before allowed.",
- "type": {
- "kind": "ENUM",
- "name": "MoveType",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "newParentId",
- "description": "ID of the new parent epic.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "EpicTreeReorderInput",
- "description": "Autogenerated input type of EpicTreeReorder",
- "fields": null,
- "inputFields": [
- {
- "name": "baseEpicId",
- "description": "The ID of the base epic of the tree.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "EpicID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "moved",
- "description": "Parameters for updating the tree positions.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EpicTreeNodeFieldsInputType",
- "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": "EpicTreeReorderPayload",
- "description": "Autogenerated return type of EpicTreeReorder",
- "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": "SCALAR",
- "name": "EpicTreeSortingID",
- "description": "Identifier of EpicTreeSorting.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "EpicWildcardId",
- "description": "Epic ID wildcard values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NONE",
- "description": "No epic is assigned",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ANY",
- "description": "Any epic is assigned",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Event",
- "description": "Representing an event",
- "fields": [
- {
- "name": "action",
- "description": "Action of the event.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EventAction",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "Author of this event.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "When this event was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the event.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "When this event was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "EventAction",
- "description": "Event action",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CREATED",
- "description": "Created action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED",
- "description": "Updated action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CLOSED",
- "description": "Closed action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REOPENED",
- "description": "Reopened action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PUSHED",
- "description": "Pushed action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COMMENTED",
- "description": "Commented action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MERGED",
- "description": "Merged action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "JOINED",
- "description": "Joined action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LEFT",
- "description": "Left action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DESTROYED",
- "description": "Destroyed action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EXPIRED",
- "description": "Expired action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "APPROVED",
- "description": "Approved action",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ARCHIVED",
- "description": "Archived action",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "EventConnection",
- "description": "The connection type for Event.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "EventEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Event",
- "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": "EventEdge",
- "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": "Event",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "Eventable",
- "description": null,
- "fields": [
- {
- "name": "events",
- "description": "A list of events associated with the object.",
- "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": "EventConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "BoardEpic",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- }
- ]
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ExportRequirementsInput",
- "description": "Autogenerated input type of ExportRequirements",
- "fields": null,
- "inputFields": [
- {
- "name": "sort",
- "description": "List requirements by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "Sort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter requirements by state.",
- "type": {
- "kind": "ENUM",
- "name": "RequirementState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for requirement title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter requirements by author username.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "Full project path the requirements are associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ExportRequirementsPayload",
- "description": "Autogenerated return type of ExportRequirements",
- "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": "ExternalIssue",
- "description": "Represents an external issue",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp of when the issue was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalTracker",
- "description": "Type of external tracker.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relativeReference",
- "description": "Relative reference of the issue in the external tracker.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the issue in the external tracker.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the issue in the external tracker.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the issue was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "URL to the issue in the external tracker.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Float",
- "description": "Represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "GeoNode",
- "description": null,
- "fields": [
- {
- "name": "containerRepositoriesMaxCapacity",
- "description": "The maximum concurrency of container repository sync for this secondary node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enabled",
- "description": "Indicates whether this Geo node is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filesMaxCapacity",
- "description": "The maximum concurrency of LFS/attachment backfill for this secondary node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of this GeoNode.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "internalUrl",
- "description": "The URL defined on the primary node that secondary nodes should use to contact it.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestDiffRegistries",
- "description": "Find merge request diff registries on this Geo node.",
- "args": [
- {
- "name": "ids",
- "description": "Filters registries by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "MergeRequestDiffRegistryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "minimumReverificationInterval",
- "description": "The interval (in days) in which the repository verification is valid. Once expired, it will be reverified.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "The unique identifier for this Geo node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packageFileRegistries",
- "description": "Package file registries of the GeoNode.",
- "args": [
- {
- "name": "ids",
- "description": "Filters registries by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "PackageFileRegistryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "primary",
- "description": "Indicates whether this Geo node is the primary.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reposMaxCapacity",
- "description": "The maximum concurrency of repository backfill for this secondary node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "selectiveSyncNamespaces",
- "description": "The namespaces that should be synced, if `selective_sync_type` == `namespaces`.",
- "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": "NamespaceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "selectiveSyncShards",
- "description": "The repository storages whose projects should be synced, if `selective_sync_type` == `shards`.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "selectiveSyncType",
- "description": "Indicates if syncing is limited to only specific groups, or shards.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippetRepositoryRegistries",
- "description": "Find snippet repository registries on this Geo node.",
- "args": [
- {
- "name": "ids",
- "description": "Filters registries by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "SnippetRepositoryRegistryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "syncObjectStorage",
- "description": "Indicates if this secondary node will replicate blobs in Object Storage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "terraformStateVersionRegistries",
- "description": "Find terraform state version registries on this Geo node.",
- "args": [
- {
- "name": "ids",
- "description": "Filters registries by their ID.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "TerraformStateVersionRegistryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "The user-facing URL for this Geo node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "verificationMaxCapacity",
- "description": "The maximum concurrency of repository verification for this secondary node.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "GitlabErrorTrackingDetailedErrorID",
- "description": "Identifier of Gitlab::ErrorTracking::DetailedError.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "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.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enabled",
- "description": "Indicates whether Grafana integration is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "grafanaUrl",
- "description": "URL for the Grafana host for the Grafana integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Internal ID of the Grafana integration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of the issue's last activity.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Group",
- "description": null,
- "fields": [
- {
- "name": "actualRepositorySizeLimit",
- "description": "Size limit for repositories in the namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "additionalPurchasedStorageSize",
- "description": "Additional storage purchased for the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "autoDevopsEnabled",
- "description": "Indicates whether Auto DevOps is enabled for all projects within this group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "avatarUrl",
- "description": "Avatar URL of the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "board",
- "description": "A single board of the group.",
- "args": [
- {
- "name": "id",
- "description": "The board's ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "boards",
- "description": "Boards of the group.",
- "args": [
- {
- "name": "id",
- "description": "Find a board by its ID.",
- "type": {
- "kind": "SCALAR",
- "name": "BoardID",
- "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": "BoardConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "codeCoverageActivities",
- "description": "Represents the code coverage activity for this group.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch code coverage activity (maximum time window is set to 90 days).",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Date",
- "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": "CodeCoverageActivityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "complianceFrameworks",
- "description": "Compliance frameworks available to projects in this namespace. Available only when feature flag `ff_custom_compliance_frameworks` is enabled.",
- "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
- },
- {
- "name": "id",
- "description": "Global ID of a specific compliance framework to return.",
- "type": {
- "kind": "SCALAR",
- "name": "ComplianceManagementFrameworkID",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ComplianceFrameworkConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRepositories",
- "description": "Container repositories of the group.",
- "args": [
- {
- "name": "name",
- "description": "Filter the container repositories by their name.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort container repositories by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositorySort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "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": "ContainerRepositoryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRepositoriesCount",
- "description": "Number of container repositories in the group.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containsLockedProjects",
- "description": "Includes at least one project where the repository size exceeds the limit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "customEmoji",
- "description": "Custom emoji within this namespace. Available only when feature flag `custom_emoji` is enabled.",
- "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": "CustomEmojiConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "emailsDisabled",
- "description": "Indicates if a group has email notifications disabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epic",
- "description": "Find a single epic.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the epic, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of epics, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter epics by state.",
- "type": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for epic title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List epics by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "EpicSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter epics by author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Filter epics by labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter epics by milestone title, computed from epic's issues.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iidStartsWith",
- "description": "Filter epics by IID for autocomplete.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeDescendantGroups",
- "description": "Include epics from descendant groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "true"
- },
- {
- "name": "confidential",
- "description": "Filter epics by given confidentiality.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicBoard",
- "description": "Find a single epic board.",
- "args": [
- {
- "name": "id",
- "description": "Find an epic board by ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardsEpicBoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicBoard",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicBoards",
- "description": "Find epic boards.",
- "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": "EpicBoardConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epics",
- "description": "Find epics.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the epic, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of epics, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter epics by state.",
- "type": {
- "kind": "ENUM",
- "name": "EpicState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for epic title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List epics by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "EpicSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter epics by author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Filter epics by labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter epics by milestone title, computed from epic's issues.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iidStartsWith",
- "description": "Filter epics by IID for autocomplete.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeDescendantGroups",
- "description": "Include epics from descendant groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "true"
- },
- {
- "name": "confidential",
- "description": "Filter epics by given confidentiality.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "EpicConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicsEnabled",
- "description": "Indicates if Epics are enabled for namespace",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullName",
- "description": "Full name of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "Full path of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groupMembers",
- "description": "A membership of a user within this group.",
- "args": [
- {
- "name": "search",
- "description": "Search query.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "relations",
- "description": "Filter members by the given member relations.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "GroupMemberRelation",
- "ofType": null
- }
- }
- },
- "defaultValue": "[DIRECT, INHERITED]"
- },
- {
- "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": "GroupMemberConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groupTimelogsEnabled",
- "description": "Indicates if Group timelogs are enabled for namespace",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "isTemporaryStorageIncreaseEnabled",
- "description": "Status of the temporary storage increase.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issues",
- "description": "Issues for projects in this group.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the issue. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of issues. For example, [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Labels applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Milestone applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "Usernames of users assigned to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "ID of a user assigned to the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdBefore",
- "description": "Issues created before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdAfter",
- "description": "Issues created after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedBefore",
- "description": "Issues updated before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedAfter",
- "description": "Issues updated after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedBefore",
- "description": "Issues closed before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedAfter",
- "description": "Issues closed after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for issue title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "types",
- "description": "Filter issues by the given issue types.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Current state of this issue.",
- "type": {
- "kind": "ENUM",
- "name": "IssuableState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort issues by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "IssueSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "iterationId",
- "description": "Iterations applied to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "ID of an epic associated with the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeSubgroups",
- "description": "Include issues belonging to subgroups",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "IssueConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iterations",
- "description": "Find iterations.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter iterations by state.",
- "type": {
- "kind": "ENUM",
- "name": "IterationState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Fuzzy search by title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "Global ID of the Iteration to look up.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the Iteration to look up.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeAncestors",
- "description": "Whether to include ancestor iterations. Defaults to true.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "IterationConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "A label available on this group.",
- "args": [
- {
- "name": "title",
- "description": "Title of the label.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels available on this group.",
- "args": [
- {
- "name": "searchTerm",
- "description": "A search term to find labels with.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeAncestorGroups",
- "description": "Include labels from ancestor groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "includeDescendantGroups",
- "description": "Include labels from descendant groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "onlyGroupLabels",
- "description": "Include only group level labels.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsEnabled",
- "description": "Indicates if Large File Storage (LFS) is enabled for namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mentionsDisabled",
- "description": "Indicates if a group is disabled from getting mentioned.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequests",
- "description": "Merge requests for projects in this group.",
- "args": [
- {
- "name": "iids",
- "description": "Array of IIDs of merge requests, for example `[1, 2]`.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranches",
- "description": "Array of source branch names. All resolved merge requests will have one of these branches as their source.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranches",
- "description": "Array of target branch names. All resolved merge requests will have one of these branches as their target.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "A merge request state. If provided, all resolved merge requests will have this state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Array of label names. All resolved merge requests will have all of these labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "mergedAfter",
- "description": "Merge requests merged after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergedBefore",
- "description": "Merge requests merged before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort merge requests by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "includeSubgroups",
- "description": "Include merge requests belonging to subgroups",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "assigneeUsername",
- "description": "Username of the assignee.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "MergeRequestConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestones",
- "description": "Milestones of the group.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ids",
- "description": "Array of global milestone IDs, e.g., \"gid://gitlab/Milestone/1\".",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter milestones by state.",
- "type": {
- "kind": "ENUM",
- "name": "MilestoneStateEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "The title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "searchTitle",
- "description": "A search string for the title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "containingDate",
- "description": "A date that the milestone contains.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeDescendants",
- "description": "Also return milestones in all subgroups and subprojects.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "MilestoneConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packageSettings",
- "description": "The package settings for the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PackageSettings",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "parent",
- "description": "Parent group.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectCreationLevel",
- "description": "The permission level required to create projects in the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projects",
- "description": "Projects within this namespace.",
- "args": [
- {
- "name": "includeSubgroups",
- "description": "Include also subgroup projects.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "search",
- "description": "Search project with most similar names or paths.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "null"
- },
- {
- "name": "sort",
- "description": "Sort projects by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "NamespaceProjectSort",
- "ofType": null
- },
- "defaultValue": "null"
- },
- {
- "name": "hasVulnerabilities",
- "description": "Returns only the projects which have vulnerabilities.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositorySizeExcessProjectCount",
- "description": "Number of projects in the root namespace where the repository size exceeds the limit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requestAccessEnabled",
- "description": "Indicates if users can request access to namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requireTwoFactorAuthentication",
- "description": "Indicates if all users in this group are required to set up two-factor authentication.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rootStorageStatistics",
- "description": "Aggregated storage statistics of the namespace. Only available for root namespaces.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RootStorageStatistics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shareWithGroupLock",
- "description": "Indicates if sharing a project with another group within this group is prevented.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stats",
- "description": "Group statistics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "GroupStats",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "storageSizeLimit",
- "description": "Total storage limit of the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subgroupCreationLevel",
- "description": "The permission level required to create subgroups within the group.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "temporaryStorageIncreaseEndsOn",
- "description": "Date until the temporary storage increase is active.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timelogs",
- "description": "Time logged in issues by group members.",
- "args": [
- {
- "name": "startDate",
- "description": "List time logs within a date range where the logged date is equal to or after startDate.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List time logs within a date range where the logged date is equal to or before endDate.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startTime",
- "description": "List time-logs within a time range where the logged time is equal to or after startTime.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endTime",
- "description": "List time-logs within a time range where the logged time is equal to or before endTime.",
- "type": {
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TimelogConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalRepositorySize",
- "description": "Total repository size of all projects in the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalRepositorySizeExcess",
- "description": "Total excess repository size of all projects in the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "twoFactorGracePeriod",
- "description": "Time before two-factor authentication is enforced.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "GroupPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "visibility",
- "description": "Visibility of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilities",
- "description": "Vulnerabilities reported on the projects in the group and its subgroups.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by VulnerabilityScanner.externalId.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List vulnerabilities by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilitySort",
- "ofType": null
- },
- "defaultValue": "severity_desc"
- },
- {
- "name": "hasResolution",
- "description": "Returns only the vulnerabilities which have been resolved on default branch.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "hasIssues",
- "description": "Returns only the vulnerabilities which have linked issues.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "VulnerabilityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCountByDay",
- "description": "Number of vulnerabilities per day for the projects in the group and its subgroups.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "Last day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "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": "VulnerabilitiesCountByDayConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCountByDayAndSeverity",
- "description": "Number of vulnerabilities per severity level, per day, for the projects in the group and its subgroups. Deprecated in 13.3: Use `vulnerabilitiesCountByDay`.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "Last day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "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": "VulnerabilitiesCountByDayAndSeverityConnection",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use `vulnerabilitiesCountByDay`. Deprecated in 13.3."
- },
- {
- "name": "vulnerabilityGrades",
- "description": "Represents vulnerable project counts for each grade.",
- "args": [
- {
- "name": "includeSubgroups",
- "description": "Include grades belonging to subgroups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerableProjectsByGrade",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityScanners",
- "description": "Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups.",
- "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": "VulnerabilityScannerConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitySeveritiesCount",
- "description": "Counts for each vulnerability severity in the group and its subgroups.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by scanner.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilitySeveritiesCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the group.",
- "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": "SCALAR",
- "name": "GroupID",
- "description": "Identifier of Group.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "GroupMember",
- "description": "Represents a Group Membership",
- "fields": [
- {
- "name": "accessLevel",
- "description": "GitLab::Access level.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AccessLevel",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Date and time the membership was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdBy",
- "description": "User that authorized membership.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expiresAt",
- "description": "Date and time the membership expires.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group that a User is a member of.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the member.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Date and time the membership was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "User that is associated with the member object.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "GroupPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "MemberInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "GroupMemberConnection",
- "description": "The connection type for GroupMember.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "GroupMemberEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "GroupMember",
- "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": "GroupMemberEdge",
- "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": "GroupMember",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "GroupMemberRelation",
- "description": "Group member relation",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "DIRECT",
- "description": "Direct members",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INHERITED",
- "description": "Inherited members",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DESCENDANTS",
- "description": "Descendants members",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "GroupPermissions",
- "description": null,
- "fields": [
- {
- "name": "readGroup",
- "description": "Indicates the user can perform `read_group` on this resource",
- "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": "GroupReleaseStats",
- "description": "Contains release-related statistics about a group",
- "fields": [
- {
- "name": "releasesCount",
- "description": "Total number of releases in all descendant projects of the group. Will always return `null` if `group_level_release_statistics` feature flag is disabled",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releasesPercentage",
- "description": "Percentage of the group's descendant projects that have at least one release. Will always return `null` if `group_level_release_statistics` feature flag is disabled",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "GroupStats",
- "description": "Contains statistics about a group",
- "fields": [
- {
- "name": "releaseStats",
- "description": "Statistics related to releases within the group.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "GroupReleaseStats",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "HealthStatus",
- "description": "Health status of an issue or epic",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "onTrack",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "needsAttention",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "atRisk",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationCreateInput",
- "description": "Autogenerated input type of HttpIntegrationCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to create the integration in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The name of the integration.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "active",
- "description": "Whether the integration is receiving alerts.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "HttpIntegrationCreatePayload",
- "description": "Autogenerated return type of HttpIntegrationCreate",
- "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": "integration",
- "description": "The HTTP integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationDestroyInput",
- "description": "Autogenerated input type of HttpIntegrationDestroy",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the integration to remove.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AlertManagementHttpIntegrationID",
- "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": "HttpIntegrationDestroyPayload",
- "description": "Autogenerated return type of HttpIntegrationDestroy",
- "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": "integration",
- "description": "The HTTP integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationResetTokenInput",
- "description": "Autogenerated input type of HttpIntegrationResetToken",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the integration to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AlertManagementHttpIntegrationID",
- "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": "HttpIntegrationResetTokenPayload",
- "description": "Autogenerated return type of HttpIntegrationResetToken",
- "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": "integration",
- "description": "The HTTP integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationUpdateInput",
- "description": "Autogenerated input type of HttpIntegrationUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the integration to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AlertManagementHttpIntegrationID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The name of the integration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "active",
- "description": "Whether the integration is receiving alerts.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "HttpIntegrationUpdatePayload",
- "description": "Autogenerated return type of HttpIntegrationUpdate",
- "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": "integration",
- "description": "The HTTP integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementHttpIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ID",
- "description": "Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"VXNlci0xMA==\"`) or integer (such as `4`) input value will be accepted as an ID.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "description": "An ISO 8601-encoded date",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "IncidentManagementOncallParticipantID",
- "description": "Identifier of IncidentManagement::OncallParticipant.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallRotation",
- "description": "Describes an incident management on-call rotation",
- "fields": [
- {
- "name": "id",
- "description": "ID of the on-call rotation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "IncidentManagementOncallRotationID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "length",
- "description": "Length of the on-call schedule, in the units specified by lengthUnit.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lengthUnit",
- "description": "Unit of the on-call rotation length.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "OncallRotationUnitEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the on-call rotation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "Participants of the on-call rotation.",
- "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": "OncallParticipantTypeConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallRotationConnection",
- "description": "The connection type for IncidentManagementOncallRotation.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallRotationEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallRotation",
- "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": "IncidentManagementOncallRotationEdge",
- "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": "IncidentManagementOncallRotation",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "IncidentManagementOncallRotationID",
- "description": "Identifier of IncidentManagement::OncallRotation.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallSchedule",
- "description": "Describes an incident management on-call schedule",
- "fields": [
- {
- "name": "description",
- "description": "Description of the on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rotations",
- "description": "On-call rotations for the on-call schedule.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallRotationConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timezone",
- "description": "Time zone of the on-call schedule.",
- "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": "IncidentManagementOncallScheduleConnection",
- "description": "The connection type for IncidentManagementOncallSchedule.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallScheduleEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallSchedule",
- "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": "IncidentManagementOncallScheduleEdge",
- "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": "IncidentManagementOncallSchedule",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "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": [
- {
- "name": "projects",
- "description": "Projects selected in Instance Security Dashboard.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityGrades",
- "description": "Represents vulnerable project counts for each grade.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerableProjectsByGrade",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityScanners",
- "description": "Vulnerability scanners reported on the vulnerabilities from projects selected in Instance Security Dashboard.",
- "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": "VulnerabilityScannerConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitySeveritiesCount",
- "description": "Counts for each vulnerability severity from projects selected in Instance Security Dashboard.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by scanner.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilitySeveritiesCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "InstanceStatisticsMeasurement",
- "description": "Represents a recorded measurement (object count) for the Admins",
- "fields": [
- {
- "name": "count",
- "description": "Object count.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "identifier",
- "description": "The type of objects being measured.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "MeasurementIdentifier",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "recordedAt",
- "description": "The time the measurement was recorded.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "InstanceStatisticsMeasurementConnection",
- "description": "The connection type for InstanceStatisticsMeasurement.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "InstanceStatisticsMeasurementEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "InstanceStatisticsMeasurement",
- "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": "InstanceStatisticsMeasurementEdge",
- "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": "InstanceStatisticsMeasurement",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Int",
- "description": "Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssuableSeverity",
- "description": "Incident severity",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "UNKNOWN",
- "description": "Unknown severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LOW",
- "description": "Low severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MEDIUM",
- "description": "Medium severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HIGH",
- "description": "High severity",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CRITICAL",
- "description": "Critical severity",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssuableState",
- "description": "State of a GitLab issue or merge request",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "opened",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "locked",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "all",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Issue",
- "description": null,
- "fields": [
- {
- "name": "alertManagementAlert",
- "description": "Alert associated to this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "assignees",
- "description": "Assignees of the issue.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "User that created the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blocked",
- "description": "Indicates the issue is blocked.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blockedByCount",
- "description": "Count of issues blocking this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedAt",
- "description": "Timestamp of when the issue was closed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confidential",
- "description": "Indicates the issue is confidential.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNoteEmail",
- "description": "User specific email address for the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the issue was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designCollection",
- "description": "Collection of design images associated with this issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignCollection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussionLocked",
- "description": "Indicates discussion is locked on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downvotes",
- "description": "Number of downvotes the issue has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "emailsDisabled",
- "description": "Indicates if a project has email notifications disabled: `true` if email notifications are disabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epic",
- "description": "Epic to which this issue belongs.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "healthStatus",
- "description": "Current health status.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "HealthStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "humanTimeEstimate",
- "description": "Human-readable time estimate of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "humanTotalTimeSpent",
- "description": "Human-readable total time reported as spent on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iteration",
- "description": "Iteration of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels of the issue.",
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "metricImages",
- "description": "Metric images associated to the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MetricImage",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "Milestone of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "moved",
- "description": "Indicates if issue got moved from other project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "movedTo",
- "description": "Updated Issue after it got moved to another project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "List of participants in the issue.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reference",
- "description": "Internal reference of the issue. Returned in shortened format by default.",
- "args": [
- {
- "name": "full",
- "description": "Boolean option specifying whether the reference should be returned in full.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "relativePosition",
- "description": "Relative position of the issue (used for positioning in epic tree and issue boards).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity",
- "description": "Severity level of the incident.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "IssuableSeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "slaDueAt",
- "description": "Timestamp of when the issue SLA expires.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "statusPagePublishedIncident",
- "description": "Indicates whether an issue is published to the status page.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscribed",
- "description": "Indicates the currently logged in user is subscribed to the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "taskCompletionStatus",
- "description": "Task completion status of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TaskCompletionStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timeEstimate",
- "description": "Time estimate of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "titleHtml",
- "description": "The GitLab Flavored Markdown rendering of `title`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalTimeSpent",
- "description": "Total time reported as spent on the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the issue was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedBy",
- "description": "User that last updated the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upvotes",
- "description": "Number of upvotes the issue has received.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userDiscussionsCount",
- "description": "Number of user discussions in the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "Number of user notes of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IssuePermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weight",
- "description": "Weight of the issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IssueConnection",
- "description": "The connection type for Issue.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IssueEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "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
- },
- {
- "name": "weight",
- "description": "Total weight of issues collection.",
- "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": "IssueEdge",
- "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": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "IssueID",
- "description": "Identifier of Issue.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueMoveInput",
- "description": "Autogenerated input type of IssueMove",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetProjectPath",
- "description": "The project to move the issue to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "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": "INPUT_OBJECT",
- "name": "IssueMoveListInput",
- "description": "Autogenerated input type of IssueMoveList",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Project the issue to mutate is in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "boardId",
- "description": "Global ID of the board that the issue is in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "fromListId",
- "description": "ID of the board list that the issue will be moved from.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "toListId",
- "description": "ID of the board list that the issue will be moved to.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "moveBeforeId",
- "description": "ID of issue that should be placed before the current issue.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "moveAfterId",
- "description": "ID of issue that should be placed after the current issue.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "The ID of the parent epic. NULL when removing the association.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "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": "IssueMoveListPayload",
- "description": "Autogenerated return type of IssueMoveList",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IssueMovePayload",
- "description": "Autogenerated return type of IssueMove",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IssuePermissions",
- "description": "Check permissions for the current user on a issue",
- "fields": [
- {
- "name": "adminIssue",
- "description": "Indicates the user can perform `admin_issue` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createDesign",
- "description": "Indicates the user can perform `create_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": "Indicates the user can perform `create_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyDesign",
- "description": "Indicates the user can perform `destroy_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readDesign",
- "description": "Indicates the user can perform `read_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readIssue",
- "description": "Indicates the user can perform `read_issue` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reopenIssue",
- "description": "Indicates the user can perform `reopen_issue` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateIssue",
- "description": "Indicates the user can perform `update_issue` on this resource",
- "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": "INPUT_OBJECT",
- "name": "IssueSetAssigneesInput",
- "description": "Autogenerated input type of IssueSetAssignees",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "The usernames to assign to the resource. Replaces existing assignees by default.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "operationMode",
- "description": "The operation to perform. Defaults to REPLACE.",
- "type": {
- "kind": "ENUM",
- "name": "MutationOperationMode",
- "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": "IssueSetAssigneesPayload",
- "description": "Autogenerated return type of IssueSetAssignees",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetConfidentialInput",
- "description": "Autogenerated input type of IssueSetConfidential",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "Whether or not to set the issue as a confidential.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "IssueSetConfidentialPayload",
- "description": "Autogenerated return type of IssueSetConfidential",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetDueDateInput",
- "description": "Autogenerated input type of IssueSetDueDate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "dueDate",
- "description": "The desired due date for the issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "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": "IssueSetDueDatePayload",
- "description": "Autogenerated return type of IssueSetDueDate",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetEpicInput",
- "description": "Autogenerated input type of IssueSetEpic",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "Global ID of the epic to be assigned to the issue, epic will be removed if absent or set to null",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "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": "IssueSetEpicPayload",
- "description": "Autogenerated return type of IssueSetEpic",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetIterationInput",
- "description": "Autogenerated input type of IssueSetIteration",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iterationId",
- "description": "The iteration to assign to the issue.\n",
- "type": {
- "kind": "SCALAR",
- "name": "IterationID",
- "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": "IssueSetIterationPayload",
- "description": "Autogenerated return type of IssueSetIteration",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetLockedInput",
- "description": "Autogenerated input type of IssueSetLocked",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "locked",
- "description": "Whether or not to lock discussion on the issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "IssueSetLockedPayload",
- "description": "Autogenerated return type of IssueSetLocked",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetSeverityInput",
- "description": "Autogenerated input type of IssueSetSeverity",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Set the incident severity level.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssuableSeverity",
- "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": "IssueSetSeverityPayload",
- "description": "Autogenerated return type of IssueSetSeverity",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetSubscriptionInput",
- "description": "Autogenerated input type of IssueSetSubscription",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "subscribedState",
- "description": "The desired state of the subscription.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "IssueSetSubscriptionPayload",
- "description": "Autogenerated return type of IssueSetSubscription",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetWeightInput",
- "description": "Autogenerated input type of IssueSetWeight",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The desired weight for the issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "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": "IssueSetWeightPayload",
- "description": "Autogenerated return type of IssueSetWeight",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssueSort",
- "description": "Values for sorting issues",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "updated_desc",
- "description": "Updated at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "updated_asc",
- "description": "Updated at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "created_desc",
- "description": "Created at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "created_asc",
- "description": "Created at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "UPDATED_DESC",
- "description": "Updated at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_ASC",
- "description": "Updated at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PRIORITY_ASC",
- "description": "Priority by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PRIORITY_DESC",
- "description": "Priority by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LABEL_PRIORITY_ASC",
- "description": "Label priority by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LABEL_PRIORITY_DESC",
- "description": "Label priority by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MILESTONE_DUE_ASC",
- "description": "Milestone due date by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MILESTONE_DUE_DESC",
- "description": "Milestone due date by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DUE_DATE_ASC",
- "description": "Due date by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DUE_DATE_DESC",
- "description": "Due date by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RELATIVE_POSITION_ASC",
- "description": "Relative position by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SEVERITY_ASC",
- "description": "Severity from less critical to more critical",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SEVERITY_DESC",
- "description": "Severity from more critical to less critical",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_ASC",
- "description": "Weight by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEIGHT_DESC",
- "description": "Weight by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PUBLISHED_ASC",
- "description": "Published issues shown last",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PUBLISHED_DESC",
- "description": "Published issues shown first",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SLA_DUE_AT_ASC",
- "description": "Issues with earliest SLA due time shown first",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SLA_DUE_AT_DESC",
- "description": "Issues with latest SLA due time shown first",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssueState",
- "description": "State of a GitLab issue",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "opened",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "locked",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "all",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssueStateEvent",
- "description": "Values for issue state events",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "REOPEN",
- "description": "Reopens the issue",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CLOSE",
- "description": "Closes the issue",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IssueStatusCountsType",
- "description": "Represents total number of issues for the represented statuses",
- "fields": [
- {
- "name": "all",
- "description": "Number of issues with status ALL for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": "Number of issues with status CLOSED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "opened",
- "description": "Number of issues with status OPENED for the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IssueType",
- "description": "Issue type",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ISSUE",
- "description": "Issue issue type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INCIDENT",
- "description": "Incident issue type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TEST_CASE",
- "description": "Test Case issue type",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Iteration",
- "description": "Represents an iteration object",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp of iteration creation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Timestamp of the iteration due date.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "report",
- "description": "Historically accurate report about the timebox.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxReport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scopedPath",
- "description": "Web path of the iteration, scoped to the query parent. Only valid for Project parents. Returns null in other contexts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scopedUrl",
- "description": "Web URL of the iteration, scoped to the query parent. Only valid for Project parents. Returns null in other contexts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDate",
- "description": "Timestamp of the iteration start date.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IterationState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of last iteration update.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "TimeboxReportInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "IterationConnection",
- "description": "The connection type for Iteration.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "IterationEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Iteration",
- "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": "IterationEdge",
- "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": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "IterationID",
- "description": "Identifier of Iteration.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IterationState",
- "description": "State of a GitLab iteration",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "upcoming",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "started",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "opened",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "all",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "IterationWildcardId",
- "description": "Iteration ID wildcard values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "NONE",
- "description": "No iteration is assigned",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ANY",
- "description": "An iteration is assigned",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CURRENT",
- "description": "Current iteration",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "JSON",
- "description": "Represents untyped JSON",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "JiraImport",
- "description": null,
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp of when the Jira import was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "failedToImportCount",
- "description": "Count of issues that failed to import.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "importedIssuesCount",
- "description": "Count of issues that were successfully imported.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraProjectKey",
- "description": "Project key for the imported Jira project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scheduledAt",
- "description": "Timestamp of when the Jira import was scheduled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scheduledBy",
- "description": "User that started the Jira import.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalIssueCount",
- "description": "Total count of issues that were attempted to import.",
- "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": "JiraImportConnection",
- "description": "The connection type for JiraImport.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "JiraImportEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "JiraImport",
- "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": "JiraImportEdge",
- "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": "JiraImport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "JiraImportStartInput",
- "description": "Autogenerated input type of JiraImportStart",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to import the Jira project into.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "jiraProjectKey",
- "description": "Project key of the importer Jira project.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "jiraProjectName",
- "description": "Project name of the importer Jira project.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "usersMapping",
- "description": "The mapping of Jira to GitLab users.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "JiraUsersMappingInputType",
- "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": "JiraImportStartPayload",
- "description": "Autogenerated return type of JiraImportStart",
- "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": "jiraImport",
- "description": "The Jira import data after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "JiraImport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "JiraImportUsersInput",
- "description": "Autogenerated input type of JiraImportUsers",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to import the Jira users into.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "startAt",
- "description": "The index of the record the import should started at, default 0 (50 records returned).",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "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": "JiraImportUsersPayload",
- "description": "Autogenerated return type of JiraImportUsers",
- "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": "jiraUsers",
- "description": "Users returned from Jira, matched by email and name if possible.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "JiraUser",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "JiraProject",
- "description": null,
- "fields": [
- {
- "name": "key",
- "description": "Key of the Jira project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the Jira project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectId",
- "description": "ID of the Jira project.",
- "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": "JiraProjectConnection",
- "description": "The connection type for JiraProject.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "JiraProjectEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "JiraProject",
- "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": "JiraProjectEdge",
- "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": "JiraProject",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "JiraService",
- "description": null,
- "fields": [
- {
- "name": "active",
- "description": "Indicates if the service is active.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projects",
- "description": "List of all Jira projects fetched through Jira REST API.",
- "args": [
- {
- "name": "name",
- "description": "Project name or key.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "JiraProjectConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Class name of the service.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Service",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "JiraUser",
- "description": null,
- "fields": [
- {
- "name": "gitlabId",
- "description": "ID of the matched GitLab user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "gitlabName",
- "description": "Name of the matched GitLab user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "gitlabUsername",
- "description": "Username of the matched GitLab user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraAccountId",
- "description": "Account ID of the Jira user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraDisplayName",
- "description": "Display name of the Jira user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraEmail",
- "description": "Email of the Jira user, returned only for users with public emails.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "JiraUsersMappingInputType",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "jiraAccountId",
- "description": "Jira account ID of the user.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "gitlabId",
- "description": "Id of the GitLab user.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "JobArtifactFileType",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ARCHIVE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "METADATA",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TRACE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "JUNIT",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "METRICS",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "METRICS_REFEREE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NETWORK_REFEREE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DOTENV",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COBERTURA",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CLUSTER_APPLICATIONS",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LSIF",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SECRET_DETECTION",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEPENDENCY_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONTAINER_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LICENSE_MANAGEMENT",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LICENSE_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ACCESSIBILITY",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CODEQUALITY",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PERFORMANCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BROWSER_PERFORMANCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LOAD_PERFORMANCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TERRAFORM",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REQUIREMENTS",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COVERAGE_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "API_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "JsonString",
- "description": "JSON object as raw string",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Label",
- "description": null,
- "fields": [
- {
- "name": "color",
- "description": "Background color of the label.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the label (Markdown rendered as HTML for caching).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "Label ID.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "textColor",
- "description": "Text color of the label.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Content of the label.",
- "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": "LabelConnection",
- "description": "The connection type for Label.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "LabelEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Label",
- "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": "LabelCreateInput",
- "description": "Autogenerated input type of LabelCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project with which the resource is associated.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "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": "title",
- "description": "Title of the label.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the label.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "color",
- "description": "The color of the label given in 6-digit hex notation with leading '#' sign (e.g. #FFAABB) or one of the CSS color names in https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#Color_keywords.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "\"#6699cc\""
- },
- {
- "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": "LabelCreatePayload",
- "description": "Autogenerated return type of LabelCreate",
- "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": "label",
- "description": "The label after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "LabelEdge",
- "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": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "LabelID",
- "description": "Identifier of Label.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ListID",
- "description": "Identifier of List.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ListLimitMetric",
- "description": "List limit metric setting",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "all_metrics",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue_count",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue_weights",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "MarkAsSpamSnippetInput",
- "description": "Autogenerated input type of MarkAsSpamSnippet",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the snippet to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "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": "MarkAsSpamSnippetPayload",
- "description": "Autogenerated return type of MarkAsSpamSnippet",
- "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": "snippet",
- "description": "The snippet after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Snippet",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MeasurementIdentifier",
- "description": "Possible identifier types for a measurement",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "PROJECTS",
- "description": "Project count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "USERS",
- "description": "User count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ISSUES",
- "description": "Issue count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MERGE_REQUESTS",
- "description": "Merge request count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GROUPS",
- "description": "Group count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES",
- "description": "Pipeline count",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES_SUCCEEDED",
- "description": "Pipeline count with success status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES_FAILED",
- "description": "Pipeline count with failed status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES_CANCELED",
- "description": "Pipeline count with canceled status",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES_SKIPPED",
- "description": "Pipeline count with skipped status",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "MemberInterface",
- "description": null,
- "fields": [
- {
- "name": "accessLevel",
- "description": "GitLab::Access level.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AccessLevel",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Date and time the membership was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdBy",
- "description": "User that authorized membership.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expiresAt",
- "description": "Date and time the membership expires.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the member.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Date and time the membership was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "User that is associated with the member object.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "GroupMember",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectMember",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "MemberInterfaceConnection",
- "description": "The connection type for MemberInterface.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MemberInterfaceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "INTERFACE",
- "name": "MemberInterface",
- "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": "MemberInterfaceEdge",
- "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": "INTERFACE",
- "name": "MemberInterface",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "description": null,
- "fields": [
- {
- "name": "allowCollaboration",
- "description": "Indicates if members of the target project can push to the fork.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "approvalsLeft",
- "description": "Number of approvals left.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "approvalsRequired",
- "description": "Number of approvals required.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "approved",
- "description": "Indicates if the merge request has all the required approvals. Returns true if no required approvals are configured.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "approvedBy",
- "description": "Users who approved the merge request.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "assignees",
- "description": "Assignees of the merge request.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "User who created this merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "autoMergeEnabled",
- "description": "Indicates if auto merge is enabled for the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "autoMergeStrategy",
- "description": "Selected auto merge strategy.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "availableAutoMergeStrategies",
- "description": "Array of available auto merge strategies.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commitCount",
- "description": "Number of commits in the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commitsWithoutMergeCommits",
- "description": "Merge request commits excluding merge commits.",
- "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": "CommitConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "conflicts",
- "description": "Indicates if the merge request has conflicts.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the merge request was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUserTodos",
- "description": "To-do items for the current user.",
- "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
- },
- {
- "name": "state",
- "description": "State of the to-do items.",
- "type": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "defaultMergeCommitMessage",
- "description": "Default merge commit message of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "defaultMergeCommitMessageWithDescription",
- "description": "Default merge commit message of the merge request with description.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "defaultSquashCommitMessage",
- "description": "Default squash commit message of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the merge request (Markdown rendered as HTML for caching).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffHeadSha",
- "description": "Diff head SHA of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffRefs",
- "description": "References of the base SHA, the head SHA, and the start SHA for this merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DiffRefs",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffStats",
- "description": "Details about which files were changed in this merge request.",
- "args": [
- {
- "name": "path",
- "description": "A specific file-path.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiffStats",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "diffStatsSummary",
- "description": "Summary of which files were changed in this merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DiffStatsSummary",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussionLocked",
- "description": "Indicates if comments on the merge request are locked to members only.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downvotes",
- "description": "Number of downvotes for the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "forceRemoveSourceBranch",
- "description": "Indicates if the project settings will lead to source branch deletion after merge.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasCi",
- "description": "Indicates if the merge request has CI.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasSecurityReports",
- "description": "Indicates if the source branch has any security reports.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "headPipeline",
- "description": "The pipeline running on the branch HEAD of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "inProgressMergeCommitSha",
- "description": "Commit SHA of the merge request if merge is in progress.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels of the merge request.",
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeCommitSha",
- "description": "SHA of the merge request commit (set once merged).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeError",
- "description": "Error message due to a merge error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeOngoing",
- "description": "Indicates if a merge is currently occurring.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeStatus",
- "description": "Status of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeTrainsCount",
- "description": "Number of merge requests in the merge train.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeUser",
- "description": "User who merged this merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeWhenPipelineSucceeds",
- "description": "Indicates if the merge has been set to be merged when its pipeline succeeds (MWPS).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeable",
- "description": "Indicates if the merge request is mergeable.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeableDiscussionsState",
- "description": "Indicates if all discussions in the merge request have been resolved, allowing the merge request to be merged.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergedAt",
- "description": "Timestamp of when the merge request was merged, null if not merged.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "The milestone of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "participants",
- "description": "Participants in the merge request. This includes the author, assignees, reviewers, and users mentioned in notes.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelines",
- "description": "Pipelines for the merge request. Note: for performance reasons, no more than the most recent 500 pipelines will be returned.",
- "args": [
- {
- "name": "status",
- "description": "Filter pipelines by their status.",
- "type": {
- "kind": "ENUM",
- "name": "PipelineStatusEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ref",
- "description": "Filter pipelines by the ref they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sha",
- "description": "Filter pipelines by the sha of the commit they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "PipelineConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Alias for target_project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectId",
- "description": "ID of the merge request project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rebaseCommitSha",
- "description": "Rebase commit SHA of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rebaseInProgress",
- "description": "Indicates if there is a rebase currently in progress for the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reference",
- "description": "Internal reference of the merge request. Returned in shortened format by default.",
- "args": [
- {
- "name": "full",
- "description": "Boolean option specifying whether the reference should be returned in full.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reviewers",
- "description": "Users from whom a review has been requested.",
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "securityAutoFix",
- "description": "Indicates if the merge request is created by @GitLab-Security-Bot.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shouldBeRebased",
- "description": "Indicates if the merge request will be rebased.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shouldRemoveSourceBranch",
- "description": "Indicates if the source branch of the merge request will be deleted after merge.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceBranch",
- "description": "Source branch of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceBranchExists",
- "description": "Indicates if the source branch of the merge request exists.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceBranchProtected",
- "description": "Indicates if the source branch is protected.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceProject",
- "description": "Source project of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceProjectId",
- "description": "ID of the merge request source project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "squash",
- "description": "Indicates if squash on merge is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "squashOnMerge",
- "description": "Indicates if squash on merge is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscribed",
- "description": "Indicates if the currently logged in user is subscribed to this merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetBranch",
- "description": "Target branch of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetBranchExists",
- "description": "Indicates if the target branch of the merge request exists.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetProject",
- "description": "Target project of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetProjectId",
- "description": "ID of the merge request target project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "taskCompletionStatus",
- "description": "Completion status of tasks",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TaskCompletionStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timeEstimate",
- "description": "Time estimate of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "titleHtml",
- "description": "The GitLab Flavored Markdown rendering of `title`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalTimeSpent",
- "description": "Total time reported as spent on the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the merge request was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upvotes",
- "description": "Number of upvotes for the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userDiscussionsCount",
- "description": "Number of user discussions in the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "User notes count of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MergeRequestPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the merge request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "workInProgress",
- "description": "Indicates if the merge request is a work in progress (WIP).",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- },
- {
- "kind": "INTERFACE",
- "name": "CurrentUserTodos",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequestConnection",
- "description": "The connection type for MergeRequest.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MergeRequestEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "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
- },
- {
- "name": "totalTimeToMerge",
- "description": "Total sum of time to merge, in seconds, for the collection of merge requests.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestCreateInput",
- "description": "Autogenerated input type of MergeRequestCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Project full path the merge request is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Title of the merge request.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranch",
- "description": "Source branch of the merge request.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranch",
- "description": "Target branch of the merge request.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the merge request (Markdown rendered as HTML for caching).",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Labels of the merge request.",
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequestCreatePayload",
- "description": "Autogenerated return type of MergeRequestCreate",
- "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": "OBJECT",
- "name": "MergeRequestDiffRegistry",
- "description": "Represents the Geo sync and verification state of a Merge Request diff",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp when the MergeRequestDiffRegistry was created",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the MergeRequestDiffRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncFailure",
- "description": "Error message during sync of the MergeRequestDiffRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncedAt",
- "description": "Timestamp of the most recent successful sync of the MergeRequestDiffRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestDiffId",
- "description": "ID of the Merge Request diff.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryAt",
- "description": "Timestamp after which the MergeRequestDiffRegistry should be resynced",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryCount",
- "description": "Number of consecutive failed sync attempts of the MergeRequestDiffRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "Sync state of the MergeRequestDiffRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "RegistryState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequestDiffRegistryConnection",
- "description": "The connection type for MergeRequestDiffRegistry.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MergeRequestDiffRegistryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MergeRequestDiffRegistry",
- "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": "MergeRequestDiffRegistryEdge",
- "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": "MergeRequestDiffRegistry",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequestEdge",
- "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": "MergeRequest",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "MergeRequestID",
- "description": "Identifier of MergeRequest.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MergeRequestNewState",
- "description": "New state to apply to a merge request.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "OPEN",
- "description": "Open the merge request if it is closed.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CLOSED",
- "description": "Close the merge request if it is open.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequestPermissions",
- "description": "Check permissions for the current user on a merge request",
- "fields": [
- {
- "name": "adminMergeRequest",
- "description": "Indicates the user can perform `admin_merge_request` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "canMerge",
- "description": "Indicates the user can perform `can_merge` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "cherryPickOnCurrentMergeRequest",
- "description": "Indicates the user can perform `cherry_pick_on_current_merge_request` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": "Indicates the user can perform `create_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pushToSourceBranch",
- "description": "Indicates the user can perform `push_to_source_branch` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readMergeRequest",
- "description": "Indicates the user can perform `read_merge_request` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removeSourceBranch",
- "description": "Indicates the user can perform `remove_source_branch` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "revertOnCurrentMergeRequest",
- "description": "Indicates the user can perform `revert_on_current_merge_request` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateMergeRequest",
- "description": "Indicates the user can perform `update_merge_request` on this resource",
- "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": "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,
- "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": "assigneeUsernames",
- "description": "The usernames to assign to the resource. Replaces existing assignees by default.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "operationMode",
- "description": "The operation to perform. Defaults to REPLACE.",
- "type": {
- "kind": "ENUM",
- "name": "MutationOperationMode",
- "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": "MergeRequestSetAssigneesPayload",
- "description": "Autogenerated return type of MergeRequestSetAssignees",
- "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": "MergeRequestSetLabelsInput",
- "description": "Autogenerated input type of MergeRequestSetLabels",
- "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": "labelIds",
- "description": "The Label IDs to set. Replaces existing labels by default.\n",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "LabelID",
- "ofType": null
- }
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "operationMode",
- "description": "Changes the operation mode. Defaults to REPLACE.\n",
- "type": {
- "kind": "ENUM",
- "name": "MutationOperationMode",
- "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": "MergeRequestSetLabelsPayload",
- "description": "Autogenerated return type of MergeRequestSetLabels",
- "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": "MergeRequestSetLockedInput",
- "description": "Autogenerated input type of MergeRequestSetLocked",
- "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": "locked",
- "description": "Whether or not to lock the merge request.\n",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "MergeRequestSetLockedPayload",
- "description": "Autogenerated return type of MergeRequestSetLocked",
- "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": "MergeRequestSetMilestoneInput",
- "description": "Autogenerated input type of MergeRequestSetMilestone",
- "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": "milestoneId",
- "description": "The milestone to assign to the merge request.\n",
- "type": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "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": "MergeRequestSetMilestonePayload",
- "description": "Autogenerated return type of MergeRequestSetMilestone",
- "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": "MergeRequestSetSubscriptionInput",
- "description": "Autogenerated input type of MergeRequestSetSubscription",
- "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": "subscribedState",
- "description": "The desired state of the subscription.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "MergeRequestSetSubscriptionPayload",
- "description": "Autogenerated return type of MergeRequestSetSubscription",
- "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": "MergeRequestSetWipInput",
- "description": "Autogenerated input type of MergeRequestSetWip",
- "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": "wip",
- "description": "Whether or not to set the merge request as a WIP.\n",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "MergeRequestSetWipPayload",
- "description": "Autogenerated return type of MergeRequestSetWip",
- "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": "ENUM",
- "name": "MergeRequestSort",
- "description": "Values for sorting merge requests",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "updated_desc",
- "description": "Updated at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "updated_asc",
- "description": "Updated at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "created_desc",
- "description": "Created at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "created_asc",
- "description": "Created at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "UPDATED_DESC",
- "description": "Updated at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_ASC",
- "description": "Updated at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PRIORITY_ASC",
- "description": "Priority by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PRIORITY_DESC",
- "description": "Priority by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LABEL_PRIORITY_ASC",
- "description": "Label priority by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LABEL_PRIORITY_DESC",
- "description": "Label priority by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MILESTONE_DUE_ASC",
- "description": "Milestone due date by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MILESTONE_DUE_DESC",
- "description": "Milestone due date by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MERGED_AT_ASC",
- "description": "Merge time by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MERGED_AT_DESC",
- "description": "Merge time by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "description": "State of a GitLab merge request",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "opened",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "locked",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "all",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "merged",
- "description": "Merge Request has been merged",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestUpdateInput",
- "description": "Autogenerated input type of MergeRequestUpdate",
- "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": "title",
- "description": "Title of the merge request.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "targetBranch",
- "description": "Target branch of the merge request.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the merge request (Markdown rendered as HTML for caching).",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "The action to perform to change the state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestNewState",
- "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": "MergeRequestUpdatePayload",
- "description": "Autogenerated return type of MergeRequestUpdate",
- "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": "OBJECT",
- "name": "Metadata",
- "description": null,
- "fields": [
- {
- "name": "revision",
- "description": "Revision.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "Version.",
- "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": "MetricImage",
- "description": "Represents a metric image upload",
- "fields": [
- {
- "name": "fileName",
- "description": "File name of the metric image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filePath",
- "description": "File path of the metric image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the metric upload.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the metric upload.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "URL of the metric source.",
- "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": "MetricsDashboard",
- "description": null,
- "fields": [
- {
- "name": "annotations",
- "description": "Annotations added to the dashboard.",
- "args": [
- {
- "name": "from",
- "description": "Timestamp marking date and time from which annotations need to be fetched.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "to",
- "description": "Timestamp marking date and time to which annotations need to be fetched.",
- "type": {
- "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": "MetricsDashboardAnnotationConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path to a file with the dashboard definition.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "schemaValidationWarnings",
- "description": "Dashboard schema validation warnings.",
- "args": [
-
- ],
- "type": {
- "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": "MetricsDashboardAnnotation",
- "description": null,
- "fields": [
- {
- "name": "description",
- "description": "Description of the annotation.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "endingAt",
- "description": "Timestamp marking end of annotated time span.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the annotation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "panelId",
- "description": "ID of a dashboard panel to which the annotation should be scoped.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startingAt",
- "description": "Timestamp marking start of annotated time span.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MetricsDashboardAnnotationConnection",
- "description": "The connection type for MetricsDashboardAnnotation.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MetricsDashboardAnnotationEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MetricsDashboardAnnotation",
- "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": "MetricsDashboardAnnotationEdge",
- "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": "MetricsDashboardAnnotation",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "MetricsDashboardAnnotationID",
- "description": "Identifier of Metrics::Dashboard::Annotation.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Milestone",
- "description": "Represents a milestone",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp of milestone creation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dueDate",
- "description": "Timestamp of the milestone due date.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groupMilestone",
- "description": "Indicates if milestone is at group level.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectMilestone",
- "description": "Indicates if milestone is at project level.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "report",
- "description": "Historically accurate report about the timebox.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxReport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startDate",
- "description": "Timestamp of the milestone start date.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "MilestoneStateEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stats",
- "description": "Milestone statistics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MilestoneStats",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subgroupMilestone",
- "description": "Indicates if milestone is at subgroup level.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of last milestone update.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "TimeboxReportInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MilestoneConnection",
- "description": "The connection type for Milestone.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "MilestoneEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Milestone",
- "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": "MilestoneEdge",
- "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": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "description": "Identifier of Milestone.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MilestoneStateEnum",
- "description": "Current state of milestone",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "active",
- "description": "Milestone is currently active",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closed",
- "description": "Milestone is closed",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "MilestoneStats",
- "description": "Contains statistics about a milestone",
- "fields": [
- {
- "name": "closedIssuesCount",
- "description": "Number of closed issues associated with the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalIssuesCount",
- "description": "Total number of issues associated with the milestone.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MoveType",
- "description": "The position to which the adjacent object should be moved",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "before",
- "description": "The adjacent object will be moved before the object that is being moved",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "after",
- "description": "The adjacent object will be moved after the object that is being moved",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Mutation",
- "description": null,
- "fields": [
- {
- "name": "addAwardEmoji",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AddAwardEmojiInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AddAwardEmojiPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use awardEmojiAdd. Deprecated in 13.2."
- },
- {
- "name": "addProjectToSecurityDashboard",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AddProjectToSecurityDashboardInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AddProjectToSecurityDashboardPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminSidekiqQueuesDeleteJobs",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AdminSidekiqQueuesDeleteJobsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AdminSidekiqQueuesDeleteJobsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertSetAssignees",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AlertSetAssigneesInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertSetAssigneesPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertTodoCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AlertTodoCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertTodoCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "apiFuzzingCiConfigurationCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ApiFuzzingCiConfigurationCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ApiFuzzingCiConfigurationCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmojiAdd",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AwardEmojiAddInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmojiAddPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmojiRemove",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AwardEmojiRemoveInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmojiRemovePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmojiToggle",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "AwardEmojiToggleInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmojiTogglePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "boardListCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "BoardListCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardListCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "boardListUpdateLimitMetrics",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "BoardListUpdateLimitMetricsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardListUpdateLimitMetricsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ciCdSettingsUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CiCdSettingsUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiCdSettingsUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "clusterAgentDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ClusterAgentDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgentDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "clusterAgentTokenCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ClusterAgentTokenCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgentTokenCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "clusterAgentTokenDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ClusterAgentTokenDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgentTokenDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commitCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CommitCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CommitCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "configureSast",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ConfigureSastInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ConfigureSastPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createAlertIssue",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateAlertIssueInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateAlertIssuePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createAnnotation",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateAnnotationInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateAnnotationPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createBoard",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateBoardInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateBoardPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createBranch",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateBranchInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateBranchPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createClusterAgent",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateClusterAgentInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateClusterAgentPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createComplianceFramework",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateComplianceFrameworkInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateComplianceFrameworkPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createCustomEmoji",
- "description": " Available only when feature flag `custom_emoji` is enabled.",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateCustomEmojiInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateCustomEmojiPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createDevopsAdoptionSegment",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateDevopsAdoptionSegmentInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateDevopsAdoptionSegmentPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createDiffNote",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateDiffNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateDiffNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createEpic",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateEpicInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateEpicPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createImageDiffNote",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateImageDiffNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateImageDiffNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createIssue",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateIssueInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateIssuePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createIteration",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateIterationInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateIterationPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createRequirement",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateRequirementInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateRequirementPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createSnippet",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateSnippetInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateSnippetPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createTestCase",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "CreateTestCaseInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CreateTestCasePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastOnDemandScanCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastOnDemandScanCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastOnDemandScanCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": "dastProfileDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastProfileDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastProfileDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastProfileRun",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastProfileRunInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastProfileRunPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastProfileUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastProfileUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastProfileUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastScannerProfileCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastScannerProfileCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastScannerProfileCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastScannerProfileDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastScannerProfileDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastScannerProfileDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastScannerProfileUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastScannerProfileUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastScannerProfileUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteProfileCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteProfileCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteProfileCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteProfileDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteProfileDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteProfileDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteProfileUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteProfileUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteProfileUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteTokenCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteTokenCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteTokenCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteValidationCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DastSiteValidationCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteValidationCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DeleteAnnotationInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DeleteAnnotationPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deleteDevopsAdoptionSegment",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DeleteDevopsAdoptionSegmentInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DeleteDevopsAdoptionSegmentPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designManagementDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DesignManagementDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignManagementDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designManagementMove",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DesignManagementMoveInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignManagementMovePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designManagementUpload",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DesignManagementUploadInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DesignManagementUploadPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyBoard",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyBoardInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyBoardPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyBoardList",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyBoardListInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyBoardListPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyComplianceFramework",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyComplianceFrameworkInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyComplianceFrameworkPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyContainerRepository",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyContainerRepositoryInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyContainerRepositoryPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyContainerRepositoryTags",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyContainerRepositoryTagsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyContainerRepositoryTagsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyNote",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroyNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroyNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroySnippet",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DestroySnippetInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DestroySnippetPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussionToggleResolve",
- "description": "Toggles the resolved state of a discussion",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DiscussionToggleResolveInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DiscussionToggleResolvePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dismissVulnerability",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "DismissVulnerabilityInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DismissVulnerabilityPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use vulnerabilityDismiss. Deprecated in 13.5."
- },
- {
- "name": "environmentsCanaryIngressUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EnvironmentsCanaryIngressUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EnvironmentsCanaryIngressUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicAddIssue",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EpicAddIssueInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicAddIssuePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": "epicBoardListCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EpicBoardListCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicBoardListCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicSetSubscription",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EpicSetSubscriptionInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicSetSubscriptionPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "epicTreeReorder",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "EpicTreeReorderInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "EpicTreeReorderPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "exportRequirements",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ExportRequirementsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ExportRequirementsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "HttpIntegrationCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "httpIntegrationDestroy",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationDestroyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "HttpIntegrationDestroyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "httpIntegrationResetToken",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationResetTokenInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "HttpIntegrationResetTokenPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "httpIntegrationUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "HttpIntegrationUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "HttpIntegrationUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueMove",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueMoveInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueMovePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueMoveList",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueMoveListInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueMoveListPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetAssignees",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetAssigneesInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetAssigneesPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetConfidential",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetConfidentialInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetConfidentialPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetDueDate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetDueDateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetDueDatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetEpic",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetEpicInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetEpicPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetIteration",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetIterationInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetIterationPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetLocked",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetLockedInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetLockedPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetSeverity",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetSeverityInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetSeverityPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetSubscription",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetSubscriptionInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetSubscriptionPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueSetWeight",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "IssueSetWeightInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueSetWeightPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraImportStart",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "JiraImportStartInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "JiraImportStartPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraImportUsers",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "JiraImportUsersInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "JiraImportUsersPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labelCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "LabelCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "LabelCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "markAsSpamSnippet",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MarkAsSpamSnippetInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MarkAsSpamSnippetPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetAssigneesInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetAssigneesPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestSetLabels",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetLabelsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetLabelsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestSetLocked",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetLockedInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetLockedPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestSetMilestone",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetMilestoneInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetMilestonePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestSetSubscription",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetSubscriptionInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetSubscriptionPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestSetWip",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestSetWipInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestSetWipPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestUpdate",
- "description": "Update attributes of a merge request",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "MergeRequestUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequestUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "namespaceIncreaseStorageTemporarily",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "NamespaceIncreaseStorageTemporarilyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "NamespaceIncreaseStorageTemporarilyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "oncallRotationCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallRotationCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "OncallRotationCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "OncallScheduleCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "oncallScheduleDestroy",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleDestroyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "OncallScheduleDestroyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "oncallScheduleUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "OncallScheduleUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineCancel",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PipelineCancelInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PipelineCancelPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineDestroy",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PipelineDestroyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PipelineDestroyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineRetry",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PipelineRetryInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PipelineRetryPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "prometheusIntegrationCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PrometheusIntegrationCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "prometheusIntegrationResetToken",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationResetTokenInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PrometheusIntegrationResetTokenPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "prometheusIntegrationUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PrometheusIntegrationUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "promoteToEpic",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "PromoteToEpicInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PromoteToEpicPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releaseCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ReleaseCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releaseDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ReleaseDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releaseUpdate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseUpdateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ReleaseUpdatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removeAwardEmoji",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "RemoveAwardEmojiInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RemoveAwardEmojiPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use awardEmojiRemove. Deprecated in 13.2."
- },
- {
- "name": "removeProjectFromSecurityDashboard",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "RemoveProjectFromSecurityDashboardInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RemoveProjectFromSecurityDashboardPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositionImageDiffNote",
- "description": "Repositions a DiffNote on an image (a `Note` where the `position.positionType` is `\"image\"`)",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "RepositionImageDiffNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RepositionImageDiffNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "revertVulnerabilityToDetected",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "RevertVulnerabilityToDetectedInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RevertVulnerabilityToDetectedPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use vulnerabilityRevertToDetected. Deprecated in 13.5."
- },
- {
- "name": "runDastScan",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "RunDASTScanInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RunDASTScanPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use DastOnDemandScanCreate. Deprecated in 13.4."
- },
- {
- "name": "terraformStateDelete",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TerraformStateDeleteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TerraformStateDeletePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "terraformStateLock",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TerraformStateLockInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TerraformStateLockPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "terraformStateUnlock",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TerraformStateUnlockInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TerraformStateUnlockPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todoCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TodoCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TodoCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todoMarkDone",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TodoMarkDoneInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TodoMarkDonePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todoRestore",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TodoRestoreInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TodoRestorePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todoRestoreMany",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TodoRestoreManyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TodoRestoreManyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todosMarkAllDone",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "TodosMarkAllDoneInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TodosMarkAllDonePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "toggleAwardEmoji",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ToggleAwardEmojiInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ToggleAwardEmojiPayload",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use awardEmojiToggle. Deprecated in 13.2."
- },
- {
- "name": "updateAlertStatus",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateAlertStatusInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateAlertStatusPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateBoard",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateBoardInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateBoardPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateBoardEpicUserPreferences",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateBoardEpicUserPreferencesInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateBoardEpicUserPreferencesPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateBoardList",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateBoardListInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateBoardListPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateComplianceFramework",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateComplianceFrameworkInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateComplianceFrameworkPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateContainerExpirationPolicy",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateContainerExpirationPolicyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateContainerExpirationPolicyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateEpic",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateEpicInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateEpicPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateImageDiffNote",
- "description": "Updates a DiffNote on an image (a `Note` where the `position.positionType` is `\"image\"`). If the body of the Note contains only quick actions, the Note will be destroyed during the update, and no Note will be returned",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateImageDiffNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateImageDiffNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateIssue",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateIssueInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateIssuePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateIteration",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateIterationInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateIterationPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateNamespacePackageSettings",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateNamespacePackageSettingsInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateNamespacePackageSettingsPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateNote",
- "description": "Updates a Note. If the body of the Note contains only quick actions, the Note will be destroyed during the update, and no Note will be returned",
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateNoteInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateNotePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateRequirement",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateRequirementInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateRequirementPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateSnippet",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateSnippetInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UpdateSnippetPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityConfirm",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityConfirmInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityConfirmPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityDismiss",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityDismissInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityDismissPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityExternalIssueLinkCreate",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityExternalIssueLinkCreateInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLinkCreatePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityExternalIssueLinkDestroy",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityExternalIssueLinkDestroyInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLinkDestroyPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityResolve",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityResolveInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityResolvePayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityRevertToDetected",
- "description": null,
- "args": [
- {
- "name": "input",
- "description": null,
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityRevertToDetectedInput",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityRevertToDetectedPayload",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "MutationOperationMode",
- "description": "Different toggles for changing mutator behavior",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "REPLACE",
- "description": "Performs a replace operation",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "APPEND",
- "description": "Performs an append operation",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REMOVE",
- "description": "Performs a removal operation",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Namespace",
- "description": null,
- "fields": [
- {
- "name": "actualRepositorySizeLimit",
- "description": "Size limit for repositories in the namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "additionalPurchasedStorageSize",
- "description": "Additional storage purchased for the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "complianceFrameworks",
- "description": "Compliance frameworks available to projects in this namespace. Available only when feature flag `ff_custom_compliance_frameworks` is enabled.",
- "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
- },
- {
- "name": "id",
- "description": "Global ID of a specific compliance framework to return.",
- "type": {
- "kind": "SCALAR",
- "name": "ComplianceManagementFrameworkID",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ComplianceFrameworkConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containsLockedProjects",
- "description": "Includes at least one project where the repository size exceeds the limit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullName",
- "description": "Full name of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "Full path of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "isTemporaryStorageIncreaseEnabled",
- "description": "Status of the temporary storage increase.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsEnabled",
- "description": "Indicates if Large File Storage (LFS) is enabled for namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packageSettings",
- "description": "The package settings for the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PackageSettings",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projects",
- "description": "Projects within this namespace.",
- "args": [
- {
- "name": "includeSubgroups",
- "description": "Include also subgroup projects.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "name": "search",
- "description": "Search project with most similar names or paths.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "null"
- },
- {
- "name": "sort",
- "description": "Sort projects by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "NamespaceProjectSort",
- "ofType": null
- },
- "defaultValue": "null"
- },
- {
- "name": "hasVulnerabilities",
- "description": "Returns only the projects which have vulnerabilities.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositorySizeExcessProjectCount",
- "description": "Number of projects in the root namespace where the repository size exceeds the limit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requestAccessEnabled",
- "description": "Indicates if users can request access to namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rootStorageStatistics",
- "description": "Aggregated storage statistics of the namespace. Only available for root namespaces.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RootStorageStatistics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "storageSizeLimit",
- "description": "Total storage limit of the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "temporaryStorageIncreaseEndsOn",
- "description": "Date until the temporary storage increase is active.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalRepositorySize",
- "description": "Total repository size of all projects in the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "totalRepositorySizeExcess",
- "description": "Total excess repository size of all projects in the root namespace in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "visibility",
- "description": "Visibility of the namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "NamespaceConnection",
- "description": "The connection type for Namespace.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NamespaceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Namespace",
- "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": "NamespaceEdge",
- "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": "Namespace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "NamespaceID",
- "description": "Identifier of Namespace.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "NamespaceIncreaseStorageTemporarilyInput",
- "description": "Autogenerated input type of NamespaceIncreaseStorageTemporarily",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the namespace to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NamespaceID",
- "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": "NamespaceIncreaseStorageTemporarilyPayload",
- "description": "Autogenerated return type of NamespaceIncreaseStorageTemporarily",
- "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": "namespace",
- "description": "The namespace after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Namespace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "NamespaceProjectSort",
- "description": "Values for sorting projects",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SIMILARITY",
- "description": "Most similar to the search query",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STORAGE",
- "description": "Sort by storage size",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "NegatedBoardIssueInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "labelName",
- "description": "Filter by label name.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Filter by milestone title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Filter by assignee username.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter by author username.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "releaseTag",
- "description": "Filter by release tag.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "myReactionEmoji",
- "description": "Filter by reaction emoji.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "Filter by epic ID. Incompatible with epicWildcardId.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationTitle",
- "description": "Filter by iteration title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "Filter by weight.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Note",
- "description": null,
- "fields": [
- {
- "name": "author",
- "description": "User who wrote this note.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "bodyHtml",
- "description": "The GitLab Flavored Markdown rendering of `note`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confidential",
- "description": "Indicates if this note is confidential.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of the note creation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussion",
- "description": "The discussion this note is a part of.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Discussion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the note.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "position",
- "description": "The position of this note on a diff.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DiffPosition",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project associated with the note.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvable",
- "description": "Indicates if the object can be resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolved",
- "description": "Indicates if the object is resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedAt",
- "description": "Timestamp of when the object was resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedBy",
- "description": "User who resolved the object.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "system",
- "description": "Indicates whether this note was created by the system or by a user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "systemNoteIconName",
- "description": "Name of the icon corresponding to a system note.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of the note's last activity.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "URL to view this Note in the Web UI.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NotePermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "ResolvableInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "description": "The connection type for Note.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Note",
- "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": "NoteEdge",
- "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": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "NoteID",
- "description": "Identifier of Note.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "NotePermissions",
- "description": null,
- "fields": [
- {
- "name": "adminNote",
- "description": "Indicates the user can perform `admin_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmoji",
- "description": "Indicates the user can perform `award_emoji` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": "Indicates the user can perform `create_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readNote",
- "description": "Indicates the user can perform `read_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositionNote",
- "description": "Indicates the user can perform `reposition_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolveNote",
- "description": "Indicates the user can perform `resolve_note` on this resource",
- "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": "INTERFACE",
- "name": "Noteable",
- "description": null,
- "fields": [
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "BoardEpic",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Design",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Epic",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "EpicIssue",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Snippet",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- }
- ]
- },
- {
- "kind": "SCALAR",
- "name": "NoteableID",
- "description": "Identifier of Noteable.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "OncallParticipantType",
- "description": "The rotation participant and color palette",
- "fields": [
- {
- "name": "colorPalette",
- "description": "The color palette to assign to the on-call user. For example \"blue\".",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "colorWeight",
- "description": "The color weight to assign to for the on-call user, for example \"500\". Max 4 chars. For easy identification of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the on-call participant.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "IncidentManagementOncallParticipantID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "The user who is participating.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "OncallParticipantTypeConnection",
- "description": "The connection type for OncallParticipantType.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "OncallParticipantTypeEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "OncallParticipantType",
- "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": "OncallParticipantTypeEdge",
- "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": "OncallParticipantType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "OncallRotationCreateInput",
- "description": "Autogenerated input type of OncallRotationCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to create the on-call schedule in.",
- "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 create the on-call rotation in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The name of the on-call rotation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "startsAt",
- "description": "The start date and time of the on-call rotation, in the timezone of the on-call schedule.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallRotationDateInputType",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "rotationLength",
- "description": "The rotation length of the on-call rotation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallRotationLengthInputType",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "participants",
- "description": "The usernames of users participating in the on-call rotation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "OncallUserInputType",
- "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": "OncallRotationCreatePayload",
- "description": "Autogenerated return type of OncallRotationCreate",
- "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": "OncallRotationDateInputType",
- "description": "Date input type for on-call rotation",
- "fields": null,
- "inputFields": [
- {
- "name": "date",
- "description": "The date component of the date in YYYY-MM-DD format.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "time",
- "description": "The time component of the date in 24hr HH:MM format.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "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,
- "inputFields": [
- {
- "name": "length",
- "description": "The rotation length of the on-call rotation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "unit",
- "description": "The unit of the rotation length of the on-call rotation.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "OncallRotationUnitEnum",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "OncallRotationUnitEnum",
- "description": "Rotation length unit of an on-call rotation",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "HOURS",
- "description": "Hours",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DAYS",
- "description": "Days",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEEKS",
- "description": "Weeks",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleCreateInput",
- "description": "Autogenerated input type of OncallScheduleCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to create the on-call schedule in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The name of the on-call schedule.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the on-call schedule.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timezone",
- "description": "The timezone of the on-call schedule.",
- "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": "OncallScheduleCreatePayload",
- "description": "Autogenerated return type of OncallScheduleCreate",
- "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": "oncallSchedule",
- "description": "The on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallSchedule",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleDestroyInput",
- "description": "Autogenerated input type of OncallScheduleDestroy",
- "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": "iid",
- "description": "The on-call schedule internal ID to remove.",
- "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": "OncallScheduleDestroyPayload",
- "description": "Autogenerated return type of OncallScheduleDestroy",
- "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": "oncallSchedule",
- "description": "The on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallSchedule",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "OncallScheduleUpdateInput",
- "description": "Autogenerated input type of OncallScheduleUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to update the on-call schedule in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "The on-call schedule internal ID to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The name of the on-call schedule.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the on-call schedule.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timezone",
- "description": "The timezone of the on-call schedule.",
- "type": {
- "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": "OncallScheduleUpdatePayload",
- "description": "Autogenerated return type of OncallScheduleUpdate",
- "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": "oncallSchedule",
- "description": "The on-call schedule.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IncidentManagementOncallSchedule",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "OncallUserInputType",
- "description": "The rotation user and color palette",
- "fields": null,
- "inputFields": [
- {
- "name": "username",
- "description": "The username of the user to participate in the on-call rotation, such as `user_one`.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "colorPalette",
- "description": "A value of DataVisualizationColorEnum. The color from the palette to assign to the on-call user.",
- "type": {
- "kind": "ENUM",
- "name": "DataVisualizationColorEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "colorWeight",
- "description": "A value of DataVisualizationWeightEnum. The color weight to assign to for the on-call user.",
- "type": {
- "kind": "ENUM",
- "name": "DataVisualizationWeightEnum",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Package",
- "description": "Represents 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
- },
- {
- "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": "PackageWithoutVersionsConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PackageComposerJsonType",
- "description": "Represents a composer JSON file",
- "fields": [
- {
- "name": "license",
- "description": "The license set in the Composer JSON file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "The name set in the Composer JSON file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "The type set in the Composer JSON file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "The version set in the Composer JSON file.",
- "args": [
-
- ],
- "type": {
- "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": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PackageEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Package",
- "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": "PackageEdge",
- "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": "Package",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PackageFileRegistry",
- "description": "Represents the Geo sync and verification state of a package file",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp when the PackageFileRegistry was created",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the PackageFileRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncFailure",
- "description": "Error message during sync of the PackageFileRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncedAt",
- "description": "Timestamp of the most recent successful sync of the PackageFileRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packageFileId",
- "description": "ID of the PackageFile.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryAt",
- "description": "Timestamp after which the PackageFileRegistry should be resynced",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryCount",
- "description": "Number of consecutive failed sync attempts of the PackageFileRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "Sync state of the PackageFileRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "RegistryState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PackageFileRegistryConnection",
- "description": "The connection type for PackageFileRegistry.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PackageFileRegistryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PackageFileRegistry",
- "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": "PackageFileRegistryEdge",
- "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": "PackageFileRegistry",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "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",
- "fields": [
- {
- "name": "mavenDuplicateExceptionRegex",
- "description": "When maven_duplicates_allowed is false, you can publish duplicate packages with names that match this regex. Otherwise, this setting has no effect.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mavenDuplicatesAllowed",
- "description": "Indicates whether duplicate Maven packages are allowed for this namespace.",
- "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": "PackageTag",
- "description": "Represents a package tag",
- "fields": [
- {
- "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 tag.",
- "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 tag.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "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
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PackageTagConnection",
- "description": "The connection type for PackageTag.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PackageTagEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PackageTag",
- "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": "PackageTagEdge",
- "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": "PackageTag",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "PackageTypeEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "MAVEN",
- "description": "Packages from the Maven package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NPM",
- "description": "Packages from the npm package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONAN",
- "description": "Packages from the Conan package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NUGET",
- "description": "Packages from the Nuget package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PYPI",
- "description": "Packages from the PyPI package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COMPOSER",
- "description": "Packages from the Composer package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GENERIC",
- "description": "Packages from the Generic package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GOLANG",
- "description": "Packages from the Golang package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEBIAN",
- "description": "Packages from the Debian package manager",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RUBYGEMS",
- "description": "Packages from the Rubygems package manager",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "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.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PageInfo",
- "description": "Information about pagination in a connection.",
- "fields": [
- {
- "name": "endCursor",
- "description": "When paginating forwards, the cursor to continue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasNextPage",
- "description": "When paginating forwards, are there more items?",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasPreviousPage",
- "description": "When paginating backwards, are there more items?",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startCursor",
- "description": "When paginating backwards, the cursor to continue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Pipeline",
- "description": null,
- "fields": [
- {
- "name": "active",
- "description": "Indicates if the pipeline is active.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "beforeSha",
- "description": "Base SHA of the source branch.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "cancelable",
- "description": "Specifies if a pipeline can be canceled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "committedAt",
- "description": "Timestamp of the pipeline's commit.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "configSource",
- "description": "Configuration source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE, COMPLIANCE_SOURCE)",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "PipelineConfigSourceEnum",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "coverage",
- "description": "Coverage percentage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of the pipeline's creation.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detailedStatus",
- "description": "Detailed status of the pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DetailedStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downstream",
- "description": "Pipelines this pipeline will trigger.",
- "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": "duration",
- "description": "Duration of the pipeline in seconds.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "finishedAt",
- "description": "Timestamp of the pipeline's completion.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jobs",
- "description": "Jobs belonging to the pipeline.",
- "args": [
- {
- "name": "securityReportTypes",
- "description": "Filter jobs by the type of security report they produce.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SecurityReportTypeEnum",
- "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": "CiJobConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Relative path to the pipeline's page.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project the pipeline belongs to.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryable",
- "description": "Specifies if a pipeline can be retried.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "securityReportSummary",
- "description": "Vulnerability and scanned resource counts for each security scanner of the pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummary",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "SHA of the pipeline's commit.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sourceJob",
- "description": "Job where pipeline was triggered from.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiJob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stages",
- "description": "Stages of the pipeline.",
- "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": "CiStageConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startedAt",
- "description": "Timestamp when the pipeline was started.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the pipeline (CREATED, WAITING_FOR_RESOURCE, PREPARING, PENDING, RUNNING, FAILED, SUCCESS, CANCELED, SKIPPED, MANUAL, SCHEDULED)",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "PipelineStatusEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of the pipeline's last activity.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upstream",
- "description": "Pipeline that triggered the pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "Pipeline user.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PipelinePermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "warnings",
- "description": "Indicates if a pipeline has warnings.",
- "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": "PipelineAnalytics",
- "description": null,
- "fields": [
- {
- "name": "monthPipelinesLabels",
- "description": "Labels for the monthly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "monthPipelinesSuccessful",
- "description": "Total monthly successful pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "monthPipelinesTotals",
- "description": "Total monthly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineTimesLabels",
- "description": "Pipeline times labels.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineTimesValues",
- "description": "Pipeline times.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weekPipelinesLabels",
- "description": "Labels for the weekly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weekPipelinesSuccessful",
- "description": "Total weekly successful pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weekPipelinesTotals",
- "description": "Total weekly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "yearPipelinesLabels",
- "description": "Labels for the yearly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "yearPipelinesSuccessful",
- "description": "Total yearly successful pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "yearPipelinesTotals",
- "description": "Total yearly pipeline count.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "PipelineCancelInput",
- "description": "Autogenerated input type of PipelineCancel",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the pipeline to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "CiPipelineID",
- "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": "PipelineCancelPayload",
- "description": "Autogenerated return type of PipelineCancel",
- "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": "PipelineConfigSourceEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "UNKNOWN_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REPOSITORY_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "AUTO_DEVOPS_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEBIDE_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REMOTE_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EXTERNAL_PROJECT_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BRIDGE_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PARAMETER_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COMPLIANCE_SOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PipelineConnection",
- "description": "The connection type for Pipeline.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "PipelineEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "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": "PipelineDestroyInput",
- "description": "Autogenerated input type of PipelineDestroy",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the pipeline to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "CiPipelineID",
- "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": "PipelineDestroyPayload",
- "description": "Autogenerated return type of PipelineDestroy",
- "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": "PipelineEdge",
- "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": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PipelinePermissions",
- "description": null,
- "fields": [
- {
- "name": "adminPipeline",
- "description": "Indicates the user can perform `admin_pipeline` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyPipeline",
- "description": "Indicates the user can perform `destroy_pipeline` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatePipeline",
- "description": "Indicates the user can perform `update_pipeline` on this resource",
- "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": "INPUT_OBJECT",
- "name": "PipelineRetryInput",
- "description": "Autogenerated input type of PipelineRetry",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the pipeline to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "CiPipelineID",
- "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": "PipelineRetryPayload",
- "description": "Autogenerated return type of PipelineRetry",
- "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": "pipeline",
- "description": "The pipeline after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "PipelineStatusEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CREATED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WAITING_FOR_RESOURCE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PREPARING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PENDING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RUNNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FAILED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SUCCESS",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CANCELED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SKIPPED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MANUAL",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SCHEDULED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Project",
- "description": null,
- "fields": [
- {
- "name": "actualRepositorySizeLimit",
- "description": "Size limit for the repository in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertManagementAlert",
- "description": "A single Alert Management alert of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the alert. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "statuses",
- "description": "Alerts with the specified statues. For example, [TRIGGERED].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementStatus",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort alerts by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "AlertManagementAlertSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "domain",
- "description": "Filter query for given domain.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementDomainFilter",
- "ofType": null
- }
- },
- "defaultValue": "operations"
- },
- {
- "name": "search",
- "description": "Search query for title, description, service, or monitoring_tool.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertManagementAlertStatusCounts",
- "description": "Counts of alerts by status for the project.",
- "args": [
- {
- "name": "search",
- "description": "Search query for title, description, service, or monitoring_tool.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlertStatusCountsType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertManagementAlerts",
- "description": "Alert Management alerts of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the alert. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "statuses",
- "description": "Alerts with the specified statues. For example, [TRIGGERED].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementStatus",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort alerts by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "AlertManagementAlertSort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "domain",
- "description": "Filter query for given domain.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementDomainFilter",
- "ofType": null
- }
- },
- "defaultValue": "operations"
- },
- {
- "name": "search",
- "description": "Search query for title, description, service, or monitoring_tool.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "AlertManagementAlertConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "alertManagementIntegrations",
- "description": "Integrations which can receive alerts for the project.",
- "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": "AlertManagementIntegrationConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "apiFuzzingCiConfiguration",
- "description": "API fuzzing configuration for the project. Available only when feature flag `api_fuzzing_configuration_ui` is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ApiFuzzingCiConfiguration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "archived",
- "description": "Indicates the archived status of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "autocloseReferencedIssues",
- "description": "Indicates if issues referenced by merge requests and commits within the default branch are closed automatically.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "avatarUrl",
- "description": "URL to avatar image file of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "board",
- "description": "A single board of the project.",
- "args": [
- {
- "name": "id",
- "description": "The board's ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "boards",
- "description": "Boards of the project.",
- "args": [
- {
- "name": "id",
- "description": "Find a board by its ID.",
- "type": {
- "kind": "SCALAR",
- "name": "BoardID",
- "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": "BoardConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ciCdSettings",
- "description": "CI/CD settings for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ProjectCiCdSetting",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "clusterAgent",
- "description": "Find a single cluster agent by name.",
- "args": [
- {
- "name": "name",
- "description": "Name of the cluster agent.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ClusterAgent",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "clusterAgents",
- "description": "Cluster agents associated with the project.",
- "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": "ClusterAgentConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "codeCoverageSummary",
- "description": "Code coverage summary associated with the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CodeCoverageSummary",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "complianceFrameworks",
- "description": "Compliance frameworks associated with the project.",
- "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": "ComplianceFrameworkConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerExpirationPolicy",
- "description": "The container expiration policy of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ContainerExpirationPolicy",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRegistryEnabled",
- "description": "Indicates if the project stores Docker container images in a container registry.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRepositories",
- "description": "Container repositories of the project.",
- "args": [
- {
- "name": "name",
- "description": "Filter the container repositories by their name.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort container repositories by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "ContainerRepositorySort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "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": "ContainerRepositoryConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRepositoriesCount",
- "description": "Number of container repositories in the project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of the project creation.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "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.",
- "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": "DastScannerProfileConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteProfile",
- "description": "DAST Site Profile associated with the project.",
- "args": [
- {
- "name": "id",
- "description": "ID of the site profile.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DastSiteProfileID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "DastSiteProfile",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteProfiles",
- "description": "DAST Site Profiles associated with the project.",
- "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": "DastSiteProfileConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dastSiteValidations",
- "description": "DAST Site Validations associated with the project. Always returns no nodes if `security_on_demand_scans_site_validation` is disabled.",
- "args": [
- {
- "name": "normalizedTargetUrls",
- "description": "Normalized URL of the target to be scanned.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "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": "DastSiteValidationConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Short description of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "environment",
- "description": "A single environment of the project.",
- "args": [
- {
- "name": "name",
- "description": "Name of the environment.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for environment name.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "states",
- "description": "States of environments that should be included in result.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Environment",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "environments",
- "description": "Environments of the project.",
- "args": [
- {
- "name": "name",
- "description": "Name of the environment.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for environment name.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "states",
- "description": "States of environments that should be included in result.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "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": "EnvironmentConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "forksCount",
- "description": "Number of times the project has been forked.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fullPath",
- "description": "Full path of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "grafanaIntegration",
- "description": "Grafana integration details for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "GrafanaIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "httpUrlToRepo",
- "description": "URL to connect to the project via HTTPS.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "importStatus",
- "description": "Status of import background job of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "incidentManagementOncallSchedules",
- "description": "Incident Management On-call schedules of the project.",
- "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": "IncidentManagementOncallScheduleConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "A single issue of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the issue. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of issues. For example, [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Labels applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Milestone applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "Usernames of users assigned to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "ID of a user assigned to the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdBefore",
- "description": "Issues created before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdAfter",
- "description": "Issues created after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedBefore",
- "description": "Issues updated before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedAfter",
- "description": "Issues updated after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedBefore",
- "description": "Issues closed before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedAfter",
- "description": "Issues closed after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for issue title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "types",
- "description": "Filter issues by the given issue types.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Current state of this issue.",
- "type": {
- "kind": "ENUM",
- "name": "IssuableState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort issues by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "IssueSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "iterationId",
- "description": "Iterations applied to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "ID of an epic associated with the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueStatusCounts",
- "description": "Counts of issues by status for the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the issue. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of issues. For example, [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Labels applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Milestone applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "Usernames of users assigned to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "ID of a user assigned to the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdBefore",
- "description": "Issues created before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdAfter",
- "description": "Issues created after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedBefore",
- "description": "Issues updated before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedAfter",
- "description": "Issues updated after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedBefore",
- "description": "Issues closed before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedAfter",
- "description": "Issues closed after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for issue title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "types",
- "description": "Filter issues by the given issue types.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "IssueStatusCountsType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issues",
- "description": "Issues of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the issue. For example, \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of issues. For example, [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelName",
- "description": "Labels applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Milestone applied to this issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of a user assigned to the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsernames",
- "description": "Usernames of users assigned to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "ID of a user assigned to the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdBefore",
- "description": "Issues created before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "createdAfter",
- "description": "Issues created after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedBefore",
- "description": "Issues updated before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "updatedAfter",
- "description": "Issues updated after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedBefore",
- "description": "Issues closed before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "closedAfter",
- "description": "Issues closed after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for issue title or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "types",
- "description": "Filter issues by the given issue types.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "IssueType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Current state of this issue.",
- "type": {
- "kind": "ENUM",
- "name": "IssuableState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort issues by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "IssueSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "iterationId",
- "description": "Iterations applied to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "ID of an epic associated with the issues, \"none\" and \"any\" values are supported.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "IssueConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issuesEnabled",
- "description": "Indicates if Issues are enabled for the current user",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iterations",
- "description": "Find iterations.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter iterations by state.",
- "type": {
- "kind": "ENUM",
- "name": "IterationState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Fuzzy search by title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "Global ID of the Iteration to look up.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the Iteration to look up.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeAncestors",
- "description": "Whether to include ancestor iterations. Defaults to true.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "IterationConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraImportStatus",
- "description": "Status of Jira import background job of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jiraImports",
- "description": "Jira imports into the project.",
- "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": "JiraImportConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "jobsEnabled",
- "description": "Indicates if CI/CD pipeline jobs are enabled for the current user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "A label available on this project.",
- "args": [
- {
- "name": "title",
- "description": "Title of the label.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Label",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "labels",
- "description": "Labels available on this project.",
- "args": [
- {
- "name": "searchTerm",
- "description": "A search term to find labels with.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeAncestorGroups",
- "description": "Include labels from ancestor groups.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "LabelConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastActivityAt",
- "description": "Timestamp of the project last activity.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsEnabled",
- "description": "Indicates if the project has Large File Storage (LFS) enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequest",
- "description": "A single merge request of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the merge request, for example `1`.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequests",
- "description": "Merge requests of the project.",
- "args": [
- {
- "name": "iids",
- "description": "Array of IIDs of merge requests, for example `[1, 2]`.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranches",
- "description": "Array of source branch names. All resolved merge requests will have one of these branches as their source.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranches",
- "description": "Array of target branch names. All resolved merge requests will have one of these branches as their target.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "A merge request state. If provided, all resolved merge requests will have this state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Array of label names. All resolved merge requests will have all of these labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "mergedAfter",
- "description": "Merge requests merged after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergedBefore",
- "description": "Merge requests merged before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort merge requests by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "assigneeUsername",
- "description": "Username of the assignee.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "reviewerUsername",
- "description": "Username of the reviewer.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "MergeRequestConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestsEnabled",
- "description": "Indicates if Merge Requests are enabled for the current user",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequestsFfOnlyEnabled",
- "description": "Indicates if no merge commits should be created and all merges should instead be fast-forwarded, which means that merging is only allowed if the branch could be fast-forwarded.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestones",
- "description": "Milestones of the project.",
- "args": [
- {
- "name": "startDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.start.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "List items overlapping a time frame defined by startDate..endDate (if one date is provided, both must be present) Deprecated in 13.5: Use timeframe.end.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "timeframe",
- "description": "List items overlapping the given timeframe.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ids",
- "description": "Array of global milestone IDs, e.g., \"gid://gitlab/Milestone/1\".",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter milestones by state.",
- "type": {
- "kind": "ENUM",
- "name": "MilestoneStateEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "The title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "searchTitle",
- "description": "A search string for the title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "containingDate",
- "description": "A date that the milestone contains.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "includeAncestors",
- "description": "Also return milestones in the project's parent group and its ancestors.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "MilestoneConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the project (without namespace).",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nameWithNamespace",
- "description": "Full name of the project with its namespace.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "namespace",
- "description": "Namespace of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Namespace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "onlyAllowMergeIfAllDiscussionsAreResolved",
- "description": "Indicates if merge requests of the project can only be merged when all the discussions are resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "onlyAllowMergeIfPipelineSucceeds",
- "description": "Indicates if merge requests of the project can only be merged with successful jobs.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openIssuesCount",
- "description": "Number of open issues for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packages",
- "description": "Packages of the project.",
- "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",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipeline",
- "description": "Build pipeline of the project.",
- "args": [
- {
- "name": "iid",
- "description": "IID of the Pipeline, e.g., \"1\".",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Pipeline",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineAnalytics",
- "description": "Pipeline analytics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PipelineAnalytics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelines",
- "description": "Build pipelines of the project.",
- "args": [
- {
- "name": "status",
- "description": "Filter pipelines by their status.",
- "type": {
- "kind": "ENUM",
- "name": "PipelineStatusEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ref",
- "description": "Filter pipelines by the ref they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sha",
- "description": "Filter pipelines by the sha of the commit they are run for.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "PipelineConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "printingMergeRequestLinkEnabled",
- "description": "Indicates if a link to create or view a merge request should display after a push to Git repositories of the project from the command line.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectMembers",
- "description": "Members of the project.",
- "args": [
- {
- "name": "search",
- "description": "Search query.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "relations",
- "description": "Filter members by the given member relations.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "ProjectMemberRelation",
- "ofType": null
- }
- }
- },
- "defaultValue": "[DIRECT, INHERITED]"
- },
- {
- "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": "MemberInterfaceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "publicJobs",
- "description": "Indicates if there is public access to pipelines and job details of the project, including output logs and artifacts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "release",
- "description": "A single release of the project.",
- "args": [
- {
- "name": "tagName",
- "description": "The name of the tag associated to the release.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Release",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releases",
- "description": "Releases of the project.",
- "args": [
- {
- "name": "sort",
- "description": "Sort releases by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "ReleaseSort",
- "ofType": null
- },
- "defaultValue": "RELEASED_AT_DESC"
- },
- {
- "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": "ReleaseConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removeSourceBranchAfterMerge",
- "description": "Indicates if `Delete source branch` option should be enabled by default for all new merge requests of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repository",
- "description": "Git repository of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Repository",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositorySizeExcess",
- "description": "Size of repository that exceeds the limit in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requestAccessEnabled",
- "description": "Indicates if users can request member access to the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requirement",
- "description": "Find a single requirement.",
- "args": [
- {
- "name": "sort",
- "description": "List requirements by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "Sort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter requirements by state.",
- "type": {
- "kind": "ENUM",
- "name": "RequirementState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for requirement title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter requirements by author username.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the requirement, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of requirements, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "lastTestReportState",
- "description": "The state of latest requirement test report.",
- "type": {
- "kind": "ENUM",
- "name": "TestReportState",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Requirement",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requirementStatesCount",
- "description": "Number of requirements for the project by their state.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RequirementStatesCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requirements",
- "description": "Find requirements.",
- "args": [
- {
- "name": "sort",
- "description": "List requirements by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "Sort",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter requirements by state.",
- "type": {
- "kind": "ENUM",
- "name": "RequirementState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for requirement title.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Filter requirements by author username.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "IID of the requirement, e.g., \"1\".",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iids",
- "description": "List of IIDs of requirements, e.g., [1, 2].",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "lastTestReportState",
- "description": "The state of latest requirement test report.",
- "type": {
- "kind": "ENUM",
- "name": "TestReportState",
- "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": "RequirementConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sastCiConfiguration",
- "description": "SAST CI configuration for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SastCiConfiguration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "securityDashboardPath",
- "description": "Path to project's security dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "securityScanners",
- "description": "Information about security analyzers used in the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityScanners",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryDetailedError",
- "description": "Detailed version of a Sentry error on the project.",
- "args": [
- {
- "name": "id",
- "description": "ID of the Sentry issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "GitlabErrorTrackingDetailedErrorID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SentryDetailedError",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryErrors",
- "description": "Paginated collection of Sentry errors on the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SentryErrorCollection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "serviceDeskAddress",
- "description": "E-mail address of the service desk.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "serviceDeskEnabled",
- "description": "Indicates if the project has service desk enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "services",
- "description": "Project services.",
- "args": [
- {
- "name": "active",
- "description": "Indicates if the service is active.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "Class name of the service.",
- "type": {
- "kind": "ENUM",
- "name": "ServiceType",
- "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": "ServiceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sharedRunnersEnabled",
- "description": "Indicates if shared runners are enabled for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippets",
- "description": "Snippets of the project.",
- "args": [
- {
- "name": "ids",
- "description": "Array of global snippet ids, e.g., \"gid://gitlab/ProjectSnippet/1\".",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "visibility",
- "description": "The visibility of the snippet.",
- "type": {
- "kind": "ENUM",
- "name": "VisibilityScopesEnum",
- "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": "SnippetConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippetsEnabled",
- "description": "Indicates if Snippets are enabled for the current user",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "squashReadOnly",
- "description": "Indicates if `squashReadOnly` is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sshUrlToRepo",
- "description": "URL to connect to the project via SSH.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "starCount",
- "description": "Number of times the project has been starred.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "statistics",
- "description": "Statistics of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ProjectStatistics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "suggestionCommitMessage",
- "description": "The commit message used to apply merge request suggestions.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tagList",
- "description": "List of project topics (not Git tags).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "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.",
- "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": "TerraformStateConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "visibility",
- "description": "Visibility of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilities",
- "description": "Vulnerabilities reported on the project.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by VulnerabilityScanner.externalId.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List vulnerabilities by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilitySort",
- "ofType": null
- },
- "defaultValue": "severity_desc"
- },
- {
- "name": "hasResolution",
- "description": "Returns only the vulnerabilities which have been resolved on default branch.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "hasIssues",
- "description": "Returns only the vulnerabilities which have linked issues.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "VulnerabilityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCountByDay",
- "description": "Number of vulnerabilities per day for the project.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "Last day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "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": "VulnerabilitiesCountByDayConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityScanners",
- "description": "Vulnerability scanners reported on the project vulnerabilities.",
- "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": "VulnerabilityScannerConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitySeveritiesCount",
- "description": "Counts for each vulnerability severity in the project.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by scanner.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilitySeveritiesCount",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "wikiEnabled",
- "description": "Indicates if Wikis are enabled for the current user",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectCiCdSetting",
- "description": null,
- "fields": [
- {
- "name": "keepLatestArtifact",
- "description": "Whether to keep the latest builds artifacts.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergePipelinesEnabled",
- "description": "Whether merge pipelines are enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeTrainsEnabled",
- "description": "Whether merge trains are enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project the CI/CD settings belong to.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectConnection",
- "description": "The connection type for Project.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "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": "ProjectEdge",
- "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": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "ProjectID",
- "description": "Identifier of Project.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectMember",
- "description": "Represents a Project Membership",
- "fields": [
- {
- "name": "accessLevel",
- "description": "GitLab::Access level.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AccessLevel",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Date and time the membership was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdBy",
- "description": "User that authorized membership.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "expiresAt",
- "description": "Date and time the membership expires.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the member.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project that User is a member of.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Date and time the membership was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "User that is associated with the member object.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "MemberInterface",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectMemberConnection",
- "description": "The connection type for ProjectMember.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectMemberEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectMember",
- "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": "ProjectMemberEdge",
- "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": "ProjectMember",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ProjectMemberRelation",
- "description": "Project member relation",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "DIRECT",
- "description": "Direct members",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INHERITED",
- "description": "Inherited members",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DESCENDANTS",
- "description": "Descendants members",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INVITED_GROUPS",
- "description": "Invited Groups members",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ProjectPermissions",
- "description": null,
- "fields": [
- {
- "name": "adminOperations",
- "description": "Indicates the user can perform `admin_operations` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminProject",
- "description": "Indicates the user can perform `admin_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminRemoteMirror",
- "description": "Indicates the user can perform `admin_remote_mirror` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminWiki",
- "description": "Indicates the user can perform `admin_wiki` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "archiveProject",
- "description": "Indicates the user can perform `archive_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "changeNamespace",
- "description": "Indicates the user can perform `change_namespace` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "changeVisibilityLevel",
- "description": "Indicates the user can perform `change_visibility_level` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createDeployment",
- "description": "Indicates the user can perform `create_deployment` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createDesign",
- "description": "Indicates the user can perform `create_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createIssue",
- "description": "Indicates the user can perform `create_issue` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createLabel",
- "description": "Indicates the user can perform `create_label` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createMergeRequestFrom",
- "description": "Indicates the user can perform `create_merge_request_from` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createMergeRequestIn",
- "description": "Indicates the user can perform `create_merge_request_in` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createPages",
- "description": "Indicates the user can perform `create_pages` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createPipeline",
- "description": "Indicates the user can perform `create_pipeline` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createPipelineSchedule",
- "description": "Indicates the user can perform `create_pipeline_schedule` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createSnippet",
- "description": "Indicates the user can perform `create_snippet` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createWiki",
- "description": "Indicates the user can perform `create_wiki` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyDesign",
- "description": "Indicates the user can perform `destroy_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyPages",
- "description": "Indicates the user can perform `destroy_pages` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyWiki",
- "description": "Indicates the user can perform `destroy_wiki` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downloadCode",
- "description": "Indicates the user can perform `download_code` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downloadWikiCode",
- "description": "Indicates the user can perform `download_wiki_code` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "forkProject",
- "description": "Indicates the user can perform `fork_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pushCode",
- "description": "Indicates the user can perform `push_code` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pushToDeleteProtectedBranch",
- "description": "Indicates the user can perform `push_to_delete_protected_branch` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readCommitStatus",
- "description": "Indicates the user can perform `read_commit_status` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readCycleAnalytics",
- "description": "Indicates the user can perform `read_cycle_analytics` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readDesign",
- "description": "Indicates the user can perform `read_design` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readMergeRequest",
- "description": "Indicates the user can perform `read_merge_request` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readPagesContent",
- "description": "Indicates the user can perform `read_pages_content` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readProject",
- "description": "Indicates the user can perform `read_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readProjectMember",
- "description": "Indicates the user can perform `read_project_member` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readWiki",
- "description": "Indicates the user can perform `read_wiki` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removeForkProject",
- "description": "Indicates the user can perform `remove_fork_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removePages",
- "description": "Indicates the user can perform `remove_pages` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "removeProject",
- "description": "Indicates the user can perform `remove_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "renameProject",
- "description": "Indicates the user can perform `rename_project` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requestAccess",
- "description": "Indicates the user can perform `request_access` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatePages",
- "description": "Indicates the user can perform `update_pages` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateWiki",
- "description": "Indicates the user can perform `update_wiki` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "uploadFile",
- "description": "Indicates the user can perform `upload_file` on this resource",
- "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": "ProjectStatistics",
- "description": null,
- "fields": [
- {
- "name": "buildArtifactsSize",
- "description": "Build artifacts size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commitCount",
- "description": "Commit count of the project.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsObjectsSize",
- "description": "Large File Storage (LFS) object size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packagesSize",
- "description": "Packages size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositorySize",
- "description": "Repository size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippetsSize",
- "description": "Snippets size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "storageSize",
- "description": "Storage size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "uploadsSize",
- "description": "Uploads size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "wikiSize",
- "description": "Wiki size of the project in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "PrometheusAlert",
- "description": "The alert condition for Prometheus",
- "fields": [
- {
- "name": "humanizedText",
- "description": "The human-readable text of the alert condition.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the alert condition.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationCreateInput",
- "description": "Autogenerated input type of PrometheusIntegrationCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project to create the integration in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "active",
- "description": "Whether the integration is receiving alerts.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "apiUrl",
- "description": "Endpoint at which prometheus can be queried.",
- "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": "PrometheusIntegrationCreatePayload",
- "description": "Autogenerated return type of PrometheusIntegrationCreate",
- "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": "integration",
- "description": "The newly created integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementPrometheusIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationResetTokenInput",
- "description": "Autogenerated input type of PrometheusIntegrationResetToken",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the integration to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "PrometheusServiceID",
- "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": "PrometheusIntegrationResetTokenPayload",
- "description": "Autogenerated return type of PrometheusIntegrationResetToken",
- "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": "integration",
- "description": "The newly created integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementPrometheusIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "PrometheusIntegrationUpdateInput",
- "description": "Autogenerated input type of PrometheusIntegrationUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The ID of the integration to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "PrometheusServiceID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "active",
- "description": "Whether the integration is receiving alerts.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "apiUrl",
- "description": "Endpoint at which prometheus can be queried.",
- "type": {
- "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": "PrometheusIntegrationUpdatePayload",
- "description": "Autogenerated return type of PrometheusIntegrationUpdate",
- "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": "integration",
- "description": "The newly created integration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementPrometheusIntegration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "PrometheusServiceID",
- "description": "Identifier of PrometheusService.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "PromoteToEpicInput",
- "description": "Autogenerated input type of PromoteToEpic",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupPath",
- "description": "The group the promoted epic will belong to.",
- "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": "PromoteToEpicPayload",
- "description": "Autogenerated return type of PromoteToEpic",
- "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": "epic",
- "description": "The epic after issue promotion.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Query",
- "description": null,
- "fields": [
- {
- "name": "ciApplicationSettings",
- "description": "CI related settings that apply to the entire instance.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiApplicationSettings",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ciConfig",
- "description": "Get linted and processed contents of a CI config. Should not be requested more than once per request.",
- "args": [
- {
- "name": "projectPath",
- "description": "The project of the CI config.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "content",
- "description": "Contents of '.gitlab-ci.yml'.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "dryRun",
- "description": "Run pipeline creation simulation, or only do static check.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiConfig",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerRepository",
- "description": "Find a container repository.",
- "args": [
- {
- "name": "id",
- "description": "The global ID of the container repository.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ContainerRepositoryID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ContainerRepositoryDetails",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "currentUser",
- "description": "Get information about current user.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "designManagement",
- "description": "Fields related to design management.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DesignManagement",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "devopsAdoptionSegments",
- "description": "Get configured DevOps adoption segments on the instance.",
- "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": "DevopsAdoptionSegmentConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "echo",
- "description": "Text to echo back.",
- "args": [
- {
- "name": "text",
- "description": "Text to echo back.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "geoNode",
- "description": "Find a Geo node.",
- "args": [
- {
- "name": "name",
- "description": "The name of the Geo node. Defaults to the current Geo node name.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "GeoNode",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Find a group.",
- "args": [
- {
- "name": "fullPath",
- "description": "The full path of the project, group or namespace, e.g., \"gitlab-org/gitlab-foss\".",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "instanceSecurityDashboard",
- "description": "Fields related to Instance Security Dashboard.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "InstanceSecurityDashboard",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "instanceStatisticsMeasurements",
- "description": "Get statistics on the instance.",
- "args": [
- {
- "name": "identifier",
- "description": "The type of measurement/statistics to retrieve.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "MeasurementIdentifier",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "recordedAfter",
- "description": "Measurement recorded after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "recordedBefore",
- "description": "Measurement recorded before this date.",
- "type": {
- "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": "InstanceStatisticsMeasurementConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "Find an issue.",
- "args": [
- {
- "name": "id",
- "description": "The global ID of the Issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "IssueID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iteration",
- "description": "Find an iteration.",
- "args": [
- {
- "name": "id",
- "description": "Find an iteration by its ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "IterationID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "metadata",
- "description": "Metadata about GitLab.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Metadata",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestone",
- "description": "Find a milestone.",
- "args": [
- {
- "name": "id",
- "description": "Find a milestone by its ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "namespace",
- "description": "Find a namespace.",
- "args": [
- {
- "name": "fullPath",
- "description": "The full path of the project, group or namespace, e.g., \"gitlab-org/gitlab-foss\".",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Namespace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "package",
- "description": "Find a package.",
- "args": [
- {
- "name": "id",
- "description": "The global ID of the package.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "PackagesPackageID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Package",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Find a project.",
- "args": [
- {
- "name": "fullPath",
- "description": "The full path of the project, group or namespace, e.g., \"gitlab-org/gitlab-foss\".",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projects",
- "description": "Find projects visible to the current user.",
- "args": [
- {
- "name": "membership",
- "description": "Limit projects that the current user is a member of.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "search",
- "description": "Search query for project name, path, or description.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "ids",
- "description": "Filter projects by IDs.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "searchNamespaces",
- "description": "Include namespace in project search.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort order of results.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "ProjectConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "runnerPlatforms",
- "description": "Supported runner platforms.",
- "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": "RunnerPlatformConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "runnerSetup",
- "description": "Get runner setup instructions.",
- "args": [
- {
- "name": "platform",
- "description": "Platform to generate the instructions for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "architecture",
- "description": "Architecture to generate the instructions for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "Project to register the runner for.",
- "type": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "groupId",
- "description": "Group to register the runner for.",
- "type": {
- "kind": "SCALAR",
- "name": "GroupID",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "RunnerSetup",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippets",
- "description": "Find Snippets visible to the current user.",
- "args": [
- {
- "name": "ids",
- "description": "Array of global snippet ids, e.g., \"gid://gitlab/ProjectSnippet/1\".",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "visibility",
- "description": "The visibility of the snippet.",
- "type": {
- "kind": "ENUM",
- "name": "VisibilityScopesEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorId",
- "description": "The ID of an author.",
- "type": {
- "kind": "SCALAR",
- "name": "UserID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The ID of a project.",
- "type": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "The type of snippet.",
- "type": {
- "kind": "ENUM",
- "name": "TypeEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "explore",
- "description": "Explore personal snippets.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "SnippetConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "Find a user.",
- "args": [
- {
- "name": "id",
- "description": "ID of the User.",
- "type": {
- "kind": "SCALAR",
- "name": "UserID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "username",
- "description": "Username of the User.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "users",
- "description": "Find users.",
- "args": [
- {
- "name": "ids",
- "description": "List of user Global IDs.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "usernames",
- "description": "List of usernames.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort users by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "Sort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "search",
- "description": "Query to search users by name, username, or primary email.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "admins",
- "description": "Return only admin users.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- },
- {
- "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": "UserConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilities",
- "description": "Vulnerabilities reported on projects on the current user's instance security dashboard.",
- "args": [
- {
- "name": "projectId",
- "description": "Filter vulnerabilities by project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "reportType",
- "description": "Filter vulnerabilities by report type.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "severity",
- "description": "Filter vulnerabilities by severity.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "Filter vulnerabilities by state.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanner",
- "description": "Filter vulnerabilities by VulnerabilityScanner.externalId.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "List vulnerabilities by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilitySort",
- "ofType": null
- },
- "defaultValue": "severity_desc"
- },
- {
- "name": "hasResolution",
- "description": "Returns only the vulnerabilities which have been resolved on default branch.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "hasIssues",
- "description": "Returns only the vulnerabilities which have linked issues.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "VulnerabilityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCountByDay",
- "description": "Number of vulnerabilities per day for the projects on the current user's instance security dashboard.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "Last day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "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": "VulnerabilitiesCountByDayConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCountByDayAndSeverity",
- "description": "Number of vulnerabilities per severity level, per day, for the projects on the current user's instance security dashboard. Deprecated in 13.3: Use `vulnerabilitiesCountByDay`.",
- "args": [
- {
- "name": "startDate",
- "description": "First day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "endDate",
- "description": "Last day for which to fetch vulnerability history.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "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": "VulnerabilitiesCountByDayAndSeverityConnection",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use `vulnerabilitiesCountByDay`. Deprecated in 13.3."
- },
- {
- "name": "vulnerability",
- "description": "Find a vulnerability.",
- "args": [
- {
- "name": "id",
- "description": "The Global ID of the Vulnerability.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "RegistryState",
- "description": "State of a Geo registry",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "PENDING",
- "description": "Registry waiting to be synced",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "STARTED",
- "description": "Registry currently syncing",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SYNCED",
- "description": "Registry that is synced",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FAILED",
- "description": "Registry that failed to sync",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Release",
- "description": "Represents a release",
- "fields": [
- {
- "name": "assets",
- "description": "Assets of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ReleaseAssets",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "User that created the release.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "commit",
- "description": "The commit associated with the release.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Commit",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the release was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description (also known as \"release notes\") of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "evidences",
- "description": "Evidence for the release.",
- "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": "ReleaseEvidenceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "links",
- "description": "Links of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ReleaseLinks",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "milestones",
- "description": "Milestones associated to the release.",
- "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": "MilestoneConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "releasedAt",
- "description": "Timestamp of when the release was released.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tagName",
- "description": "Name of the tag associated with the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tagPath",
- "description": "Relative web path to the tag associated with the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "upcomingRelease",
- "description": "Indicates the release is an upcoming release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseAssetLink",
- "description": "Represents an asset link associated with a release",
- "fields": [
- {
- "name": "directAssetUrl",
- "description": "Direct asset URL of the link.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "external",
- "description": "Indicates the link points to an external resource.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "linkType",
- "description": "Type of the link: `other`, `runbook`, `image`, `package`; defaults to `other`.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "ReleaseAssetLinkType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the link.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "URL of the link.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseAssetLinkConnection",
- "description": "The connection type for ReleaseAssetLink.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseAssetLinkEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseAssetLink",
- "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": "ReleaseAssetLinkEdge",
- "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": "ReleaseAssetLink",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseAssetLinkInput",
- "description": "Fields that are available when modifying a release asset link",
- "fields": null,
- "inputFields": [
- {
- "name": "name",
- "description": "Name of the asset link.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "url",
- "description": "URL of the asset link.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "directAssetPath",
- "description": "Relative path for a direct asset link.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "linkType",
- "description": "The type of the asset link.",
- "type": {
- "kind": "ENUM",
- "name": "ReleaseAssetLinkType",
- "ofType": null
- },
- "defaultValue": "OTHER"
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ReleaseAssetLinkType",
- "description": "Type of the link: `other`, `runbook`, `image`, `package`",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "OTHER",
- "description": "Other link type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RUNBOOK",
- "description": "Runbook link type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PACKAGE",
- "description": "Package link type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "IMAGE",
- "description": "Image link type",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseAssets",
- "description": "A container for all assets associated with a release",
- "fields": [
- {
- "name": "count",
- "description": "Number of assets of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "links",
- "description": "Asset links of the release.",
- "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": "ReleaseAssetLinkConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sources",
- "description": "Sources of the release.",
- "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": "ReleaseSourceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseAssetsInput",
- "description": "Fields that are available when modifying release assets",
- "fields": null,
- "inputFields": [
- {
- "name": "links",
- "description": "A list of asset links to associate to the release.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseAssetLinkInput",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseConnection",
- "description": "The connection type for Release.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Release",
- "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": "ReleaseCreateInput",
- "description": "Autogenerated input type of ReleaseCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project the release is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "tagName",
- "description": "Name of the tag to associate with the release.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "ref",
- "description": "The commit SHA or branch name to use if creating a new tag.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "Name of the release.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description (also known as \"release notes\") of the release.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "releasedAt",
- "description": "The date when the release will be/was ready. Defaults to the current time.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestones",
- "description": "The title of each milestone the release is associated with. GitLab Premium customers can specify group milestones.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "assets",
- "description": "Assets associated to the release.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseAssetsInput",
- "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": "ReleaseCreatePayload",
- "description": "Autogenerated return type of ReleaseCreate",
- "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": "release",
- "description": "The release after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Release",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseDeleteInput",
- "description": "Autogenerated input type of ReleaseDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project the release is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "tagName",
- "description": "Name of the tag associated with the release to delete.",
- "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": "ReleaseDeletePayload",
- "description": "Autogenerated return type of ReleaseDelete",
- "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": "release",
- "description": "The deleted release.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Release",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseEdge",
- "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": "Release",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseEvidence",
- "description": "Evidence for a release",
- "fields": [
- {
- "name": "collectedAt",
- "description": "Timestamp when the evidence was collected.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "filepath",
- "description": "URL from where the evidence can be downloaded.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the evidence.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "SHA1 ID of the evidence hash.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseEvidenceConnection",
- "description": "The connection type for ReleaseEvidence.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseEvidenceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseEvidence",
- "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": "ReleaseEvidenceEdge",
- "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": "ReleaseEvidence",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseLinks",
- "description": null,
- "fields": [
- {
- "name": "closedIssuesUrl",
- "description": "HTTP URL of the issues page, filtered by this release and `state=closed`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "closedMergeRequestsUrl",
- "description": "HTTP URL of the merge request page , filtered by this release and `state=closed`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "editUrl",
- "description": "HTTP URL of the release's edit page.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergedMergeRequestsUrl",
- "description": "HTTP URL of the merge request page , filtered by this release and `state=merged`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openedIssuesUrl",
- "description": "HTTP URL of the issues page, filtered by this release and `state=open`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "openedMergeRequestsUrl",
- "description": "HTTP URL of the merge request page, filtered by this release and `state=open`.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "selfUrl",
- "description": "HTTP URL of the release.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ReleaseSort",
- "description": "Values for sorting releases",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RELEASED_AT_DESC",
- "description": "Released at by descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RELEASED_AT_ASC",
- "description": "Released at by ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseSource",
- "description": "Represents the source code attached to a release in a particular format",
- "fields": [
- {
- "name": "format",
- "description": "Format of the source.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "Download URL of the source.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseSourceConnection",
- "description": "The connection type for ReleaseSource.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseSourceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ReleaseSource",
- "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": "ReleaseSourceEdge",
- "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": "ReleaseSource",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ReleaseUpdateInput",
- "description": "Autogenerated input type of ReleaseUpdate",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "Full path of the project the release is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "tagName",
- "description": "Name of the tag associated with the release.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "Name of the release.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description (release notes) of the release.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "releasedAt",
- "description": "The release date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestones",
- "description": "The title of each milestone the release is associated with. GitLab Premium customers can specify group milestones.",
- "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": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ReleaseUpdatePayload",
- "description": "Autogenerated return type of ReleaseUpdate",
- "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": "release",
- "description": "The release after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Release",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "RemoveAwardEmojiInput",
- "description": "Autogenerated input type of RemoveAwardEmoji",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "RemoveAwardEmojiPayload",
- "description": "Autogenerated return type of RemoveAwardEmoji",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "RemoveProjectFromSecurityDashboardInput",
- "description": "Autogenerated input type of RemoveProjectFromSecurityDashboard",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the project to remove from the Instance Security Dashboard.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "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": "RemoveProjectFromSecurityDashboardPayload",
- "description": "Autogenerated return type of RemoveProjectFromSecurityDashboard",
- "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": "INPUT_OBJECT",
- "name": "RepositionImageDiffNoteInput",
- "description": "Autogenerated input type of RepositionImageDiffNote",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the DiffNote to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "DiffNoteID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "position",
- "description": "The position of this note on a diff.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateDiffImagePositionInput",
- "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": "RepositionImageDiffNotePayload",
- "description": "Autogenerated return type of RepositionImageDiffNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Repository",
- "description": null,
- "fields": [
- {
- "name": "empty",
- "description": "Indicates repository has no visible content.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "exists",
- "description": "Indicates a corresponding Git repository exists on disk.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rootRef",
- "description": "Default branch of the repository.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tree",
- "description": "Tree of the repository.",
- "args": [
- {
- "name": "path",
- "description": "The path to get the tree for. Default value is the root of the repository.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "\"\""
- },
- {
- "name": "ref",
- "description": "The commit ref to get the tree for. Default value is HEAD.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "\"head\""
- },
- {
- "name": "recursive",
- "description": "Used to get a recursive tree. Default is false.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Tree",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Requirement",
- "description": "Represents a requirement",
- "fields": [
- {
- "name": "author",
- "description": "Author of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the requirement was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "iid",
- "description": "Internal ID of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastTestReportManuallyCreated",
- "description": "Indicates if latest test report was created by user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastTestReportState",
- "description": "Latest requirement test report state.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "TestReportState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "Project to which the requirement belongs.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "RequirementState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "testReports",
- "description": "Test reports of the requirement.",
- "args": [
- {
- "name": "sort",
- "description": "List test reports by sort order.",
- "type": {
- "kind": "ENUM",
- "name": "Sort",
- "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": "TestReportConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the requirement.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "titleHtml",
- "description": "The GitLab Flavored Markdown rendering of `title`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp of when the requirement was last updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RequirementPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RequirementConnection",
- "description": "The connection type for Requirement.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RequirementEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Requirement",
- "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": "RequirementEdge",
- "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": "Requirement",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RequirementPermissions",
- "description": "Check permissions for the current user on a requirement",
- "fields": [
- {
- "name": "adminRequirement",
- "description": "Indicates the user can perform `admin_requirement` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createRequirement",
- "description": "Indicates the user can perform `create_requirement` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyRequirement",
- "description": "Indicates the user can perform `destroy_requirement` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readRequirement",
- "description": "Indicates the user can perform `read_requirement` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateRequirement",
- "description": "Indicates the user can perform `update_requirement` on this resource",
- "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": "ENUM",
- "name": "RequirementState",
- "description": "State of a requirement",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "OPENED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ARCHIVED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RequirementStatesCount",
- "description": "Counts of requirements by their state",
- "fields": [
- {
- "name": "archived",
- "description": "Number of archived requirements.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "opened",
- "description": "Number of opened requirements.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "ResolvableInterface",
- "description": null,
- "fields": [
- {
- "name": "resolvable",
- "description": "Indicates if the object can be resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolved",
- "description": "Indicates if the object is resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedAt",
- "description": "Timestamp of when the object was resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedBy",
- "description": "User who resolved the object.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "Discussion",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- }
- ]
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "RevertVulnerabilityToDetectedInput",
- "description": "Autogenerated input type of RevertVulnerabilityToDetected",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be reverted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "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": "RevertVulnerabilityToDetectedPayload",
- "description": "Autogenerated return type of RevertVulnerabilityToDetected",
- "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": "vulnerability",
- "description": "The vulnerability after revert.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RootStorageStatistics",
- "description": null,
- "fields": [
- {
- "name": "buildArtifactsSize",
- "description": "The CI artifacts size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lfsObjectsSize",
- "description": "The LFS objects size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "packagesSize",
- "description": "The packages size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineArtifactsSize",
- "description": "The CI pipeline artifacts size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "repositorySize",
- "description": "The Git repository size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippetsSize",
- "description": "The snippets size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "storageSize",
- "description": "The total storage in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "uploadsSize",
- "description": "The uploads size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "wikiSize",
- "description": "The wiki size in bytes.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Float",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "RunDASTScanInput",
- "description": "Autogenerated input type of RunDASTScan",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the DAST scan belongs to.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetUrl",
- "description": "The URL of the target to be scanned.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "branch",
- "description": "The branch to be associated with the scan.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "scanType",
- "description": "The type of scan to be run.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "DastScanTypeEnum",
- "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": "RunDASTScanPayload",
- "description": "Autogenerated return type of RunDASTScan",
- "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": "pipelineUrl",
- "description": "URL of the pipeline that was created.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RunnerArchitecture",
- "description": null,
- "fields": [
- {
- "name": "downloadLocation",
- "description": "Download location for the runner for the platform architecture.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the runner platform architecture.",
- "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": "RunnerArchitectureConnection",
- "description": "The connection type for RunnerArchitecture.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RunnerArchitectureEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RunnerArchitecture",
- "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": "RunnerArchitectureEdge",
- "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": "RunnerArchitecture",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RunnerPlatform",
- "description": null,
- "fields": [
- {
- "name": "architectures",
- "description": "Runner architectures supported for the platform.",
- "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": "RunnerArchitectureConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "humanReadableName",
- "description": "Human readable name of the runner platform.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name slug of the runner platform.",
- "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": "RunnerPlatformConnection",
- "description": "The connection type for RunnerPlatform.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RunnerPlatformEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "RunnerPlatform",
- "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": "RunnerPlatformEdge",
- "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": "RunnerPlatform",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "RunnerSetup",
- "description": null,
- "fields": [
- {
- "name": "installInstructions",
- "description": "Instructions for installing the runner on the specified architecture.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "registerInstructions",
- "description": "Instructions for registering the runner.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfiguration",
- "description": "Represents a CI configuration of SAST",
- "fields": [
- {
- "name": "analyzers",
- "description": "List of analyzers entities attached to SAST configuration.",
- "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": "SastCiConfigurationAnalyzersEntityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "global",
- "description": "List of global entities related to SAST configuration.",
- "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": "SastCiConfigurationEntityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipeline",
- "description": "List of pipeline entities related to SAST configuration.",
- "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": "SastCiConfigurationEntityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationAnalyzersEntity",
- "description": "Represents an analyzer entity in SAST CI configuration",
- "fields": [
- {
- "name": "description",
- "description": "Analyzer description that is displayed on the form.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enabled",
- "description": "Indicates whether an analyzer is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "Analyzer label used in the config UI.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the analyzer.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "variables",
- "description": "List of supported variables.",
- "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": "SastCiConfigurationEntityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationAnalyzersEntityConnection",
- "description": "The connection type for SastCiConfigurationAnalyzersEntity.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationAnalyzersEntityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationAnalyzersEntity",
- "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": "SastCiConfigurationAnalyzersEntityEdge",
- "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": "SastCiConfigurationAnalyzersEntity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationAnalyzersEntityInput",
- "description": "Represents the analyzers entity in SAST CI configuration",
- "fields": null,
- "inputFields": [
- {
- "name": "name",
- "description": "Name of analyzer.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "enabled",
- "description": "State of the analyzer.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "variables",
- "description": "List of variables for the analyzer.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationEntityInput",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationEntity",
- "description": "Represents an entity in SAST CI configuration",
- "fields": [
- {
- "name": "defaultValue",
- "description": "Default value that is used if value is empty.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Entity description that is displayed on the form.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "field",
- "description": "CI keyword of entity.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "label",
- "description": "Label for entity used in the form.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "options",
- "description": "Different possible values of the field.",
- "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": "SastCiConfigurationOptionsEntityConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "size",
- "description": "Size of the UI component.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "SastUiComponentSize",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of the field value.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "value",
- "description": "Current value of the entity.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationEntityConnection",
- "description": "The connection type for SastCiConfigurationEntity.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationEntityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationEntity",
- "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": "SastCiConfigurationEntityEdge",
- "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": "SastCiConfigurationEntity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationEntityInput",
- "description": "Represents an entity in SAST CI configuration",
- "fields": null,
- "inputFields": [
- {
- "name": "field",
- "description": "CI keyword of entity.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "defaultValue",
- "description": "Default value that is used if value is empty.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "value",
- "description": "Current value of the entity.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationInput",
- "description": "Represents a CI configuration of SAST",
- "fields": null,
- "inputFields": [
- {
- "name": "global",
- "description": "List of global entities related to SAST configuration.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationEntityInput",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "pipeline",
- "description": "List of pipeline entities related to SAST configuration.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationEntityInput",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "analyzers",
- "description": "List of analyzers and related variables for the SAST configuration.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SastCiConfigurationAnalyzersEntityInput",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationOptionsEntity",
- "description": "Represents an entity for options in SAST CI configuration",
- "fields": [
- {
- "name": "label",
- "description": "Label of option entity.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "value",
- "description": "Value of option entity.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SastCiConfigurationOptionsEntityConnection",
- "description": "The connection type for SastCiConfigurationOptionsEntity.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationOptionsEntityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SastCiConfigurationOptionsEntity",
- "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": "SastCiConfigurationOptionsEntityEdge",
- "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": "SastCiConfigurationOptionsEntity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "SastUiComponentSize",
- "description": "Size of UI component in SAST configuration page",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SMALL",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MEDIUM",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LARGE",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ScannedResource",
- "description": "Represents a resource scanned by a security scan",
- "fields": [
- {
- "name": "requestMethod",
- "description": "The HTTP request method used to access the URL.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "The URL scanned by the scanner.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "ScannedResourceConnection",
- "description": "The connection type for ScannedResource.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ScannedResourceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ScannedResource",
- "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": "ScannedResourceEdge",
- "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": "ScannedResource",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SecurityReportSummary",
- "description": "Represents summary of a security report",
- "fields": [
- {
- "name": "apiFuzzing",
- "description": "Aggregated counts for the `api_fuzzing` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "containerScanning",
- "description": "Aggregated counts for the `container_scanning` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "coverageFuzzing",
- "description": "Aggregated counts for the `coverage_fuzzing` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dast",
- "description": "Aggregated counts for the `dast` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dependencyScanning",
- "description": "Aggregated counts for the `dependency_scanning` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sast",
- "description": "Aggregated counts for the `sast` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "secretDetection",
- "description": "Aggregated counts for the `secret_detection` scan",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SecurityReportSummarySection",
- "description": "Represents a section of a summary of a security report",
- "fields": [
- {
- "name": "scannedResources",
- "description": "A list of the first 20 scanned resources.",
- "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": "ScannedResourceConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scannedResourcesCount",
- "description": "Total number of scanned resources.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scannedResourcesCsvPath",
- "description": "Path to download all the scanned resources in CSV format.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilitiesCount",
- "description": "Total number of vulnerabilities.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "SecurityReportTypeEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SAST",
- "description": "SAST scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DAST",
- "description": "DAST scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEPENDENCY_SCANNING",
- "description": "DEPENDENCY SCANNING scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONTAINER_SCANNING",
- "description": "CONTAINER SCANNING scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SECRET_DETECTION",
- "description": "SECRET DETECTION scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COVERAGE_FUZZING",
- "description": "COVERAGE FUZZING scan report",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "API_FUZZING",
- "description": "API FUZZING scan report",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "SecurityScannerType",
- "description": "The type of the security scanner",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEPENDENCY_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONTAINER_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SECRET_DETECTION",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COVERAGE_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "API_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SecurityScanners",
- "description": "Represents a list of security scanners",
- "fields": [
- {
- "name": "available",
- "description": "List of analyzers which are available for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SecurityScannerType",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enabled",
- "description": "List of analyzers which are enabled for the project.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SecurityScannerType",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "pipelineRun",
- "description": "List of analyzers which ran successfully in the latest pipeline.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SecurityScannerType",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryDetailedError",
- "description": "A Sentry error",
- "fields": [
- {
- "name": "count",
- "description": "Count of occurrences.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "culprit",
- "description": "Culprit of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalBaseUrl",
- "description": "External Base URL of the Sentry Instance.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalUrl",
- "description": "External URL of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "firstReleaseLastCommit",
- "description": "Commit the error was first seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "firstReleaseShortVersion",
- "description": "Release short version the error was first seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "firstReleaseVersion",
- "description": "Release version the error was first seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "firstSeen",
- "description": "Timestamp when the error was first seen.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "frequency",
- "description": "Last 24hr stats of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorFrequency",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "gitlabCommit",
- "description": "GitLab commit SHA attributed to the Error based on the release version.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "gitlabCommitPath",
- "description": "Path to the GitLab page for the GitLab commit attributed to the error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "gitlabIssuePath",
- "description": "URL of GitLab Issue.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID (global ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastReleaseLastCommit",
- "description": "Commit the error was last seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastReleaseShortVersion",
- "description": "Release short version the error was last seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastReleaseVersion",
- "description": "Release version the error was last seen.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSeen",
- "description": "Timestamp when the error was last seen.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "message",
- "description": "Sentry metadata message of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryId",
- "description": "ID (Sentry ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectId",
- "description": "ID of the project (Sentry project).",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectName",
- "description": "Name of the project affected by the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectSlug",
- "description": "Slug of the project affected by the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shortId",
- "description": "Short ID (Sentry ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SentryErrorStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tags",
- "description": "Tags associated with the Sentry Error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorTags",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userCount",
- "description": "Count of users affected by the error.",
- "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": "SentryError",
- "description": "A Sentry error. A simplified version of SentryDetailedError",
- "fields": [
- {
- "name": "count",
- "description": "Count of occurrences.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "culprit",
- "description": "Culprit of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalUrl",
- "description": "External URL of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "firstSeen",
- "description": "Timestamp when the error was first seen.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "frequency",
- "description": "Last 24hr stats of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorFrequency",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID (global ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSeen",
- "description": "Timestamp when the error was last seen.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "message",
- "description": "Sentry metadata message of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryId",
- "description": "ID (Sentry ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectId",
- "description": "ID of the project (Sentry project).",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectName",
- "description": "Name of the project affected by the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sentryProjectSlug",
- "description": "Slug of the project affected by the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "shortId",
- "description": "Short ID (Sentry ID) of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "Status of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SentryErrorStatus",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of the error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userCount",
- "description": "Count of users affected by the error.",
- "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": "SentryErrorCollection",
- "description": "An object containing a collection of Sentry errors, and a detailed error",
- "fields": [
- {
- "name": "detailedError",
- "description": "Detailed version of a Sentry error on the project.",
- "args": [
- {
- "name": "id",
- "description": "ID of the Sentry issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "GitlabErrorTrackingDetailedErrorID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SentryDetailedError",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "errorStackTrace",
- "description": "Stack Trace of Sentry Error.",
- "args": [
- {
- "name": "id",
- "description": "ID of the Sentry issue.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "GitlabErrorTrackingDetailedErrorID",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SentryErrorStackTrace",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "errors",
- "description": "Collection of Sentry Errors.",
- "args": [
- {
- "name": "searchTerm",
- "description": "Search query for the Sentry error details.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Attribute to sort on. Options are frequency, first_seen, last_seen. last_seen is default.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "SentryErrorConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalUrl",
- "description": "External URL for Sentry.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryErrorConnection",
- "description": "The connection type for SentryError.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryError",
- "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": "SentryErrorEdge",
- "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": "SentryError",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryErrorFrequency",
- "description": null,
- "fields": [
- {
- "name": "count",
- "description": "Count of errors received since the previously recorded time.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "time",
- "description": "Time the error frequency stats were recorded.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryErrorStackTrace",
- "description": "An object containing a stack trace entry for a Sentry error",
- "fields": [
- {
- "name": "dateReceived",
- "description": "Time the stack trace was received by Sentry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueId",
- "description": "ID of the Sentry error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stackTraceEntries",
- "description": "Stack trace entries for the Sentry error.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorStackTraceEntry",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryErrorStackTraceContext",
- "description": "An object context for a Sentry error stack trace",
- "fields": [
- {
- "name": "code",
- "description": "Code number of the context.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "line",
- "description": "Line number of the context.",
- "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": "SentryErrorStackTraceEntry",
- "description": "An object containing a stack trace entry for a Sentry error",
- "fields": [
- {
- "name": "col",
- "description": "Function in which the Sentry error occurred.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fileName",
- "description": "File in which the Sentry error occurred.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "function",
- "description": "Function in which the Sentry error occurred.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "line",
- "description": "Function in which the Sentry error occurred.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "traceContext",
- "description": "Context of the Sentry error.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SentryErrorStackTraceContext",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "SentryErrorStatus",
- "description": "State of a Sentry error",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "RESOLVED",
- "description": "Error has been resolved",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RESOLVED_IN_NEXT_RELEASE",
- "description": "Error has been ignored until next release",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNRESOLVED",
- "description": "Error is unresolved",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "IGNORED",
- "description": "Error has been ignored",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SentryErrorTags",
- "description": "State of a Sentry error",
- "fields": [
- {
- "name": "level",
- "description": "Severity level of the Sentry Error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "logger",
- "description": "Logger of the Sentry Error.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "Service",
- "description": null,
- "fields": [
- {
- "name": "active",
- "description": "Indicates if the service is active.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Class name of the service.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "BaseService",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "JiraService",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "ServiceConnection",
- "description": "The connection type for Service.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ServiceEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "INTERFACE",
- "name": "Service",
- "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": "ServiceEdge",
- "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": "INTERFACE",
- "name": "Service",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "ServiceType",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ASANA_SERVICE",
- "description": "AsanaService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ASSEMBLA_SERVICE",
- "description": "AssemblaService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BAMBOO_SERVICE",
- "description": "BambooService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BUGZILLA_SERVICE",
- "description": "BugzillaService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "BUILDKITE_SERVICE",
- "description": "BuildkiteService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CAMPFIRE_SERVICE",
- "description": "CampfireService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONFLUENCE_SERVICE",
- "description": "ConfluenceService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CUSTOM_ISSUE_TRACKER_SERVICE",
- "description": "CustomIssueTrackerService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DATADOG_SERVICE",
- "description": "DatadogService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DISCORD_SERVICE",
- "description": "DiscordService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DRONE_CI_SERVICE",
- "description": "DroneCiService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EMAILS_ON_PUSH_SERVICE",
- "description": "EmailsOnPushService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EWM_SERVICE",
- "description": "EwmService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EXTERNAL_WIKI_SERVICE",
- "description": "ExternalWikiService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FLOWDOCK_SERVICE",
- "description": "FlowdockService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "GITHUB_SERVICE",
- "description": "GithubService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HANGOUTS_CHAT_SERVICE",
- "description": "HangoutsChatService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HIPCHAT_SERVICE",
- "description": "HipchatService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "IRKER_SERVICE",
- "description": "IrkerService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "JENKINS_SERVICE",
- "description": "JenkinsService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "JIRA_SERVICE",
- "description": "JiraService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MATTERMOST_SERVICE",
- "description": "MattermostService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MATTERMOST_SLASH_COMMANDS_SERVICE",
- "description": "MattermostSlashCommandsService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MICROSOFT_TEAMS_SERVICE",
- "description": "MicrosoftTeamsService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PACKAGIST_SERVICE",
- "description": "PackagistService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIPELINES_EMAIL_SERVICE",
- "description": "PipelinesEmailService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PIVOTALTRACKER_SERVICE",
- "description": "PivotaltrackerService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PROMETHEUS_SERVICE",
- "description": "PrometheusService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "PUSHOVER_SERVICE",
- "description": "PushoverService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "REDMINE_SERVICE",
- "description": "RedmineService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SLACK_SERVICE",
- "description": "SlackService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SLACK_SLASH_COMMANDS_SERVICE",
- "description": "SlackSlashCommandsService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "TEAMCITY_SERVICE",
- "description": "TeamcityService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNIFY_CIRCUIT_SERVICE",
- "description": "UnifyCircuitService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "WEBEX_TEAMS_SERVICE",
- "description": "WebexTeamsService type",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "YOUTRACK_SERVICE",
- "description": "YoutrackService type",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Snippet",
- "description": "Represents a snippet entry",
- "fields": [
- {
- "name": "author",
- "description": "The owner of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blob",
- "description": "Snippet blob. Deprecated in 13.3: Use `blobs`.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetBlob",
- "ofType": null
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use `blobs`. Deprecated in 13.3."
- },
- {
- "name": "blobs",
- "description": "Snippet blobs.",
- "args": [
- {
- "name": "paths",
- "description": "Paths of the blobs.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "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": "SnippetBlobConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp this snippet was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "descriptionHtml",
- "description": "The GitLab Flavored Markdown rendering of `description`",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fileName",
- "description": "File Name of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "httpUrlToRepo",
- "description": "HTTP URL to the snippet repository.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project the snippet is associated with.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rawUrl",
- "description": "Raw URL of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sshUrlToRepo",
- "description": "SSH URL to the snippet repository.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp this snippet was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "visibilityLevel",
- "description": "Visibility Level of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VisibilityLevelsEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the snippet.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetBlob",
- "description": "Represents the snippet blob",
- "fields": [
- {
- "name": "binary",
- "description": "Shows whether the blob is binary.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalStorage",
- "description": "Blob external storage.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mode",
- "description": "Blob mode.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Blob name.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Blob path.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "plainData",
- "description": "Blob plain highlighted data.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "rawPath",
- "description": "Blob raw content endpoint path.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "renderedAsText",
- "description": "Shows whether the blob is rendered as text.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "richData",
- "description": "Blob highlighted data.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "richViewer",
- "description": "Blob content rich viewer.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "SnippetBlobViewer",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "simpleViewer",
- "description": "Blob content simple viewer.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetBlobViewer",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "size",
- "description": "Blob size.",
- "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": "ENUM",
- "name": "SnippetBlobActionEnum",
- "description": "Type of a snippet blob input action",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "create",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "update",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "delete",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "move",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "SnippetBlobActionInputType",
- "description": "Represents an action to perform over a snippet file",
- "fields": null,
- "inputFields": [
- {
- "name": "action",
- "description": "Type of input action.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "SnippetBlobActionEnum",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "previousPath",
- "description": "Previous path of the snippet file.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "filePath",
- "description": "Path of the snippet file.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "content",
- "description": "Snippet file content.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetBlobConnection",
- "description": "The connection type for SnippetBlob.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetBlobEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetBlob",
- "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": "SnippetBlobEdge",
- "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": "SnippetBlob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetBlobViewer",
- "description": "Represents how the blob content should be displayed",
- "fields": [
- {
- "name": "collapsed",
- "description": "Shows whether the blob should be displayed collapsed.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fileType",
- "description": "Content file type.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "loadAsync",
- "description": "Shows whether the blob content is loaded asynchronously.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "loadingPartialName",
- "description": "Loading partial name.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "renderError",
- "description": "Error rendering the blob content.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "tooLarge",
- "description": "Shows whether the blob too large to be displayed.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of blob viewer.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "BlobViewersType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetConnection",
- "description": "The connection type for Snippet.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Snippet",
- "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": "SnippetEdge",
- "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": "Snippet",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "SnippetID",
- "description": "Identifier of Snippet.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetPermissions",
- "description": null,
- "fields": [
- {
- "name": "adminSnippet",
- "description": "Indicates the user can perform `admin_snippet` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "awardEmoji",
- "description": "Indicates the user can perform `award_emoji` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createNote",
- "description": "Indicates the user can perform `create_note` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readSnippet",
- "description": "Indicates the user can perform `read_snippet` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reportSnippet",
- "description": "Indicates the user can perform `report_snippet` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateSnippet",
- "description": "Indicates the user can perform `update_snippet` on this resource",
- "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": "SnippetRepositoryRegistry",
- "description": "Represents the Geo sync and verification state of a snippet repository",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp when the SnippetRepositoryRegistry was created",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the SnippetRepositoryRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncFailure",
- "description": "Error message during sync of the SnippetRepositoryRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncedAt",
- "description": "Timestamp of the most recent successful sync of the SnippetRepositoryRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryAt",
- "description": "Timestamp after which the SnippetRepositoryRegistry should be resynced",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryCount",
- "description": "Number of consecutive failed sync attempts of the SnippetRepositoryRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippetRepositoryId",
- "description": "ID of the Snippet Repository.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "Sync state of the SnippetRepositoryRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "RegistryState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SnippetRepositoryRegistryConnection",
- "description": "The connection type for SnippetRepositoryRegistry.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetRepositoryRegistryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SnippetRepositoryRegistry",
- "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": "SnippetRepositoryRegistryEdge",
- "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": "SnippetRepositoryRegistry",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "Sort",
- "description": "Common sort values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "updated_desc",
- "description": "Updated at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "updated_asc",
- "description": "Updated at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use UPDATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "created_desc",
- "description": "Created at descending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_DESC. Deprecated in 13.5."
- },
- {
- "name": "created_asc",
- "description": "Created at ascending order",
- "isDeprecated": true,
- "deprecationReason": "Use CREATED_ASC. Deprecated in 13.5."
- },
- {
- "name": "UPDATED_DESC",
- "description": "Updated at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UPDATED_ASC",
- "description": "Updated at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_DESC",
- "description": "Created at descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED_ASC",
- "description": "Created at ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "StatusAction",
- "description": null,
- "fields": [
- {
- "name": "buttonTitle",
- "description": "Title for the button, for example: Retry this job.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "icon",
- "description": "Icon used in the action button.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "method",
- "description": "Method for the action, for example: :post.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path for the action.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title for the action, for example: Retry.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "String",
- "description": "Represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Submodule",
- "description": null,
- "fields": [
- {
- "name": "flatPath",
- "description": "Flat path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "Last commit SHA for the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "treeUrl",
- "description": "Tree URL for the sub-module.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of tree entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EntryType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL for the sub-module.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Entry",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "SubmoduleConnection",
- "description": "The connection type for Submodule.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SubmoduleEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Submodule",
- "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": "SubmoduleEdge",
- "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": "Submodule",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TaskCompletionStatus",
- "description": "Completion status of tasks",
- "fields": [
- {
- "name": "completedCount",
- "description": "Number of completed tasks.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "count",
- "description": "Number of total tasks.",
- "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": "TerraformState",
- "description": null,
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp the Terraform state was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the Terraform state.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "latestVersion",
- "description": "The latest version of the Terraform state.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TerraformStateVersion",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lockedAt",
- "description": "Timestamp the Terraform state was locked.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lockedByUser",
- "description": "The user currently holding a lock on the Terraform state.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the Terraform state.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp the Terraform state was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TerraformStateConnection",
- "description": "The connection type for TerraformState.",
- "fields": [
- {
- "name": "count",
- "description": "Total count of collection.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TerraformStateEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TerraformState",
- "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": "TerraformStateDeleteInput",
- "description": "Autogenerated input type of TerraformStateDelete",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the Terraform state.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TerraformStateID",
- "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": "TerraformStateDeletePayload",
- "description": "Autogenerated return type of TerraformStateDelete",
- "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": "TerraformStateEdge",
- "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": "TerraformState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "TerraformStateID",
- "description": "Identifier of Terraform::State.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "TerraformStateLockInput",
- "description": "Autogenerated input type of TerraformStateLock",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the Terraform state.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TerraformStateID",
- "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": "TerraformStateLockPayload",
- "description": "Autogenerated return type of TerraformStateLock",
- "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": "INPUT_OBJECT",
- "name": "TerraformStateUnlockInput",
- "description": "Autogenerated input type of TerraformStateUnlock",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "Global ID of the Terraform state.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TerraformStateID",
- "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": "TerraformStateUnlockPayload",
- "description": "Autogenerated return type of TerraformStateUnlock",
- "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": "TerraformStateVersion",
- "description": null,
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp the version was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdByUser",
- "description": "The user that created this version.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "downloadPath",
- "description": "URL for downloading the version's JSON file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the Terraform state version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "job",
- "description": "The job that created this version.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "CiJob",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "serial",
- "description": "Serial number of the version.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedAt",
- "description": "Timestamp the version was updated.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TerraformStateVersionRegistry",
- "description": "Represents the Geo sync and verification state of a terraform state version",
- "fields": [
- {
- "name": "createdAt",
- "description": "Timestamp when the TerraformStateVersionRegistry was created",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the TerraformStateVersionRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncFailure",
- "description": "Error message during sync of the TerraformStateVersionRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastSyncedAt",
- "description": "Timestamp of the most recent successful sync of the TerraformStateVersionRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryAt",
- "description": "Timestamp after which the TerraformStateVersionRegistry should be resynced",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "retryCount",
- "description": "Number of consecutive failed sync attempts of the TerraformStateVersionRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "Sync state of the TerraformStateVersionRegistry",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "RegistryState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "terraformStateVersionId",
- "description": "ID of the terraform state version.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TerraformStateVersionRegistryConnection",
- "description": "The connection type for TerraformStateVersionRegistry.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TerraformStateVersionRegistryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TerraformStateVersionRegistry",
- "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": "TerraformStateVersionRegistryEdge",
- "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": "TerraformStateVersionRegistry",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TestReport",
- "description": "Represents a requirement test report",
- "fields": [
- {
- "name": "author",
- "description": "Author of the test report.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp of when the test report was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the test report.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the test report.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TestReportState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TestReportConnection",
- "description": "The connection type for TestReport.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TestReportEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TestReport",
- "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": "TestReportEdge",
- "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": "TestReport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "TestReportState",
- "description": "State of a test report",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "PASSED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FAILED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Time",
- "description": "Time represented in ISO 8601",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TimeReportStats",
- "description": "Represents the time report stats for timeboxes",
- "fields": [
- {
- "name": "complete",
- "description": "Completed issues metrics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxMetrics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "incomplete",
- "description": "Incomplete issues metrics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxMetrics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "total",
- "description": "Total issues metrics.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxMetrics",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TimeboxMetrics",
- "description": "Represents measured stats metrics for timeboxes",
- "fields": [
- {
- "name": "count",
- "description": "The count metric.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "weight",
- "description": "The weight metric.",
- "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": "TimeboxReport",
- "description": "Represents a historically accurate report about the timebox",
- "fields": [
- {
- "name": "burnupTimeSeries",
- "description": "Daily scope and completed totals for burnup charts.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BurnupChartDailyTotals",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "stats",
- "description": "Represents the time report stats for the timebox.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeReportStats",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INTERFACE",
- "name": "TimeboxReportInterface",
- "description": null,
- "fields": [
- {
- "name": "report",
- "description": "Historically accurate report about the timebox.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "TimeboxReport",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "Milestone",
- "ofType": null
- }
- ]
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "Timeframe",
- "description": "A time-frame defined as a closed inclusive range of two dates",
- "fields": null,
- "inputFields": [
- {
- "name": "start",
- "description": "The start of the range.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Date",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "end",
- "description": "The end of the range.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Date",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Timelog",
- "description": null,
- "fields": [
- {
- "name": "issue",
- "description": "The issue that logged time was added to.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "note",
- "description": "The note where the quick action to add the logged time was executed.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "spentAt",
- "description": "Timestamp of when the time tracked was spent at.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "timeSpent",
- "description": "The time spent displayed in seconds.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "user",
- "description": "The user that logged the time.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TimelogConnection",
- "description": "The connection type for Timelog.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TimelogEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Timelog",
- "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": "TimelogEdge",
- "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": "Timelog",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Todo",
- "description": "Representing a to-do entry",
- "fields": [
- {
- "name": "action",
- "description": "Action of the to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoActionEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "author",
- "description": "The author of this to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "body",
- "description": "Body of the to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createdAt",
- "description": "Timestamp this to-do item was created.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "group",
- "description": "Group this to-do item is associated with.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Group",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project this to-do item is associated with.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "targetType",
- "description": "Target type of the to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoTargetEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "TodoActionEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "assigned",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mentioned",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "build_failed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "marked",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "approval_required",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "unmergeable",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "directly_addressed",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "description": "The connection type for Todo.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Todo",
- "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": "TodoCreateInput",
- "description": "Autogenerated input type of TodoCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "targetId",
- "description": "The global ID of the to-do item's parent. Issues, merge requests, designs and epics are supported.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoableID",
- "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": "TodoCreatePayload",
- "description": "Autogenerated return type of TodoCreate",
- "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": "todo",
- "description": "The to-do item created.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TodoEdge",
- "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": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "TodoID",
- "description": "Identifier of Todo.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "TodoMarkDoneInput",
- "description": "Autogenerated input type of TodoMarkDone",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the to-do item to mark as done.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoID",
- "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": "TodoMarkDonePayload",
- "description": "Autogenerated return type of TodoMarkDone",
- "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": "todo",
- "description": "The requested to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "TodoRestoreInput",
- "description": "Autogenerated input type of TodoRestore",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the to-do item to restore.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoID",
- "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": "INPUT_OBJECT",
- "name": "TodoRestoreManyInput",
- "description": "Autogenerated input type of TodoRestoreMany",
- "fields": null,
- "inputFields": [
- {
- "name": "ids",
- "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,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoID",
- "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": "TodoRestoreManyPayload",
- "description": "Autogenerated return type of TodoRestoreMany",
- "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": "todos",
- "description": "Updated to-do items.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedIds",
- "description": "The IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoID",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use to-do items. Deprecated in 13.2."
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TodoRestorePayload",
- "description": "Autogenerated return type of TodoRestore",
- "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": "todo",
- "description": "The requested to-do item.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "pending",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "done",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "TodoTargetEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "COMMIT",
- "description": "A Commit",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ISSUE",
- "description": "An Issue",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MERGEREQUEST",
- "description": "A MergeRequest",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DESIGN",
- "description": "A Design",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ALERT",
- "description": "An Alert",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "EPIC",
- "description": "An Epic",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "TodoableID",
- "description": "Identifier of Todoable.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "TodosMarkAllDoneInput",
- "description": "Autogenerated input type of TodosMarkAllDone",
- "fields": null,
- "inputFields": [
- {
- "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": "TodosMarkAllDonePayload",
- "description": "Autogenerated return type of TodosMarkAllDone",
- "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": "todos",
- "description": "Updated to-do items.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updatedIds",
- "description": "IDs of the updated to-do items. Deprecated in 13.2: Use to-do items.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "TodoID",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use to-do items. Deprecated in 13.2."
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "ToggleAwardEmojiInput",
- "description": "Autogenerated input type of ToggleAwardEmoji",
- "fields": null,
- "inputFields": [
- {
- "name": "awardableId",
- "description": "The global ID of the awardable resource.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "AwardableID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "name",
- "description": "The emoji name.",
- "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": "ToggleAwardEmojiPayload",
- "description": "Autogenerated return type of ToggleAwardEmoji",
- "fields": [
- {
- "name": "awardEmoji",
- "description": "The award emoji after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AwardEmoji",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "toggledOn",
- "description": "Indicates the status of the emoji. True if the toggle awarded the emoji, and false if the toggle removed the emoji.",
- "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": "Tree",
- "description": null,
- "fields": [
- {
- "name": "blobs",
- "description": "Blobs of the tree.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "BlobConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "lastCommit",
- "description": "Last commit for the tree.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Commit",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "submodules",
- "description": "Sub-modules of the tree.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "SubmoduleConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "trees",
- "description": "Trees of the tree.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TreeEntryConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TreeEntry",
- "description": "Represents a directory",
- "fields": [
- {
- "name": "flatPath",
- "description": "Flat path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "Path of the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "sha",
- "description": "Last commit SHA for the entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": "Type of tree entry.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "EntryType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path for the tree entry (directory).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL for the tree entry (directory).",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Entry",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "TreeEntryConnection",
- "description": "The connection type for TreeEntry.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TreeEntryEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TreeEntry",
- "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": "TreeEntryEdge",
- "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": "TreeEntry",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "TypeEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "personal",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "description": "A regexp containing patterns sourced from user input",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateAlertStatusInput",
- "description": "Autogenerated input type of UpdateAlertStatus",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the alert 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 alert to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "status",
- "description": "The status to set the alert.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AlertManagementStatus",
- "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": "UpdateAlertStatusPayload",
- "description": "Autogenerated return type of UpdateAlertStatus",
- "fields": [
- {
- "name": "alert",
- "description": "The alert after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "AlertManagementAlert",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "issue",
- "description": "The issue created after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todo",
- "description": "The to-do item after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Todo",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateBoardEpicUserPreferencesInput",
- "description": "Autogenerated input type of UpdateBoardEpicUserPreferences",
- "fields": null,
- "inputFields": [
- {
- "name": "boardId",
- "description": "The board global ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "ID of an epic to set preferences for.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "EpicID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "collapsed",
- "description": "Whether the epic should be collapsed in the board.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "UpdateBoardEpicUserPreferencesPayload",
- "description": "Autogenerated return type of UpdateBoardEpicUserPreferences",
- "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": "epicUserPreferences",
- "description": "User preferences for the epic in the board after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardEpicUserPreferences",
- "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": "INPUT_OBJECT",
- "name": "UpdateBoardInput",
- "description": "Autogenerated input type of UpdateBoard",
- "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": "id",
- "description": "The board global ID.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "BoardID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "assigneeId",
- "description": "The ID of user to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "UserID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneId",
- "description": "The ID of milestone to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "MilestoneID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iterationId",
- "description": "The ID of iteration to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "IterationID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The weight value to be assigned to the board.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Labels of the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "labelIds",
- "description": "The IDs of labels to be added to the board.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "LabelID",
- "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": "INPUT_OBJECT",
- "name": "UpdateBoardListInput",
- "description": "Autogenerated input type of UpdateBoardList",
- "fields": null,
- "inputFields": [
- {
- "name": "listId",
- "description": "Global ID of the list.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ListID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "position",
- "description": "Position of list within the board.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "collapsed",
- "description": "Indicates if list is collapsed for this user.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "UpdateBoardListPayload",
- "description": "Autogenerated return type of UpdateBoardList",
- "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": "list",
- "description": "Mutated list.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "BoardList",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "UpdateBoardPayload",
- "description": "Autogenerated return type of UpdateBoard",
- "fields": [
- {
- "name": "board",
- "description": "The board after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Board",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "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": "INPUT_OBJECT",
- "name": "UpdateComplianceFrameworkInput",
- "description": "Autogenerated input type of UpdateComplianceFramework",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the compliance framework to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ComplianceManagementFrameworkID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "params",
- "description": "Parameters to update the compliance framework with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "ComplianceFrameworkInput",
- "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": "UpdateComplianceFrameworkPayload",
- "description": "Autogenerated return type of UpdateComplianceFramework",
- "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": "complianceFramework",
- "description": "The compliance framework after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ComplianceFramework",
- "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": "INPUT_OBJECT",
- "name": "UpdateContainerExpirationPolicyInput",
- "description": "Autogenerated input type of UpdateContainerExpirationPolicy",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project path where the container expiration policy is located.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "enabled",
- "description": "Indicates whether this container expiration policy is enabled.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "cadence",
- "description": "This container expiration policy schedule.",
- "type": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyCadenceEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "olderThan",
- "description": "Tags older that this will expire.",
- "type": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyOlderThanEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "keepN",
- "description": "Number of tags to retain.",
- "type": {
- "kind": "ENUM",
- "name": "ContainerExpirationPolicyKeepEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "nameRegex",
- "description": "Tags with names matching this regex pattern will expire.",
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "nameRegexKeep",
- "description": "Tags with names matching this regex pattern will be preserved.",
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "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": "UpdateContainerExpirationPolicyPayload",
- "description": "Autogenerated return type of UpdateContainerExpirationPolicy",
- "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": "containerExpirationPolicy",
- "description": "The container expiration policy after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ContainerExpirationPolicy",
- "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": "INPUT_OBJECT",
- "name": "UpdateDiffImagePositionInput",
- "description": null,
- "fields": null,
- "inputFields": [
- {
- "name": "x",
- "description": "X position of the note.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "y",
- "description": "Y position of the note.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "width",
- "description": "Total width of the image.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "height",
- "description": "Total height of the image.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- }
- ],
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateEpicInput",
- "description": "Autogenerated input type of UpdateEpic",
- "fields": null,
- "inputFields": [
- {
- "name": "iid",
- "description": "The IID of the epic to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupPath",
- "description": "The group the epic to mutate is in.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "The title of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "The description of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "Indicates if the epic is confidential.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDateFixed",
- "description": "The start date of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDateFixed",
- "description": "The end date of the epic.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDateIsFixed",
- "description": "Indicates start date should be sourced from start_date_fixed field not the issue milestones.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDateIsFixed",
- "description": "Indicates end date should be sourced from due_date_fixed field not the issue milestones.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "addLabelIds",
- "description": "The IDs of labels to be added to the epic.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "removeLabelIds",
- "description": "The IDs of labels to be removed from the epic.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "stateEvent",
- "description": "State event for the epic.",
- "type": {
- "kind": "ENUM",
- "name": "EpicStateEvent",
- "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": "UpdateEpicPayload",
- "description": "Autogenerated return type of UpdateEpic",
- "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": "epic",
- "description": "The epic after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Epic",
- "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": "INPUT_OBJECT",
- "name": "UpdateImageDiffNoteInput",
- "description": "Autogenerated input type of UpdateImageDiffNote",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the note to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "position",
- "description": "The position of this note on a diff.",
- "type": {
- "kind": "INPUT_OBJECT",
- "name": "UpdateDiffImagePositionInput",
- "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": "UpdateImageDiffNotePayload",
- "description": "Autogenerated return type of UpdateImageDiffNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateIssueInput",
- "description": "Autogenerated input type of UpdateIssue",
- "fields": null,
- "inputFields": [
- {
- "name": "projectPath",
- "description": "The project the issue 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 issue to mutate.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDate",
- "description": "Due date of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "Indicates the issue is confidential.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "locked",
- "description": "Indicates discussion is locked on the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Title of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneId",
- "description": "The ID of the milestone to assign to the issue. On update milestone will be removed if set to null.",
- "type": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "addLabelIds",
- "description": "The IDs of labels to be added to the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "removeLabelIds",
- "description": "The IDs of labels to be removed from the issue.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "stateEvent",
- "description": "Close or reopen an issue.",
- "type": {
- "kind": "ENUM",
- "name": "IssueStateEvent",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "healthStatus",
- "description": "The desired health status.",
- "type": {
- "kind": "ENUM",
- "name": "HealthStatus",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "weight",
- "description": "The weight of the issue.",
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "epicId",
- "description": "The ID of the parent epic. NULL when removing the association.",
- "type": {
- "kind": "SCALAR",
- "name": "EpicID",
- "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": "UpdateIssuePayload",
- "description": "Autogenerated return type of UpdateIssue",
- "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": "issue",
- "description": "The issue after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateIterationInput",
- "description": "Autogenerated input type of UpdateIteration",
- "fields": null,
- "inputFields": [
- {
- "name": "groupPath",
- "description": "Group of the iteration.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "id",
- "description": "Global ID of the iteration.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Title of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "startDate",
- "description": "Start date of the iteration.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dueDate",
- "description": "End date of the iteration.",
- "type": {
- "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": "UpdateIterationPayload",
- "description": "Autogenerated return type of UpdateIteration",
- "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": "iteration",
- "description": "Updated iteration.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Iteration",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateNamespacePackageSettingsInput",
- "description": "Autogenerated input type of UpdateNamespacePackageSettings",
- "fields": null,
- "inputFields": [
- {
- "name": "namespacePath",
- "description": "The namespace path where the namespace package setting is located.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "mavenDuplicatesAllowed",
- "description": "Indicates whether duplicate Maven packages are allowed for this namespace.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mavenDuplicateExceptionRegex",
- "description": "When maven_duplicates_allowed is false, you can publish duplicate packages with names that match this regex. Otherwise, this setting has no effect.",
- "type": {
- "kind": "SCALAR",
- "name": "UntrustedRegexp",
- "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": "UpdateNamespacePackageSettingsPayload",
- "description": "Autogenerated return type of UpdateNamespacePackageSettings",
- "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": "packageSettings",
- "description": "The namespace package setting after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "PackageSettings",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateNoteInput",
- "description": "Autogenerated input type of UpdateNote",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the note to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "NoteID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "body",
- "description": "Content of the note.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "confidential",
- "description": "The confidentiality flag of a note. Default is false.",
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "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": "UpdateNotePayload",
- "description": "Autogenerated return type of UpdateNote",
- "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": "note",
- "description": "The note after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Note",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateRequirementInput",
- "description": "Autogenerated input type of UpdateRequirement",
- "fields": null,
- "inputFields": [
- {
- "name": "title",
- "description": "Title of the requirement.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the requirement.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectPath",
- "description": "Full project path the requirement is associated with.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "State of the requirement.",
- "type": {
- "kind": "ENUM",
- "name": "RequirementState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "iid",
- "description": "The IID of the requirement to update.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "lastTestReportState",
- "description": "Creates a test report for the requirement with the given state.",
- "type": {
- "kind": "ENUM",
- "name": "TestReportState",
- "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": "UpdateRequirementPayload",
- "description": "Autogenerated return type of UpdateRequirement",
- "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": "requirement",
- "description": "Requirement after mutation.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Requirement",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "UpdateSnippetInput",
- "description": "Autogenerated input type of UpdateSnippet",
- "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": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "title",
- "description": "Title of the snippet.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "description",
- "description": "Description of the snippet.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "visibilityLevel",
- "description": "The visibility level of the snippet.",
- "type": {
- "kind": "ENUM",
- "name": "VisibilityLevelsEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "blobActions",
- "description": "Actions to perform over the snippet repository and blobs.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "INPUT_OBJECT",
- "name": "SnippetBlobActionInputType",
- "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": "UpdateSnippetPayload",
- "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": [
-
- ],
- "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": "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": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Snippet",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "spam",
- "description": "Indicates whether the operation was detected as definite spam. There is no option to resubmit the request with a CAPTCHA response.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "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,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "Upload",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "User",
- "description": null,
- "fields": [
- {
- "name": "assignedMergeRequests",
- "description": "Merge Requests assigned to the user.",
- "args": [
- {
- "name": "iids",
- "description": "Array of IIDs of merge requests, for example `[1, 2]`.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranches",
- "description": "Array of source branch names. All resolved merge requests will have one of these branches as their source.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranches",
- "description": "Array of target branch names. All resolved merge requests will have one of these branches as their target.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "A merge request state. If provided, all resolved merge requests will have this state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Array of label names. All resolved merge requests will have all of these labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "mergedAfter",
- "description": "Merge requests merged after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergedBefore",
- "description": "Merge requests merged before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort merge requests by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "projectPath",
- "description": "The full-path of the project the authored merge requests should be in. Incompatible with projectId.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The global ID of the project the authored merge requests should be in. Incompatible with projectPath.",
- "type": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "reviewerUsername",
- "description": "Username of the reviewer.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "MergeRequestConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "authoredMergeRequests",
- "description": "Merge Requests authored by the user.",
- "args": [
- {
- "name": "iids",
- "description": "Array of IIDs of merge requests, for example `[1, 2]`.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranches",
- "description": "Array of source branch names. All resolved merge requests will have one of these branches as their source.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranches",
- "description": "Array of target branch names. All resolved merge requests will have one of these branches as their target.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "A merge request state. If provided, all resolved merge requests will have this state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Array of label names. All resolved merge requests will have all of these labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "mergedAfter",
- "description": "Merge requests merged after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergedBefore",
- "description": "Merge requests merged before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort merge requests by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "projectPath",
- "description": "The full-path of the project the authored merge requests should be in. Incompatible with projectId.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The global ID of the project the authored merge requests should be in. Incompatible with projectPath.",
- "type": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of the assignee.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "reviewerUsername",
- "description": "Username of the reviewer.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "MergeRequestConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "avatarUrl",
- "description": "URL of the user's avatar.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "bot",
- "description": "Indicates if the user is a bot.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "email",
- "description": "User email. Deprecated in 13.7: Use public_email.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": true,
- "deprecationReason": "Use public_email. Deprecated in 13.7."
- },
- {
- "name": "groupCount",
- "description": "Group count for the user. Available only when feature flag `user_group_counts` is enabled.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "groupMemberships",
- "description": "Group memberships of the user.",
- "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": "GroupMemberConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "ID of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "location",
- "description": "The location of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Human-readable name of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projectMemberships",
- "description": "Project memberships of the user.",
- "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": "ProjectMemberConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "publicEmail",
- "description": "User's public email.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reviewRequestedMergeRequests",
- "description": "Merge Requests assigned to the user for review.",
- "args": [
- {
- "name": "iids",
- "description": "Array of IIDs of merge requests, for example `[1, 2]`.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "sourceBranches",
- "description": "Array of source branch names. All resolved merge requests will have one of these branches as their source.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "targetBranches",
- "description": "Array of target branch names. All resolved merge requests will have one of these branches as their target.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "A merge request state. If provided, all resolved merge requests will have this state.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestState",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "labels",
- "description": "Array of label names. All resolved merge requests will have all of these labels.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "mergedAfter",
- "description": "Merge requests merged after this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "mergedBefore",
- "description": "Merge requests merged before this date.",
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "milestoneTitle",
- "description": "Title of the milestone.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "sort",
- "description": "Sort merge requests by this criteria.",
- "type": {
- "kind": "ENUM",
- "name": "MergeRequestSort",
- "ofType": null
- },
- "defaultValue": "created_desc"
- },
- {
- "name": "projectPath",
- "description": "The full-path of the project the authored merge requests should be in. Incompatible with projectId.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The global ID of the project the authored merge requests should be in. Incompatible with projectPath.",
- "type": {
- "kind": "SCALAR",
- "name": "ProjectID",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "authorUsername",
- "description": "Username of the author.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "assigneeUsername",
- "description": "Username of the assignee.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "MergeRequestConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "snippets",
- "description": "Snippets authored by the user.",
- "args": [
- {
- "name": "ids",
- "description": "Array of global snippet ids, e.g., \"gid://gitlab/ProjectSnippet/1\".",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "SnippetID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "visibility",
- "description": "The visibility of the snippet.",
- "type": {
- "kind": "ENUM",
- "name": "VisibilityScopesEnum",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "The type of snippet.",
- "type": {
- "kind": "ENUM",
- "name": "TypeEnum",
- "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": "SnippetConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "starredProjects",
- "description": "Projects starred by the user.",
- "args": [
- {
- "name": "search",
- "description": "Search query.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "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": "ProjectConnection",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "UserState",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "status",
- "description": "User status.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "UserStatus",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "todos",
- "description": "To-do items of the user.",
- "args": [
- {
- "name": "action",
- "description": "The action to be filtered.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoActionEnum",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "authorId",
- "description": "The ID of an author.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "projectId",
- "description": "The ID of a project.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "groupId",
- "description": "The ID of a group.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "state",
- "description": "The state of the todo.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoStateEnum",
- "ofType": null
- }
- }
- },
- "defaultValue": null
- },
- {
- "name": "type",
- "description": "The type of the todo.",
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "TodoTargetEnum",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "TodoConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "UserPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "username",
- "description": "Username of the user. Unique within this instance of GitLab.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webPath",
- "description": "Web path of the user.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "webUrl",
- "description": "Web URL of the user.",
- "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": "UserConnection",
- "description": "The connection type for User.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "UserEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "User",
- "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": "UserEdge",
- "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": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "UserID",
- "description": "Identifier of User.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "UserPermissions",
- "description": null,
- "fields": [
- {
- "name": "createSnippet",
- "description": "Indicates the user can perform `create_snippet` on this resource",
- "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": "ENUM",
- "name": "UserState",
- "description": "Possible states of a user",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "active",
- "description": "The user is active and is able to use the system",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "blocked",
- "description": "The user has been blocked and is prevented from using the system",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deactivated",
- "description": "The user is no longer active and is unable to use the system",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "UserStatus",
- "description": null,
- "fields": [
- {
- "name": "availability",
- "description": "User availability status.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "AvailabilityEnum",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "emoji",
- "description": "String representation of emoji.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "message",
- "description": "User status message.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "messageHtml",
- "description": "HTML of the user status message",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VisibilityLevelsEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "private",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "internal",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "public",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VisibilityScopesEnum",
- "description": null,
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "private",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "internal",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "public",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDay",
- "description": "Represents the count of vulnerabilities by severity on a particular day. This data is retained for 365 days",
- "fields": [
- {
- "name": "critical",
- "description": "Total number of vulnerabilities on a particular day with critical severity",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "date",
- "description": "Date for the count.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "high",
- "description": "Total number of vulnerabilities on a particular day with high severity",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "info",
- "description": "Total number of vulnerabilities on a particular day with info severity",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "low",
- "description": "Total number of vulnerabilities on a particular day with low severity",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "medium",
- "description": "Total number of vulnerabilities on a particular day with medium severity",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "total",
- "description": "Total number of vulnerabilities on a particular day.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "unknown",
- "description": "Total number of vulnerabilities on a particular day with unknown severity",
- "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": "VulnerabilitiesCountByDayAndSeverity",
- "description": "Represents the number of vulnerabilities for a particular severity on a particular day. This data is retained for 365 days",
- "fields": [
- {
- "name": "count",
- "description": "Number of vulnerabilities.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "day",
- "description": "Date for the count.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "ISO8601Date",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity",
- "description": "Severity of the counted vulnerabilities.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDayAndSeverityConnection",
- "description": "The connection type for VulnerabilitiesCountByDayAndSeverity.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDayAndSeverityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDayAndSeverity",
- "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": "VulnerabilitiesCountByDayAndSeverityEdge",
- "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": "VulnerabilitiesCountByDayAndSeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDayConnection",
- "description": "The connection type for VulnerabilitiesCountByDay.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDayEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilitiesCountByDay",
- "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": "VulnerabilitiesCountByDayEdge",
- "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": "VulnerabilitiesCountByDay",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "VulnerabilitiesExternalIssueLinkID",
- "description": "Identifier of Vulnerabilities::ExternalIssueLink.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "description": "Represents a vulnerability",
- "fields": [
- {
- "name": "confirmedAt",
- "description": "Timestamp of when the vulnerability state was changed to confirmed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "confirmedBy",
- "description": "The user that confirmed the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": "Description of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "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": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "discussions",
- "description": "All discussions on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "DiscussionConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dismissedAt",
- "description": "Timestamp of when the vulnerability state was changed to dismissed.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "dismissedBy",
- "description": "The user that dismissed the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalIssueLinks",
- "description": "List of external issue links related to the vulnerability.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLinkConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "hasSolutions",
- "description": "Indicates whether there is a solution available for this vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "GraphQL ID of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "identifiers",
- "description": "Identifiers of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityIdentifier",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issueLinks",
- "description": "List of issue links related to the vulnerability.",
- "args": [
- {
- "name": "linkType",
- "description": "Filter issue links by link type.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityIssueLinkType",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityIssueLinkConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "location",
- "description": "Location metadata for the vulnerability. Its fields depend on the type of security scan that found the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "UNION",
- "name": "VulnerabilityLocation",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mergeRequest",
- "description": "Merge request that fixes the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "MergeRequest",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "notes",
- "description": "All notes on this noteable.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "NoteConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "primaryIdentifier",
- "description": "Primary identifier of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityIdentifier",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "project",
- "description": "The project on which the vulnerability was found.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Project",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reportType",
- "description": "Type of the security report that found the vulnerability (SAST, DEPENDENCY_SCANNING, CONTAINER_SCANNING, DAST, SECRET_DETECTION, COVERAGE_FUZZING, API_FUZZING)",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedAt",
- "description": "Timestamp of when the vulnerability state was changed to resolved.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Time",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedBy",
- "description": "The user that resolved the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "User",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "resolvedOnDefaultBranch",
- "description": "Indicates whether the vulnerability is fixed on the default branch or not.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "scanner",
- "description": "Scanner metadata for the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityScanner",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity",
- "description": "Severity of the vulnerability (INFO, UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL)",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state",
- "description": "State of the vulnerability (DETECTED, CONFIRMED, RESOLVED, DISMISSED)",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title",
- "description": "Title of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userNotesCount",
- "description": "Number of user notes attached to the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "userPermissions",
- "description": "Permissions for the current user on the resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityPermissions",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerabilityPath",
- "description": "URL to the vulnerability's details page.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
- {
- "kind": "INTERFACE",
- "name": "Noteable",
- "ofType": null
- }
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityConfirmInput",
- "description": "Autogenerated input type of VulnerabilityConfirm",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be confirmed.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "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": "VulnerabilityConfirmPayload",
- "description": "Autogenerated return type of VulnerabilityConfirm",
- "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": "vulnerability",
- "description": "The vulnerability after state change.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityConnection",
- "description": "The connection type for Vulnerability.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "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": "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",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be dismissed.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "comment",
- "description": "Comment why vulnerability should be dismissed.",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": null
- },
- {
- "name": "dismissalReason",
- "description": "Reason why vulnerability should be dismissed.",
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityDismissalReason",
- "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": "VulnerabilityDismissPayload",
- "description": "Autogenerated return type of VulnerabilityDismiss",
- "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": "vulnerability",
- "description": "The vulnerability after dismissal.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityDismissalReason",
- "description": "The dismissal reason of the Vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "ACCEPTABLE_RISK",
- "description": "The likelihood of the Vulnerability occurring and its impact are deemed acceptable",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FALSE_POSITIVE",
- "description": "The Vulnerability was incorrectly identified as being present",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MITIGATING_CONTROL",
- "description": "There is a mitigating control that eliminates the Vulnerability or makes its risk acceptable",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "USED_IN_TESTS",
- "description": "The Vulnerability is used in tests and does not pose an actual risk",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NOT_APPLICABLE",
- "description": "Other reasons for dismissal",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityEdge",
- "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": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLink",
- "description": "Represents an external issue link of a vulnerability",
- "fields": [
- {
- "name": "externalIssue",
- "description": "The external issue attached to the issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "ExternalIssue",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "id",
- "description": "GraphQL ID of the external issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilitiesExternalIssueLinkID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "linkType",
- "description": "Type of the external issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityExternalIssueLinkType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLinkConnection",
- "description": "The connection type for VulnerabilityExternalIssueLink.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLinkEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLink",
- "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": "VulnerabilityExternalIssueLinkCreateInput",
- "description": "Autogenerated input type of VulnerabilityExternalIssueLinkCreate",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "linkType",
- "description": "Type of the external issue link.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityExternalIssueLinkType",
- "ofType": null
- }
- },
- "defaultValue": null
- },
- {
- "name": "externalTracker",
- "description": "External tracker type of the external issue link.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityExternalIssueLinkExternalTracker",
- "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": "VulnerabilityExternalIssueLinkCreatePayload",
- "description": "Autogenerated return type of VulnerabilityExternalIssueLinkCreate",
- "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": "externalIssueLink",
- "description": "The created external issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerabilityExternalIssueLink",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityExternalIssueLinkDestroyInput",
- "description": "Autogenerated input type of VulnerabilityExternalIssueLinkDestroy",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "The global ID of the vulnerability external issue link.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilitiesExternalIssueLinkID",
- "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": "VulnerabilityExternalIssueLinkDestroyPayload",
- "description": "Autogenerated return type of VulnerabilityExternalIssueLinkDestroy",
- "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": "VulnerabilityExternalIssueLinkEdge",
- "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": "VulnerabilityExternalIssueLink",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityExternalIssueLinkExternalTracker",
- "description": "The external tracker of the external issue link related to a vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "JIRA",
- "description": "Jira external tracker",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityExternalIssueLinkType",
- "description": "The type of the external issue link related to a vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "CREATED",
- "description": "Created link type",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityGrade",
- "description": "The grade of the vulnerable project",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "A",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "B",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "C",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "D",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "F",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "description": "Identifier of Vulnerability.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityIdentifier",
- "description": "Represents a vulnerability identifier",
- "fields": [
- {
- "name": "externalId",
- "description": "External ID of the vulnerability identifier.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "externalType",
- "description": "External type of the vulnerability identifier.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the vulnerability identifier.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "url",
- "description": "URL of the vulnerability identifier.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityIssueLink",
- "description": "Represents an issue link of a vulnerability",
- "fields": [
- {
- "name": "id",
- "description": "GraphQL ID of the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "ID",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "issue",
- "description": "The issue attached to issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "Issue",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "linkType",
- "description": "Type of the issue link.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityIssueLinkType",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityIssueLinkConnection",
- "description": "The connection type for VulnerabilityIssueLink.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityIssueLinkEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityIssueLink",
- "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": "VulnerabilityIssueLinkEdge",
- "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": "VulnerabilityIssueLink",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityIssueLinkType",
- "description": "The type of the issue link related to a vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "RELATED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CREATED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "UNION",
- "name": "VulnerabilityLocation",
- "description": "Represents a vulnerability location. The fields with data will depend on the vulnerability report type",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": null,
- "possibleTypes": [
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationContainerScanning",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationCoverageFuzzing",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationDast",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationDependencyScanning",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationSast",
- "ofType": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationSecretDetection",
- "ofType": null
- }
- ]
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationContainerScanning",
- "description": "Represents the location of a vulnerability found by a container security scan",
- "fields": [
- {
- "name": "dependency",
- "description": "Dependency containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerableDependency",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "image",
- "description": "Name of the vulnerable container image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "operatingSystem",
- "description": "Operating system that runs on the vulnerable container image.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationCoverageFuzzing",
- "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": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "file",
- "description": "Path to the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startLine",
- "description": "Number of the first relevant line in the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableClass",
- "description": "Class containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableMethod",
- "description": "Method containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationDast",
- "description": "Represents the location of a vulnerability found by a DAST scan",
- "fields": [
- {
- "name": "hostname",
- "description": "Domain name of the vulnerable request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "param",
- "description": "Query parameter for the URL on which the vulnerability occurred.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "path",
- "description": "URL path and query string of the vulnerable request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "requestMethod",
- "description": "HTTP method of the vulnerable request.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationDependencyScanning",
- "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": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerableDependency",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "file",
- "description": "Path to the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationSast",
- "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": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "file",
- "description": "Path to the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startLine",
- "description": "Number of the first relevant line in the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableClass",
- "description": "Class containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableMethod",
- "description": "Method containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityLocationSecretDetection",
- "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": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "file",
- "description": "Path to the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "startLine",
- "description": "Number of the first relevant line in the vulnerable file.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableClass",
- "description": "Class containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vulnerableMethod",
- "description": "Method containing the vulnerability.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityPermissions",
- "description": "Check permissions for the current user on a vulnerability",
- "fields": [
- {
- "name": "adminVulnerability",
- "description": "Indicates the user can perform `admin_vulnerability` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminVulnerabilityExternalIssueLink",
- "description": "Indicates the user can perform `admin_vulnerability_external_issue_link` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "adminVulnerabilityIssueLink",
- "description": "Indicates the user can perform `admin_vulnerability_issue_link` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createVulnerability",
- "description": "Indicates the user can perform `create_vulnerability` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createVulnerabilityExport",
- "description": "Indicates the user can perform `create_vulnerability_export` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "createVulnerabilityFeedback",
- "description": "Indicates the user can perform `create_vulnerability_feedback` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "destroyVulnerabilityFeedback",
- "description": "Indicates the user can perform `destroy_vulnerability_feedback` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "readVulnerabilityFeedback",
- "description": "Indicates the user can perform `read_vulnerability_feedback` on this resource",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "updateVulnerabilityFeedback",
- "description": "Indicates the user can perform `update_vulnerability_feedback` on this resource",
- "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": "ENUM",
- "name": "VulnerabilityReportType",
- "description": "The type of the security scan that found the vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DEPENDENCY_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONTAINER_SCANNING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DAST",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SECRET_DETECTION",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "COVERAGE_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "API_FUZZING",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityResolveInput",
- "description": "Autogenerated input type of VulnerabilityResolve",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be resolved.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "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": "VulnerabilityResolvePayload",
- "description": "Autogenerated return type of VulnerabilityResolve",
- "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": "vulnerability",
- "description": "The vulnerability after state change.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "INPUT_OBJECT",
- "name": "VulnerabilityRevertToDetectedInput",
- "description": "Autogenerated input type of VulnerabilityRevertToDetected",
- "fields": null,
- "inputFields": [
- {
- "name": "id",
- "description": "ID of the vulnerability to be reverted.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "VulnerabilityID",
- "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": "VulnerabilityRevertToDetectedPayload",
- "description": "Autogenerated return type of VulnerabilityRevertToDetected",
- "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": "vulnerability",
- "description": "The vulnerability after revert.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "Vulnerability",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityScanner",
- "description": "Represents a vulnerability scanner",
- "fields": [
- {
- "name": "externalId",
- "description": "External ID of the vulnerability scanner.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": "Name of the vulnerability scanner.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "reportType",
- "description": "Type of the vulnerability report.",
- "args": [
-
- ],
- "type": {
- "kind": "ENUM",
- "name": "VulnerabilityReportType",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "vendor",
- "description": "Vendor of the vulnerability scanner.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilityScannerConnection",
- "description": "The connection type for VulnerabilityScanner.",
- "fields": [
- {
- "name": "edges",
- "description": "A list of edges.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityScannerEdge",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "nodes",
- "description": "A list of nodes.",
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "VulnerabilityScanner",
- "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": "VulnerabilityScannerEdge",
- "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": "VulnerabilityScanner",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerabilitySeveritiesCount",
- "description": "Represents vulnerability counts by severity",
- "fields": [
- {
- "name": "critical",
- "description": "Number of vulnerabilities of CRITICAL severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "high",
- "description": "Number of vulnerabilities of HIGH severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "info",
- "description": "Number of vulnerabilities of INFO severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "low",
- "description": "Number of vulnerabilities of LOW severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "medium",
- "description": "Number of vulnerabilities of MEDIUM severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "unknown",
- "description": "Number of vulnerabilities of UNKNOWN severity of the project",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilitySeverity",
- "description": "The severity of the vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "INFO",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNKNOWN",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LOW",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MEDIUM",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "HIGH",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CRITICAL",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilitySort",
- "description": "Vulnerability sort values",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "severity_desc",
- "description": "Severity in descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "severity_asc",
- "description": "Severity in ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title_desc",
- "description": "Title in descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "title_asc",
- "description": "Title in ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detected_desc",
- "description": "Detection timestamp in descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "detected_asc",
- "description": "Detection timestamp in ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "report_type_desc",
- "description": "Report Type in descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "report_type_asc",
- "description": "Report Type in ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state_desc",
- "description": "State in descending order",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "state_asc",
- "description": "State in ascending order",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "VulnerabilityState",
- "description": "The state of the vulnerability",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "DETECTED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "CONFIRMED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "RESOLVED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "DISMISSED",
- "description": null,
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerableDependency",
- "description": "Represents a vulnerable dependency. Used in vulnerability location data",
- "fields": [
- {
- "name": "package",
- "description": "The package associated with the vulnerable dependency.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "VulnerablePackage",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "version",
- "description": "The version of the vulnerable dependency.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerablePackage",
- "description": "Represents a vulnerable package. Used in vulnerability dependency data",
- "fields": [
- {
- "name": "name",
- "description": "The name of the vulnerable package.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "VulnerableProjectsByGrade",
- "description": "Represents vulnerability letter grades with associated projects",
- "fields": [
- {
- "name": "count",
- "description": "Number of projects within this grade.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Int",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "grade",
- "description": "Grade based on the highest severity vulnerability present.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "VulnerabilityGrade",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "projects",
- "description": "Projects within this grade.",
- "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": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "ProjectConnection",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "__Directive",
- "description": "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.",
- "fields": [
- {
- "name": "args",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__InputValue",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "locations",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "__DirectiveLocation",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "onField",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use `locations`."
- },
- {
- "name": "onFragment",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use `locations`."
- },
- {
- "name": "onOperation",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": true,
- "deprecationReason": "Use `locations`."
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "__DirectiveLocation",
- "description": "A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "QUERY",
- "description": "Location adjacent to a query operation.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "MUTATION",
- "description": "Location adjacent to a mutation operation.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SUBSCRIPTION",
- "description": "Location adjacent to a subscription operation.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FIELD",
- "description": "Location adjacent to a field.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FRAGMENT_DEFINITION",
- "description": "Location adjacent to a fragment definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FRAGMENT_SPREAD",
- "description": "Location adjacent to a fragment spread.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INLINE_FRAGMENT",
- "description": "Location adjacent to an inline fragment.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SCHEMA",
- "description": "Location adjacent to a schema definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "SCALAR",
- "description": "Location adjacent to a scalar definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "OBJECT",
- "description": "Location adjacent to an object type definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "FIELD_DEFINITION",
- "description": "Location adjacent to a field definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ARGUMENT_DEFINITION",
- "description": "Location adjacent to an argument definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INTERFACE",
- "description": "Location adjacent to an interface definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNION",
- "description": "Location adjacent to a union definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ENUM",
- "description": "Location adjacent to an enum definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ENUM_VALUE",
- "description": "Location adjacent to an enum value definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INPUT_OBJECT",
- "description": "Location adjacent to an input object type definition.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INPUT_FIELD_DEFINITION",
- "description": "Location adjacent to an input object field definition.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "__EnumValue",
- "description": "One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.",
- "fields": [
- {
- "name": "deprecationReason",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "isDeprecated",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": null,
- "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": "__Field",
- "description": "Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.",
- "fields": [
- {
- "name": "args",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__InputValue",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "deprecationReason",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "isDeprecated",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "__InputValue",
- "description": "Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.",
- "fields": [
- {
- "name": "defaultValue",
- "description": "A GraphQL-formatted string representing the default value for this input value.",
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "description",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "type",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "__Schema",
- "description": "A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.",
- "fields": [
- {
- "name": "directives",
- "description": "A list of all directives supported by this server.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Directive",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "mutationType",
- "description": "If this server supports mutation, the type that mutation operations will be rooted at.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "queryType",
- "description": "The type that query operations will be rooted at.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "subscriptionType",
- "description": "If this server support subscription, the type that subscription operations will be rooted at.",
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "types",
- "description": "A list of all types supported by this server.",
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "OBJECT",
- "name": "__Type",
- "description": "The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.",
- "fields": [
- {
- "name": "description",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "enumValues",
- "description": null,
- "args": [
- {
- "name": "includeDeprecated",
- "description": null,
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__EnumValue",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "fields",
- "description": null,
- "args": [
- {
- "name": "includeDeprecated",
- "description": null,
- "type": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- },
- "defaultValue": "false"
- }
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Field",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "inputFields",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__InputValue",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "interfaces",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "kind",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "ENUM",
- "name": "__TypeKind",
- "ofType": null
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "name",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ofType",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- },
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "possibleTypes",
- "description": null,
- "args": [
-
- ],
- "type": {
- "kind": "LIST",
- "name": null,
- "ofType": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "OBJECT",
- "name": "__Type",
- "ofType": null
- }
- }
- },
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "inputFields": null,
- "interfaces": [
-
- ],
- "enumValues": null,
- "possibleTypes": null
- },
- {
- "kind": "ENUM",
- "name": "__TypeKind",
- "description": "An enum describing what kind of type a given `__Type` is.",
- "fields": null,
- "inputFields": null,
- "interfaces": null,
- "enumValues": [
- {
- "name": "SCALAR",
- "description": "Indicates this type is a scalar.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "OBJECT",
- "description": "Indicates this type is an object. `fields` and `interfaces` are valid fields.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INTERFACE",
- "description": "Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "UNION",
- "description": "Indicates this type is a union. `possibleTypes` is a valid field.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "ENUM",
- "description": "Indicates this type is an enum. `enumValues` is a valid field.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "INPUT_OBJECT",
- "description": "Indicates this type is an input object. `inputFields` is a valid field.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "LIST",
- "description": "Indicates this type is a list. `ofType` is a valid field.",
- "isDeprecated": false,
- "deprecationReason": null
- },
- {
- "name": "NON_NULL",
- "description": "Indicates this type is a non-null. `ofType` is a valid field.",
- "isDeprecated": false,
- "deprecationReason": null
- }
- ],
- "possibleTypes": null
- }
- ],
- "directives": [
- {
- "name": "include",
- "description": "Directs the executor to include this field or fragment only when the `if` argument is true.",
- "locations": [
- "FIELD",
- "FRAGMENT_SPREAD",
- "INLINE_FRAGMENT"
- ],
- "args": [
- {
- "name": "if",
- "description": "Included when true.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ]
- },
- {
- "name": "skip",
- "description": "Directs the executor to skip this field or fragment when the `if` argument is true.",
- "locations": [
- "FIELD",
- "FRAGMENT_SPREAD",
- "INLINE_FRAGMENT"
- ],
- "args": [
- {
- "name": "if",
- "description": "Skipped when true.",
- "type": {
- "kind": "NON_NULL",
- "name": null,
- "ofType": {
- "kind": "SCALAR",
- "name": "Boolean",
- "ofType": null
- }
- },
- "defaultValue": null
- }
- ]
- },
- {
- "name": "deprecated",
- "description": "Marks an element of a GraphQL schema as no longer supported.",
- "locations": [
- "FIELD_DEFINITION",
- "ENUM_VALUE"
- ],
- "args": [
- {
- "name": "reason",
- "description": "Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted in [Markdown](https://daringfireball.net/projects/markdown/).",
- "type": {
- "kind": "SCALAR",
- "name": "String",
- "ofType": null
- },
- "defaultValue": "\"No longer supported\""
- }
- ]
- }
- ]
- }
- }
-} \ No newline at end of file
diff --git a/doc/api/graphql/reference/index.md b/doc/api/graphql/reference/index.md
index f49a12568ed..c6ad2cb82c7 100644
--- a/doc/api/graphql/reference/index.md
+++ b/doc/api/graphql/reference/index.md
@@ -26,6 +26,150 @@ in [Removed Items](../removed_items.md).
<!-- vale gitlab.Spelling = NO -->
+## Queries
+
+Queries are used to get the resources, filter or query them.
+
+For more information, visit [Queries and Mutations](https://graphql.org/learn/queries/).
+
+### CiApplicationSettings
+
+CI related settings that apply to the entire instance.
+
+### CiConfig
+
+Get linted and processed contents of a CI config. Should not be requested more than once per request.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `content` | Contents of `.gitlab-ci.yml`. | String! |
+| `dryRun` | Run pipeline creation simulation, or only do static check. | Boolean |
+| `projectPath` | The project of the CI config. | ID! |
+
+### ContainerRepository
+
+Find a container repository.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | The global ID of the container repository. | ContainerRepositoryID! |
+
+### CurrentUser
+
+Get information about current user.
+
+### DesignManagement
+
+Fields related to design management.
+
+### Echo
+
+Text to echo back.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `text` | Text to echo back. | String! |
+
+### GeoNode
+
+Find a Geo node.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `name` | The name of the Geo node. Defaults to the current Geo node name. | String |
+
+### Group
+
+Find a group.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `fullPath` | The full path of the project, group or namespace, e.g., `gitlab-org/gitlab-foss`. | ID! |
+
+### InstanceSecurityDashboard
+
+Fields related to Instance Security Dashboard.
+
+### Issue
+
+Find an Issue.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | The global ID of the Issue. | IssueID! |
+
+### Iteration
+
+Find an iteration.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | Find an iteration by its ID. | IterationID! |
+
+### Metadata
+
+Metadata about GitLab.
+
+### Milestone
+
+Find a milestone.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | Find a milestone by its ID. | MilestoneID! |
+
+### Namespace
+
+Find a namespace.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `fullPath` | The full path of the project, group or namespace, e.g., `gitlab-org/gitlab-foss`. | ID! |
+
+### Package
+
+Find a package.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | The global ID of the package. | PackagesPackageID! |
+
+### Project
+
+Find a project.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `fullPath` | The full path of the project, group or namespace, e.g., `gitlab-org/gitlab-foss`. | ID! |
+
+### RunnerSetup
+
+Get runner setup instructions.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `architecture` | Architecture to generate the instructions for. | String! |
+| `groupId` | Group to register the runner for. | GroupID |
+| `platform` | Platform to generate the instructions for. | String! |
+| `projectId` | Project to register the runner for. | ProjectID |
+
+### User
+
+Find a user.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | ID of the User. | UserID |
+| `username` | Username of the User. | String |
+
+### Vulnerability
+
+Find a vulnerability.
+
+| Name | Description | Type |
+| ----- | ---- | ----------- |
+| `id` | The Global ID of the Vulnerability. | VulnerabilityID! |
+
## Object types
Object types represent the resources that the GitLab GraphQL API can return.
@@ -130,6 +274,9 @@ An endpoint and credentials used to accept alerts for a project.
| `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. |
+| `payloadAlertFields` | AlertManagementPayloadAlertField! => Array | Extract alert fields from payload example for custom mapping. |
+| `payloadAttributeMappings` | AlertManagementPayloadAlertMappingField! => Array | The custom mapping of GitLab alert attributes to fields from the payload_example. |
+| `payloadExample` | JsonString | The example of an alert payload. |
| `token` | String | Token used to authenticate alert notification requests. |
| `type` | AlertManagementIntegrationType! | Type of integration. |
| `url` | String | Endpoint which accepts alert notifications. |
@@ -144,6 +291,17 @@ Parsed field from an alert used for custom mappings.
| `path` | String! => Array | Path to value inside payload JSON. |
| `type` | AlertManagementPayloadAlertFieldType | Type of the parsed value. |
+### AlertManagementPayloadAlertMappingField
+
+Parsed field (with its name) from an alert used for custom mappings.
+
+| Field | Type | Description |
+| ----- | ---- | ----------- |
+| `fieldName` | AlertManagementPayloadAlertFieldName | A GitLab alert field name. |
+| `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
An endpoint and credentials used to accept Prometheus alerts for a project.
@@ -204,7 +362,7 @@ Autogenerated return type of ApiFuzzingCiConfigurationCreate.
### ApiFuzzingScanProfile
-An API Fuzzing scan profile..
+An API Fuzzing scan profile.
| Field | Type | Description |
| ----- | ---- | ----------- |
@@ -280,7 +438,7 @@ Autogenerated return type of AwardEmojiToggle.
### Board
-Represents a project or group board.
+Represents a project or group issue board.
| Field | Type | Description |
| ----- | ---- | ----------- |
@@ -559,6 +717,7 @@ Autogenerated return type of ClusterAgentDelete.
| `clusterAgent` | ClusterAgent | Cluster agent this token is associated with. |
| `createdAt` | Time | Timestamp the token was created. |
| `createdByUser` | User | The user who created the token. |
+| `description` | String | Description of the token. |
| `id` | ClustersAgentTokenID! | Global ID of the token. |
### ClusterAgentTokenCreatePayload
@@ -643,7 +802,7 @@ 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-gitlab-ci.yml@compliance/hippa`. |
+| `pipelineConfigurationFullPath` | String | Full path of the compliance pipeline configuration stored in a project repository, such as `.gitlab/.compliance-gitlab-ci.yml@compliance/hipaa` **(ULTIMATE)**. |
### ComposerMetadata
@@ -1539,9 +1698,13 @@ Represents an epic board.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `id` | BoardsEpicBoardID! | Global ID of the board. |
+| `hideBacklogList` | Boolean | Whether or not backlog list is hidden. |
+| `hideClosedList` | Boolean | Whether or not closed list is hidden. |
+| `id` | BoardsEpicBoardID! | Global ID of the epic board. |
| `lists` | EpicListConnection | Epic board lists. |
-| `name` | String | Name of the board. |
+| `name` | String | Name of the epic board. |
+| `webPath` | String! | Web path of the epic board. |
+| `webUrl` | String! | Web URL of the epic board. |
### EpicBoardCreatePayload
@@ -1955,7 +2118,7 @@ Describes an incident management on-call schedule.
### IncidentManagementOncallShift
-A block of time for which a participant is on-call..
+A block of time for which a participant is on-call.
| Field | Type | Description |
| ----- | ---- | ----------- |
@@ -1972,16 +2135,6 @@ A block of time for which a participant is on-call..
| `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
-
-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. |
-
### Issue
| Field | Type | Description |
@@ -2262,11 +2415,13 @@ Autogenerated return type of JiraImportUsers.
| Field | Type | Description |
| ----- | ---- | ----------- |
| `color` | String! | Background color of the label. |
+| `createdAt` | Time! | When this label was created. |
| `description` | String | Description of the label (Markdown rendered as HTML for caching). |
| `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` |
| `id` | ID! | Label ID. |
| `textColor` | String! | Text color of the label. |
| `title` | String! | Content of the label. |
+| `updatedAt` | Time! | When this label was last updated. |
### LabelCreatePayload
@@ -2780,7 +2935,7 @@ Represents a version of a package in the Package Registry.
### PageInfo
-Information about pagination in a connection..
+Information about pagination in a connection.
| Field | Type | Description |
| ----- | ---- | ----------- |
@@ -2810,6 +2965,7 @@ Information about pagination in a connection..
| `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. |
+| `securityReportFindings` | PipelineSecurityReportFindingConnection | Vulnerability findings reported on the pipeline. |
| `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. |
@@ -2874,6 +3030,25 @@ Autogenerated return type of PipelineRetry.
| `errors` | String! => Array | Errors encountered during execution of the mutation. |
| `pipeline` | Pipeline | The pipeline after mutation. |
+### PipelineSecurityReportFinding
+
+Represents vulnerability finding of a security report on the pipeline.
+
+| Field | Type | Description |
+| ----- | ---- | ----------- |
+| `confidence` | String | Type of the security report that found the vulnerability. |
+| `description` | String | Description of the vulnerability finding. |
+| `identifiers` | VulnerabilityIdentifier! => Array | Identifiers of the vulnerabilit finding. |
+| `location` | VulnerabilityLocation | Location metadata for the vulnerability. Its fields depend on the type of security scan that found the vulnerability. |
+| `name` | String | Name of the vulnerability finding. |
+| `project` | Project | The project on which the vulnerability finding was found. |
+| `projectFingerprint` | String | Name of the vulnerability finding. |
+| `reportType` | VulnerabilityReportType | Type of the security report that found the vulnerability finding. |
+| `scanner` | VulnerabilityScanner | Scanner metadata for the vulnerability. |
+| `severity` | VulnerabilitySeverity | Severity of the vulnerability finding. |
+| `solution` | String | URL to the vulnerability's details page. |
+| `uuid` | String | Name of the vulnerability finding. |
+
### Project
| Field | Type | Description |
@@ -2882,6 +3057,7 @@ Autogenerated return type of PipelineRetry.
| `alertManagementAlert` | AlertManagementAlert | A single Alert Management alert of the project. |
| `alertManagementAlertStatusCounts` | AlertManagementAlertStatusCountsType | Counts of alerts by status for the project. |
| `alertManagementAlerts` | AlertManagementAlertConnection | Alert Management alerts of the project. |
+| `alertManagementHttpIntegrations` | AlertManagementHttpIntegrationConnection | HTTP Integrations which can receive alerts for 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. |
@@ -4053,6 +4229,16 @@ Autogenerated return type of UpdateSnippet.
| `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. |
+### UsageTrendsMeasurement
+
+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. |
+
### User
| Field | Type | Description |
@@ -4172,9 +4358,9 @@ Represents the vulnerability details base.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
### VulnerabilityDetailBoolean
@@ -4182,9 +4368,9 @@ Represents the vulnerability details boolean value.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | Boolean! | Value of the field. |
### VulnerabilityDetailCode
@@ -4193,10 +4379,10 @@ Represents the vulnerability details code field.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
| `lang` | String | Language of the code. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | String! | Source code. |
### VulnerabilityDetailCommit
@@ -4205,9 +4391,9 @@ Represents the vulnerability details commit field.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | String! | The commit SHA value. |
### VulnerabilityDetailDiff
@@ -4218,9 +4404,9 @@ Represents the vulnerability details diff field.
| ----- | ---- | ----------- |
| `after` | String! | Value of the field after the change. |
| `before` | String! | Value of the field before the change. |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
### VulnerabilityDetailFileLocation
@@ -4228,12 +4414,12 @@ Represents the vulnerability details location within a file in the project.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `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. |
+| `name` | String | Name of the field. |
### VulnerabilityDetailInt
@@ -4241,9 +4427,9 @@ Represents the vulnerability details integer value.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | Int! | Value of the field. |
### VulnerabilityDetailList
@@ -4252,10 +4438,10 @@ Represents the vulnerability details list value.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
| `items` | VulnerabilityDetail! => Array | List of details. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
### VulnerabilityDetailMarkdown
@@ -4263,9 +4449,9 @@ Represents the vulnerability details Markdown field.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | String! | Value of the Markdown field. |
### VulnerabilityDetailModuleLocation
@@ -4274,10 +4460,10 @@ Represents the vulnerability details location within a file in the project.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
| `moduleName` | String! | Module name. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `offset` | Int! | Offset of the module location. |
### VulnerabilityDetailTable
@@ -4286,10 +4472,10 @@ Represents the vulnerability details table value.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
| `headers` | VulnerabilityDetail! => Array | Table headers. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `rows` | VulnerabilityDetail! => Array | Table rows. |
### VulnerabilityDetailText
@@ -4298,9 +4484,9 @@ Represents the vulnerability details text field.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `value` | String! | Value of the text field. |
### VulnerabilityDetailUrl
@@ -4309,10 +4495,10 @@ Represents the vulnerability details URL field.
| Field | Type | Description |
| ----- | ---- | ----------- |
-| `description` | String! | Description of the field. |
+| `description` | String | Description of the field. |
| `fieldName` | String | Name of the field. |
| `href` | String! | Href of the URL. |
-| `name` | String! | Name of the field. |
+| `name` | String | Name of the field. |
| `text` | String | Text of the URL. |
### VulnerabilityDismissPayload
@@ -5116,7 +5302,7 @@ Possible identifier types for a measurement.
### MergeRequestNewState
-New state to apply to a merge request..
+New state to apply to a merge request.
| Value | Description |
| ----- | ----------- |
@@ -5309,9 +5495,9 @@ Size of UI component in SAST configuration page.
| Value | Description |
| ----- | ----------- |
-| `LARGE` | |
-| `MEDIUM` | |
-| `SMALL` | |
+| `LARGE` | The size of UI component in SAST configuration page is large. |
+| `MEDIUM` | The size of UI component in SAST configuration page is medium. |
+| `SMALL` | The size of UI component in SAST configuration page is small. |
### SecurityReportTypeEnum
diff --git a/doc/api/invitations.md b/doc/api/invitations.md
index 7259dddec8c..e9b09ba9708 100644
--- a/doc/api/invitations.md
+++ b/doc/api/invitations.md
@@ -38,7 +38,7 @@ POST /projects/:id/invitations
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `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 |
-| `email` | integer/string | yes | The email of the new member or multiple emails separated by commas |
+| `email` | string | yes | The email of the new member or multiple emails separated by commas |
| `access_level` | integer | yes | A valid access level |
| `expires_at` | string | no | A date string in the format YEAR-MONTH-DAY |
diff --git a/doc/api/merge_request_context_commits.md b/doc/api/merge_request_context_commits.md
index 0b4b96b889b..cd38d972320 100644
--- a/doc/api/merge_request_context_commits.md
+++ b/doc/api/merge_request_context_commits.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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
---
diff --git a/doc/api/merge_requests.md b/doc/api/merge_requests.md
index d9bcba96fdc..7fec630b3eb 100644
--- a/doc/api/merge_requests.md
+++ b/doc/api/merge_requests.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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
---
diff --git a/doc/api/notification_settings.md b/doc/api/notification_settings.md
index a85c6475331..57eac61de46 100644
--- a/doc/api/notification_settings.md
+++ b/doc/api/notification_settings.md
@@ -39,6 +39,7 @@ If the `custom` level is used, specific email events can be controlled. Availabl
- `fixed_pipeline`
- `success_pipeline`
- `moved_project`
+- `merge_when_pipeline_succeeds`
- `new_epic` **(ULTIMATE)**
## Global notification settings
@@ -94,6 +95,7 @@ curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab
| `fixed_pipeline` | boolean | no | Enable/disable this notification |
| `success_pipeline` | boolean | no | Enable/disable this notification |
| `moved_project` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/30371) in GitLab 13.3) |
+| `merge_when_pipeline_succeeds` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/244840) in GitLab 13.9) |
| `new_epic` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/5863) in GitLab 11.3) **(ULTIMATE)** |
Example response:
@@ -165,6 +167,7 @@ curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab
| `fixed_pipeline` | boolean | no | Enable/disable this notification |
| `success_pipeline` | boolean | no | Enable/disable this notification |
| `moved_project` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/30371) in GitLab 13.3) |
+| `merge_when_pipeline_succeeds` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/244840) in GitLab 13.9) |
| `new_epic` | boolean | no | Enable/disable this notification ([Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/5863) in GitLab 11.3) **(ULTIMATE)** |
Example responses:
diff --git a/doc/api/openapi/openapi_interactive.md b/doc/api/openapi/openapi_interactive.md
index 0f1544b139d..95d7bba8081 100644
--- a/doc/api/openapi/openapi_interactive.md
+++ b/doc/api/openapi/openapi_interactive.md
@@ -27,7 +27,7 @@ and example server responses. Some parameters include a default or a list of all
![API viewer screenshot](img/apiviewer04-fs8.png)
-## Starting an interactive sesssion
+## Starting an interactive session
A [Personal access token](../../user/profile/personal_access_tokens.md) (PAT) is one way to
start an interactive session. To do this, select **Authorize** from the main page, and a
diff --git a/doc/api/project_snippets.md b/doc/api/project_snippets.md
index c5adf361fb6..b07a4a4addf 100644
--- a/doc/api/project_snippets.md
+++ b/doc/api/project_snippets.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference, api
---
-# Project snippets
+# Project snippets **(FREE)**
## Snippet visibility level
diff --git a/doc/api/project_templates.md b/doc/api/project_templates.md
index 6251d31660c..459bd8baff2 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 of the template. Accepted values are: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, `merge_requests` |
Example response (licenses):
@@ -100,7 +100,7 @@ GET /projects/:id/templates/:type/:name
| 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 of the template. One of: `dockerfiles`, `gitignores`, `gitlab_ci_ymls`, `licenses`, `issues`, or `merge_requests`. |
| `name` | string | yes | The key of the template, as obtained from the collection endpoint |
| `source_template_project_id` | integer | no | The project ID where a given template is being stored. This is useful when multiple templates from different projects have the same name. If multiple templates have the same name, the match from `closest ancestor` is returned if `source_template_project_id` is not specified |
| `project` | string | no | The project name to use when expanding placeholders in the template. Only affects licenses |
diff --git a/doc/api/projects.md b/doc/api/projects.md
index 321a95af8b5..b8687314697 100644
--- a/doc/api/projects.md
+++ b/doc/api/projects.md
@@ -1061,7 +1061,7 @@ POST /projects
| `avatar` | mixed | **{dotted-circle}** No | Image file for avatar of the project. |
| `build_coverage_regex` | string | **{dotted-circle}** No | Test coverage parsing. |
| `build_git_strategy` | string | **{dotted-circle}** No | The Git strategy. Defaults to `fetch`. |
-| `build_timeout` | integer | **{dotted-circle}** No | The maximum amount of time in minutes that a job is able run (in seconds). |
+| `build_timeout` | integer | **{dotted-circle}** No | The maximum amount of time, in seconds, that a job can run. |
| `builds_access_level` | string | **{dotted-circle}** No | One of `disabled`, `private`, or `enabled`. |
| `ci_config_path` | string | **{dotted-circle}** No | The path to CI configuration file. |
| `container_expiration_policy_attributes` | hash | **{dotted-circle}** No | Update the image cleanup policy for this project. Accepts: `cadence` (string), `keep_n` (integer), `older_than` (string), `name_regex` (string), `name_regex_delete` (string), `name_regex_keep` (string), `enabled` (boolean). |
diff --git a/doc/api/services.md b/doc/api/services.md
index 16431937c7a..64daca1793a 100644
--- a/doc/api/services.md
+++ b/doc/api/services.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Services API
+# Services API **(FREE)**
NOTE:
This API requires an access token with Maintainer or Owner permissions
@@ -814,7 +814,7 @@ Parameters:
| `username` | string | yes | The username of the user created to be used with GitLab/Jira. |
| `password` | string | yes | The password of the user created to be used with GitLab/Jira. |
| `active` | boolean | no | Activates or deactivates the service. Defaults to false (deactivated). |
-| `jira_issue_transition_id` | string | no | The ID of a transition that moves issues to a closed state. You can find this number under the Jira workflow administration (**Administration > Issues > Workflows**) by selecting **View** under **Operations** of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the transitions ID column. By default, this ID is set to `2`. |
+| `jira_issue_transition_id` | string | no | The ID of one or more transitions to move issues to a closed state. Read [custom issue transitions](../user/project/integrations/jira.md#custom-issue-transitions) for details. Defaults to a blank string, which enables [automatic issue transitions](../user/project/integrations/jira.md#automatic-issue-transitions). |
| `commit_events` | boolean | false | Enable notifications for commit events |
| `merge_requests_events` | boolean | false | Enable notifications for merge request events |
| `comment_on_event_enabled` | boolean | false | Enable comments inside Jira issues on each GitLab event (commit / merge request) |
diff --git a/doc/api/snippets.md b/doc/api/snippets.md
index 670045df66d..3b7184c9933 100644
--- a/doc/api/snippets.md
+++ b/doc/api/snippets.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference, api
---
-# Snippets API
+# Snippets API **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/6373) in GitLab 8.15.
@@ -230,7 +230,7 @@ curl --request POST "https://gitlab.example.com/api/v4/snippets" \
"content": "Hello world",
"file_path": "test.txt"
}
- ]
+ ]
}
```
diff --git a/doc/api/wikis.md b/doc/api/wikis.md
index 43587da9473..1b8d091e3fd 100644
--- a/doc/api/wikis.md
+++ b/doc/api/wikis.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference, api
---
-# Project wikis API
+# Project wikis API **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13372) in GitLab 10.0.
diff --git a/doc/ci/README.md b/doc/ci/README.md
index 9b555c0ee68..b1bcb578daf 100644
--- a/doc/ci/README.md
+++ b/doc/ci/README.md
@@ -37,6 +37,9 @@ the development cycle, ensuring that all the code deployed to
production complies with the code standards you established for
your app.
+GitLab can also automatically detect, build, test, deploy, and
+monitor your applications by using [Auto DevOps](../topics/autodevops/index.md).
+
For a complete overview of these methodologies and GitLab CI/CD,
read the [Introduction to CI/CD with GitLab](introduction/index.md).
diff --git a/doc/ci/ci_cd_for_external_repos/github_integration.md b/doc/ci/ci_cd_for_external_repos/github_integration.md
index 2a8b050b224..deadc4458a2 100644
--- a/doc/ci/ci_cd_for_external_repos/github_integration.md
+++ b/doc/ci/ci_cd_for_external_repos/github_integration.md
@@ -22,7 +22,7 @@ cannot be used to authenticate with GitHub as an external CI/CD repository.
## Connect with Personal Access Token
Personal access tokens can only be used to connect GitHub.com
-repositories to GitLab, and the GitHub user must have the [owner role](https://docs.github.com/en/free-pro-team@latest/github/getting-started-with-github/access-permissions-on-github).
+repositories to GitLab, and the GitHub user must have the [owner role](https://docs.github.com/en/github/getting-started-with-github/access-permissions-on-github).
To perform a one-off authorization with GitHub to grant GitLab access your
repositories:
diff --git a/doc/ci/cloud_deployment/ecs/img/container-name.png b/doc/ci/cloud_deployment/ecs/img/container-name.png
new file mode 100644
index 00000000000..c2b4f23454b
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/container-name.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/container-port-mapping.png b/doc/ci/cloud_deployment/ecs/img/container-port-mapping.png
new file mode 100644
index 00000000000..ca390bf68a0
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/container-port-mapping.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/ecs-launch-status.png b/doc/ci/cloud_deployment/ecs/img/ecs-launch-status.png
new file mode 100644
index 00000000000..3a8a249af1b
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/ecs-launch-status.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/ecs-policy.png b/doc/ci/cloud_deployment/ecs/img/ecs-policy.png
new file mode 100644
index 00000000000..088a45bb065
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/ecs-policy.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/ecs-task-definitions.png b/doc/ci/cloud_deployment/ecs/img/ecs-task-definitions.png
new file mode 100644
index 00000000000..9404e721d5c
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/ecs-task-definitions.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/initial-pipeline.png b/doc/ci/cloud_deployment/ecs/img/initial-pipeline.png
new file mode 100644
index 00000000000..7072f550586
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/initial-pipeline.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/rails-template.png b/doc/ci/cloud_deployment/ecs/img/rails-template.png
new file mode 100644
index 00000000000..02c67f8dd21
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/rails-template.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/registry.png b/doc/ci/cloud_deployment/ecs/img/registry.png
new file mode 100644
index 00000000000..694d83fd0ce
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/registry.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/service-parameter.png b/doc/ci/cloud_deployment/ecs/img/service-parameter.png
new file mode 100644
index 00000000000..b659b18d0b6
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/service-parameter.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/service-running.png b/doc/ci/cloud_deployment/ecs/img/service-running.png
new file mode 100644
index 00000000000..2b78960d5f4
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/service-running.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/view-running-app-2.png b/doc/ci/cloud_deployment/ecs/img/view-running-app-2.png
new file mode 100644
index 00000000000..e64a378e11c
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/view-running-app-2.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/img/view-running-app.png b/doc/ci/cloud_deployment/ecs/img/view-running-app.png
new file mode 100644
index 00000000000..360dd285182
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/img/view-running-app.png
Binary files differ
diff --git a/doc/ci/cloud_deployment/ecs/quick_start_guide.md b/doc/ci/cloud_deployment/ecs/quick_start_guide.md
new file mode 100644
index 00000000000..9b1d46351e2
--- /dev/null
+++ b/doc/ci/cloud_deployment/ecs/quick_start_guide.md
@@ -0,0 +1,250 @@
+---
+stage: Release
+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
+---
+
+# Getting started with Continuous Deployment to AWS Elastic Container Service **(FREE)**
+
+This step-by-step guide helps you use [Continuous Deployment to ECS](../index.md#deploy-your-application-to-the-aws-elastic-container-service-ecs)
+that deploys a project hosted on GitLab.com to [Elastic Container Service](https://aws.amazon.com/ecs)
+(ECS) on AWS.
+
+In this guide, you begin by creating an ECS cluster manually using the AWS console. You create and
+deploy a simple application that you create from a GitLab template.
+
+These instructions work for both SaaS and self-managed GitLab instances.
+Ensure your own [runners are configured](../../runners/README.md).
+
+## Prerequisites
+
+- An [AWS account](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/).
+ Sign in with an existing AWS account or create a new one.
+- In this guide, you create an infrastructure in [`us-east-2` region](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html).
+ You can use any region, but do not change it after you begin.
+
+## Create an infrastructure and initial deployment on AWS
+
+For deploying an application from GitLab, you must first create an infrastructure and initial
+deployment on AWS.
+This includes an [ECS cluster](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.html)
+and related components, such as
+[ECS task definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html),
+[ECS services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html),
+and containerized application image.
+
+For the first step here, you create a demo application from a project template.
+
+### Create a new project from a template
+
+Use a GitLab project template to get started. As the name suggests, these projects provide a
+bare-bones application built on some well-known frameworks.
+
+1. In GitLab, click the plus icon (**{plus-square}**) at the top of the navigation bar, and select
+ **New project**.
+
+1. Click the **Create from template** button, where you can choose from a Ruby on Rails, Spring, or
+ NodeJS Express project. For this guide, use the Ruby on Rails template.
+
+ ![Select project template](img/rails-template.png)
+
+1. Give your project a name. In this example, it's named `ecs-demo`. Make it public so that you can
+ take advantage of the features available in the
+ [GitLab Ultimate plan](https://about.gitlab.com/pricing/).
+
+1. Click **Create project**.
+
+Now that you created a demo project, you must containerize the application and push it to the
+container registry.
+
+### Push a containerized application image to GitLab Container Registry
+
+[ECS](https://aws.amazon.com/ecs) is a container orchestration service, meaning that you must
+provide a containerized application image during the infrastructure build. To do so, you can use
+GitLab [Auto Build](../../../topics/autodevops/stages.md#auto-build)
+and [Container Registry](../../../user/packages/container_registry/index.md).
+
+1. Go to **ecs-demo** project on GitLab.
+1. Click **Setup up CI/CD**. It brings you to a [`.gitlab-ci.yml`](../../README.md#getting-started)
+ creation form.
+1. Copy and paste the following content into the empty `.gitlab-ci.yml`. This defines
+ [a pipeline for continuous deployment to ECS](../index.md#deploy-your-application-to-the-aws-elastic-container-service-ecs).
+
+ ```yaml
+ include:
+ - template: AWS/Deploy-ECS.gitlab-ci.yml
+ ```
+
+1. Click **Commit Changes**. It automatically triggers a new pipeline. In this pipeline, the `build`
+ job containerizes the application and pushes the image to [GitLab Container Registry](../../../user/packages/container_registry/index.md).
+
+ ![Create project](img/initial-pipeline.png)
+
+1. Visit **Packages & Registries > Container Registry**. Make sure the application image has been
+ pushed.
+
+ ![Create project](img/registry.png)
+
+Now you have a containerized application image that can be pulled from AWS. Next, you define the
+spec of how this application image is used in AWS.
+
+Note that the `production_ecs` job fails because ECS Cluster is not connected yet. You'll fix this
+later.
+
+### Create an ECS task definition
+
+[ECS Task definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html)
+is a specification about how the application image is started by an [ECS service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html).
+
+1. Go to **ECS > Task Definitions** on [AWS console](https://aws.amazon.com/).
+1. Click **Create new Task Definition**.
+
+ ![Create project](img/ecs-task-definitions.png)
+
+1. Choose **EC2** as the launch type. Click **Next Step**.
+1. Set `ecs_demo` to **Task Definition Name**.
+1. Set `512` to **Task Size > Task memory** and **Task CPU**.
+1. Click **Container Definitions > Add container**. This opens a container registration form.
+1. Set `web` to **Container name**.
+1. Set `registry.gitlab.com/<your-namespace>/ecs-demo/master:latest` to **Image**.
+ Alternatively, you can copy and paste the image path from the [GitLab Container Registry page](#push-a-containerized-application-image-to-gitlab-container-registry).
+
+ ![Create project](img/container-name.png)
+
+1. Add a port mapping. Set `80` to **Host Port** and `5000` to **Container port**.
+
+ ![Create project](img/container-port-mapping.png)
+
+1. Click **Create**.
+
+Now you have the initial task definition. Next, you create an actual infrastructure to run the
+application image.
+
+### Create an ECS cluster
+
+An [ECS cluster](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.html)
+is a virtual group of [ECS services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html).
+It's also associated with EC2 or Fargate as the computation resource.
+
+1. Go to **ECS > Clusters** on [AWS console](https://aws.amazon.com/).
+1. Click **Create Cluster**.
+1. Select **EC2 Linux + Networking** as the cluster template. Click **Next Step**.
+1. Set `ecs-demo` to **Cluster Name**.
+1. Choose the default [VPC](https://aws.amazon.com/vpc/?vpc-blogs.sort-by=item.additionalFields.createdDate&vpc-blogs.sort-order=desc)
+ in **Networking**. If there are no existing VPCs, you can leave it as-is to create a new one.
+1. Set all available subnets of the VPC to **Subnets**.
+1. Click **Create**.
+1. Make sure that the ECS cluster has been successfully created.
+
+ ![Create project](img/ecs-launch-status.png)
+
+Now you can register an ECS service to the ECS cluster in the next step.
+
+Note the following:
+
+- Optionally, you can set a SSH key pair in the creation form. This allows you to SSH to the EC2
+ instance for debugging.
+- If you don't choose an existing VPC, it creates a new VPC by default. This could cause an error if
+ it reaches the maximum allowed number of internet gateways on your account.
+- The cluster requires an EC2 instance, meaning it costs you [according to the instance-type](https://aws.amazon.com/ec2/pricing/on-demand/).
+
+### Create an ECS Service
+
+[ECS service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html)
+is a daemon to create an application container based on the [ECS task definition](#create-an-ecs-task-definition).
+
+1. Go to **ECS > Clusters > ecs-demo > Services** on the [AWS console](https://aws.amazon.com/)
+1. Click **Deploy**. This opens a service creation form.
+1. Select `EC2` in **Launch Type**.
+1. Set `ecs_demo` to **Task definition**. This corresponds to [the task definition you created above](#create-an-ecs-task-definition).
+1. Set `ecs_demo` to **Service name**.
+1. Set `1` to **Desired tasks**.
+
+ ![Create project](img/service-parameter.png)
+
+1. Click **Deploy**.
+1. Make sure that the created service is active.
+
+ ![Create project](img/service-running.png)
+
+Note that AWS's console UI changes from time to time. If you can't find a relevant component in the
+instructions, select the closest one.
+
+### View the demo application
+
+Now, the demo application is accessible from the internet.
+
+1. Go to **EC2 > Instances** on the [AWS console](https://aws.amazon.com/)
+1. Search by `ECS Instance` to find the corresponding EC2 instance that [the ECS cluster created](#create-an-ecs-cluster).
+1. Click the ID of the EC2 instance. This brings you to the instance detail page.
+1. Copy **Public IPv4 address** and paste it in the browser. Now you can see the demo application
+ running.
+
+ ![Create project](img/view-running-app.png)
+
+In this guide, HTTPS/SSL is **NOT** configured. You can access to the application through HTTP only
+(for example, `http://<ec2-ipv4-address>`).
+
+## Setup Continuous Deployment from GitLab
+
+Now that you have an application running on ECS, you can set up continuous deployment from GitLab.
+
+### Create a new IAM user as a deployer
+
+For GitLab to access the ECS cluster, service, and task definition that you created above, You must
+create a deployer user on AWS:
+
+1. Go to **IAM > Users** on [AWS console](https://aws.amazon.com/).
+1. Click **Add user**.
+1. Set `ecs_demo` to **User name**.
+1. Enable **Programmatic access** checkbox. Click **Next: Permissions**.
+1. Select `Attach existing policies directly` in **Set permissions**.
+1. Select `AmazonECS_FullAccess` from the policy list. Click **Next: Tags** and **Next: Review**.
+
+ ![Create project](img/ecs-policy.png)
+
+1. Click **Create user**.
+1. Take note of the **Access key ID** and **Secret access key** of the created user.
+
+NOTE:
+Do not share the secret access key in a public place. You must save it in a secure place.
+
+### Setup credentials in GitLab to let pipeline jobs access to ECS
+
+You can register the access information in [GitLab Environment Variables](../../variables/README.md#create-a-custom-variable-in-the-ui).
+These variables are injected into the pipeline jobs and can access the ECS API.
+
+1. Go to **ecs-demo** project on GitLab.
+1. Go to **Settings > CI/CD > Variables**.
+1. Click **Add Variable** and set the following key-value pairs.
+
+ |Key|Value|Note|
+ |---|---|---|
+ |`AWS_ACCESS_KEY_ID`|`<Access key ID of the deployer>`| For authenticating `aws` CLI. |
+ |`AWS_SECRET_ACCESS_KEY`|`<Secret access key of the deployer>`| For authenticating `aws` CLI. |
+ |`AWS_DEFAULT_REGION`|`us-east-2`| For authenticating `aws` CLI. |
+ |`CI_AWS_ECS_CLUSTER`|`ecs-demo`| The ECS cluster is accessed by `production_ecs` job. |
+ |`CI_AWS_ECS_SERVICE`|`ecs_demo`| The ECS service of the cluster is updated by `production_ecs` job. |
+ |`CI_AWS_ECS_TASK_DEFINITION`|`ecs_demo`| The ECS task definition is updated by `production_ecs` job. |
+
+### Make a change to the demo application
+
+Change a file in the project and see if it's reflected in the demo application on ECS:
+
+1. Go to **ecs-demo** project on GitLab.
+1. Open the file at **app > views > welcome > index.html.erb**.
+1. Click **Edit**.
+1. Change the text to `You're on ECS!`.
+1. Click **Commit Changes**. This automatically triggers a new pipeline. Wait until it finishes.
+1. [Access the running application on the ECS cluster](#view-the-demo-application). You should see
+ this:
+
+ ![Create project](img/view-running-app-2.png)
+
+Congratulations! You successfully set up continuous deployment to ECS.
+
+## Further reading
+
+- If you're interested in more of the continuous deployments to clouds, see [cloud deployments](../index.md).
+- If you want to quickly set up DevSecOps in your project, see [Auto DevOps](../../../topics/autodevops/index.md).
+- If you want to quickly set up the production-grade environment, see [the 5 Minute Production App](https://gitlab.com/gitlab-org/5-minute-production-app/deploy-template/-/blob/master/README.md).
diff --git a/doc/ci/cloud_deployment/index.md b/doc/ci/cloud_deployment/index.md
index ccacb3c61d3..4f1f7d6d4ff 100644
--- a/doc/ci/cloud_deployment/index.md
+++ b/doc/ci/cloud_deployment/index.md
@@ -20,6 +20,11 @@ CI/CD pipeline, you can interact with your chosen cloud provider more easily.
GitLab provides Docker images that you can use to [run AWS commands from GitLab CI/CD](#run-aws-commands-from-gitlab-cicd), and a template to make
it easier to [deploy to AWS](#deploy-your-application-to-the-aws-elastic-container-service-ecs).
+### Quick start
+
+If you're using GitLab.com, see the [quick start guide](ecs/quick_start_guide.md)
+for setting up Continuous Deployment to [AWS Elastic Container Service](https://aws.amazon.com/ecs) (ECS).
+
### Run AWS commands from GitLab CI/CD
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/31167) in GitLab 12.6.
@@ -319,4 +324,4 @@ For a video walkthrough of this configuration process, see [Auto Deploy to EC2](
## Deploy to Google Cloud
-- [Deploying with GitLab on Google Cloud](https://about.gitlab.com/solutions/google-cloud-platform/)
+- [Deploying with GitLab on Google Cloud](https://about.gitlab.com/partners/technology-partners/google-cloud-platform/)
diff --git a/doc/ci/docker/index.md b/doc/ci/docker/index.md
index 18a9d63b694..0897bb183e5 100644
--- a/doc/ci/docker/index.md
+++ b/doc/ci/docker/index.md
@@ -8,11 +8,18 @@ type: index
# Docker integration
-GitLab CI/CD can be combined with [Docker](https://www.docker.com) to enable
-integration between the two.
+There are two primary ways to incorporate [Docker](https://www.docker.com) in your CI/CD workflow.
-The following documentation is available for using GitLab CI/CD with Docker:
+- **[Run your CI/CD jobs](using_docker_images.md) in Docker containers.**
-- [Building Docker images with GitLab CI/CD](using_docker_build.md).
-- [Using Docker images](using_docker_images.md).
-- [Building images with kaniko and GitLab CI/CD](using_kaniko.md).
+ You can create CI/CD jobs to do things like test, build, or publish
+ an application. These jobs can run in Docker containers.
+
+ For example, you can tell GitLab CI/CD to use a Node image that's hosted on Docker Hub
+ or in the GitLab Container Registry. Your job then runs in a container that's based on the image.
+ The container has all the Node dependencies you need to build your app.
+
+- **Use [Docker](using_docker_build.md) or [kaniko](using_kaniko.md) to build Docker images.**
+
+ You can create CI/CD jobs to build Docker images and publish
+ them to a container registry.
diff --git a/doc/ci/docker/using_docker_build.md b/doc/ci/docker/using_docker_build.md
index 46ced9b4d6d..01a58fa73f6 100644
--- a/doc/ci/docker/using_docker_build.md
+++ b/doc/ci/docker/using_docker_build.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
type: concepts, howto
---
-# Building Docker images with GitLab CI/CD
+# Use Docker to build Docker images
You can use GitLab CI/CD with Docker Engine to build and test Docker-based projects.
@@ -872,4 +872,4 @@ If:
- This is the first time setting it up, carefully read
[using Docker in Docker workflow](#use-the-docker-executor-with-the-docker-image-docker-in-docker).
- You are upgrading from v18.09 or earlier, read our
- [upgrade guide](https://about.gitlab.com/releases/2019/07/31/docker-in-docker-with-docker-19-dot-03/).
+ [upgrade guide](https://about.gitlab.com/blog/2019/07/31/docker-in-docker-with-docker-19-dot-03/).
diff --git a/doc/ci/docker/using_docker_images.md b/doc/ci/docker/using_docker_images.md
index 67450d442a9..c382e40a966 100644
--- a/doc/ci/docker/using_docker_images.md
+++ b/doc/ci/docker/using_docker_images.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
type: concepts, howto
---
-# Using Docker images
+# Run your CI/CD jobs in Docker containers
GitLab CI/CD in conjunction with [GitLab Runner](../runners/README.md) can use
[Docker Engine](https://www.docker.com/) to test and build any application.
diff --git a/doc/ci/docker/using_kaniko.md b/doc/ci/docker/using_kaniko.md
index 2122cf2bf16..0344e736dd4 100644
--- a/doc/ci/docker/using_kaniko.md
+++ b/doc/ci/docker/using_kaniko.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
type: howto
---
-# Building images with kaniko and GitLab CI/CD
+# Use kaniko to build Docker images
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/45512) in GitLab 11.2. Requires GitLab Runner 11.2 and above.
diff --git a/doc/ci/environments/index.md b/doc/ci/environments/index.md
index b49fcd72172..c11643c2405 100644
--- a/doc/ci/environments/index.md
+++ b/doc/ci/environments/index.md
@@ -1069,7 +1069,7 @@ Re-using variables defined inside `script` as part of the environment name doesn
Below are some links you may find interesting:
- [The `.gitlab-ci.yml` definition of environments](../yaml/README.md#environment)
-- [A blog post on Deployments & Environments](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/)
+- [A blog post on Deployments & Environments](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/)
- [Review Apps - Use dynamic environments to deploy your code for every branch](../review_apps/index.md)
- [Deploy Boards for your applications running on Kubernetes](../../user/project/deploy_boards.md)
diff --git a/doc/ci/environments/protected_environments.md b/doc/ci/environments/protected_environments.md
index 2636e59723a..b52c2701daf 100644
--- a/doc/ci/environments/protected_environments.md
+++ b/doc/ci/environments/protected_environments.md
@@ -70,7 +70,7 @@ Alternatively, you can use the API to protect an environment:
name: ${CI_JOB_NAME}
```
-1. Use the UI to [create a new group](../../user/group/index.md#create-a-new-group).
+1. Use the UI to [create a new group](../../user/group/index.md#create-a-group).
For example, this group is called `protected-access-group` and has the group ID `9899826`. Note
that the rest of the examples in these steps use this group.
diff --git a/doc/ci/examples/authenticating-with-hashicorp-vault/index.md b/doc/ci/examples/authenticating-with-hashicorp-vault/index.md
index 2d8c92a1a74..a5024e8a65f 100644
--- a/doc/ci/examples/authenticating-with-hashicorp-vault/index.md
+++ b/doc/ci/examples/authenticating-with-hashicorp-vault/index.md
@@ -53,7 +53,9 @@ The JWT's payload looks like this:
"job_id": "1212", #
"ref": "auto-deploy-2020-04-01", # Git ref for this job
"ref_type": "branch", # Git ref type, branch or tag
- "ref_protected": "true" # true if this git ref is protected, false otherwise
+ "ref_protected": "true", # true if this git ref is protected, false otherwise
+ "environment": "production", # Environment this job deploys to, if present (GitLab 13.9 and later)
+ "environment_protected": "true" # true if deployed environment is protected, false otherwise (GitLab 13.9 and later)
}
```
diff --git a/doc/ci/examples/end_to_end_testing_webdriverio/index.md b/doc/ci/examples/end_to_end_testing_webdriverio/index.md
index e20e86e8936..1b375a3cac8 100644
--- a/doc/ci/examples/end_to_end_testing_webdriverio/index.md
+++ b/doc/ci/examples/end_to_end_testing_webdriverio/index.md
@@ -10,6 +10,7 @@ description: 'Confidence checking your entire app every time a new feature is ad
---
<!-- vale off -->
+<!-- Needs review for fixing the broken Webdriver links, which link to a deprecated version of Webdriver. -->
# End-to-end testing with GitLab CI/CD and WebdriverIO
@@ -83,7 +84,7 @@ multiple tests, such as making sure you are logged in.
The function `it` defines an individual test.
[The `browser` object](https://webdriver.io/guide/testrunner/browserobject.html) is WebdriverIO's
-special sauce. It provides most of [the WebdriverIO API methods](https://webdriver.io/api.html) that are the key to
+special sauce. It provides most of [the WebdriverIO API methods](https://webdriver.io/docs/api/) that are the key to
steering the browser. In this case, we can use
[`browser.url`](https://webdriver.io/api/protocol/url.html) to visit `/page-that-does-not-exist` to
hit our 404 page. We can then use [`browser.getUrl`](https://webdriver.io/api/property/getUrl.html)
diff --git a/doc/ci/examples/laravel_with_gitlab_and_envoy/index.md b/doc/ci/examples/laravel_with_gitlab_and_envoy/index.md
index a02a5347734..2acd7315630 100644
--- a/doc/ci/examples/laravel_with_gitlab_and_envoy/index.md
+++ b/doc/ci/examples/laravel_with_gitlab_and_envoy/index.md
@@ -128,7 +128,7 @@ We'll use this variable in the `.gitlab-ci.yml` later, to easily connect to our
![variables page](img/variables_page.png)
-We also need to add the public key to **Project** > **Settings** > **Repository** as a [Deploy Key](../../../ssh/README.md#deploy-keys), which gives us the ability to access our repository from the server through [SSH protocol](../../../gitlab-basics/command-line-commands.md#start-working-on-your-project).
+We also need to add the public key to **Project** > **Settings** > **Repository** as a [Deploy Key](../../../user/project/deploy_keys/index.md), which gives us the ability to access our repository from the server through [SSH protocol](../../../gitlab-basics/command-line-commands.md#start-working-on-your-project).
```shell
# As the deployer user on the server
@@ -619,7 +619,7 @@ deploy_production:
- master
```
-You may also want to add another job for [staging environment](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/), to final test your application before deploying to production.
+You may also want to add another job for [staging environment](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/), to final test your application before deploying to production.
### Turn on GitLab CI/CD
diff --git a/doc/ci/jobs/index.md b/doc/ci/jobs/index.md
index d1fe6db3ee4..3eed9526e80 100644
--- a/doc/ci/jobs/index.md
+++ b/doc/ci/jobs/index.md
@@ -153,7 +153,7 @@ Job grouping is evaluated with an improved regular expression to group jobs by n
The new implementation removes one or more `: [...]`, `X Y`, `X/Y`, or `X\Y` sequences
from the **end** of job names only.
-Matching substrings occuring at the beginning or in the middle of build names are
+Matching substrings occurring at the beginning or in the middle of build names are
no longer removed.
## Specifying variables when running manual jobs
diff --git a/doc/ci/pipelines/settings.md b/doc/ci/pipelines/settings.md
index 32221b78039..7c84cba7fe3 100644
--- a/doc/ci/pipelines/settings.md
+++ b/doc/ci/pipelines/settings.md
@@ -133,19 +133,21 @@ averaged.
<!-- vale gitlab.Spelling = NO -->
-| Coverage Tool | Sample regular expression |
-|------------------------------------------------|---------------------------|
-| Simplecov (Ruby) | `\(\d+.\d+\%\) covered` |
-| pytest-cov (Python) | `^TOTAL.+?(\d+\%)$` |
+| Coverage Tool | Sample regular expression |
+|------------------------------------------------|-----------------------------------------------|
+| Simplecov (Ruby) | `\(\d+.\d+\%\) covered` |
+| pytest-cov (Python) | `^TOTAL.+?(\d+\%)$` |
| Scoverage (Scala) | `Statement coverage[A-Za-z\.*]\s*:\s*([^%]+)` |
-| `phpunit --coverage-text --colors=never` (PHP) | `^\s*Lines:\s*\d+.\d+\%` |
-| gcovr (C/C++) | `^TOTAL.*\s+(\d+\%)$` |
-| `tap --coverage-report=text-summary` (NodeJS) | `^Statements\s*:\s*([^%]+)` |
-| `nyc npm test` (NodeJS) | `All files[^|]*\|[^|]*\s+([\d\.]+)` |
-| excoveralls (Elixir) | `\[TOTAL\]\s+(\d+\.\d+)%` |
-| `mix test --cover` (Elixir) | `\d+.\d+\%\s+\|\s+Total` |
-| JaCoCo (Java/Kotlin) | `Total.*?([0-9]{1,3})%` |
-| `go test -cover` (Go) | `coverage: \d+.\d+% of statements` |
+| `phpunit --coverage-text --colors=never` (PHP) | `^\s*Lines:\s*\d+.\d+\%` |
+| gcovr (C/C++) | `^TOTAL.*\s+(\d+\%)$` |
+| `tap --coverage-report=text-summary` (NodeJS) | `^Statements\s*:\s*([^%]+)` |
+| `nyc npm test` (NodeJS) | `All files[^|]*\|[^|]*\s+([\d\.]+)` |
+| excoveralls (Elixir) | `\[TOTAL\]\s+(\d+\.\d+)%` |
+| `mix test --cover` (Elixir) | `\d+.\d+\%\s+\|\s+Total` |
+| JaCoCo (Java/Kotlin) | `Total.*?([0-9]{1,3})%` |
+| `go test -cover` (Go) | `coverage: \d+.\d+% of statements` |
+| .Net (OpenCover) | `(Visited Points).*\((.*)\)` |
+| .Net (`dotnet test` line coverage) | `Total\s*\|\s*(\d+\.?\d+)` |
<!-- vale gitlab.Spelling = YES -->
@@ -157,11 +159,13 @@ averaged.
To see the evolution of your project code coverage over time,
you can view a graph or download a CSV file with this data. From your project:
-1. Go to **{chart}** **Project Analytics > Repository** to see the historic data for each job listed in the dropdown above the graph.
+1. Go to **Project Analytics > Repository** to see the historic data for each job listed in the dropdown above the graph.
1. If you want a CSV file of that data, click **Download raw data (`.csv`)**
![Code coverage graph of a project over time](img/code_coverage_graph_v13_1.png)
+Code coverage data is also [available at the group level](../../user/group/repositories_analytics/index.md).
+
### Removing color codes
Some test coverage tools output with ANSI color codes that aren't
diff --git a/doc/ci/quick_start/index.md b/doc/ci/quick_start/index.md
index 711bf0c0e7a..7ae76ad3a84 100644
--- a/doc/ci/quick_start/index.md
+++ b/doc/ci/quick_start/index.md
@@ -117,15 +117,22 @@ The pipeline starts when the commit is committed.
#### `.gitlab-ci.yml` tips
-- If you want the runner to use a Docker image to run the jobs, edit the `.gitlab-ci.yml` file
- to include your image name:
+- If you want the runner to [use a Docker container to run the jobs](../docker/using_docker_images.md),
+ edit the `.gitlab-ci.yml` file
+ to include an image name:
```yaml
default:
image: ruby:2.7.2
```
- This command tells the runner to use a Ruby image from Docker Hub.
+ This command tells the runner to use a Ruby image from Docker Hub
+ and to run the jobs in a container that's generated from the image.
+
+ This process is different than
+ [building an application as a Docker container](../docker/using_docker_build.md).
+ Your application does not need to be built as a Docker container to
+ run CI/CD jobs in Docker containers.
- To validate your `.gitlab-ci.yml` file, use the
[CI Lint tool](../lint.md), which is available in every project.
diff --git a/doc/ci/review_apps/index.md b/doc/ci/review_apps/index.md
index 9de6a1162bd..b44526135a1 100644
--- a/doc/ci/review_apps/index.md
+++ b/doc/ci/review_apps/index.md
@@ -12,6 +12,10 @@ type: reference
Review Apps is a collaboration tool that takes the hard work out of providing an environment to showcase product changes.
+NOTE:
+If you have a Kubernetes cluster, you can automate this feature in your applications
+by using [Auto DevOps](../../topics/autodevops/index.md).
+
## Introduction
Review Apps:
diff --git a/doc/ci/ssh_keys/index.md b/doc/ci/ssh_keys/index.md
index 2cdef176a22..72a99efc9bc 100644
--- a/doc/ci/ssh_keys/index.md
+++ b/doc/ci/ssh_keys/index.md
@@ -33,7 +33,7 @@ with any type of [executor](https://docs.gitlab.com/runner/executors/)
1. Run the [`ssh-agent`](https://linux.die.net/man/1/ssh-agent) during job to load
the private key.
1. Copy the public key to the servers you want to have access to (usually in
- `~/.ssh/authorized_keys`) or add it as a [deploy key](../../ssh/README.md#deploy-keys)
+ `~/.ssh/authorized_keys`) or add it as a [deploy key](../../user/project/deploy_keys/index.md)
if you are accessing a private GitLab repository.
The private key is displayed in the job log, unless you enable
@@ -101,7 +101,7 @@ to access it. This is where an SSH key pair comes in handy.
1. As a final step, add the _public_ key from the one you created in the first
step to the services that you want to have an access to from within the build
environment. If you are accessing a private GitLab repository you need to add
- it as a [deploy key](../../ssh/README.md#deploy-keys).
+ it as a [deploy key](../../user/project/deploy_keys/index.md).
That's it! You can now have access to private servers or repositories in your
build environment.
@@ -130,7 +130,7 @@ on, and use that key for all projects that are run on this machine.
1. As a final step, add the _public_ key from the one you created earlier to the
services that you want to have an access to from within the build environment.
If you are accessing a private GitLab repository you need to add it as a
- [deploy key](../../ssh/README.md#deploy-keys).
+ [deploy key](../../user/project/deploy_keys/index.md).
After generating the key, try to sign in to the remote server to accept the
fingerprint:
diff --git a/doc/ci/triggers/README.md b/doc/ci/triggers/README.md
index b4cea48a362..fa97cbdfcec 100644
--- a/doc/ci/triggers/README.md
+++ b/doc/ci/triggers/README.md
@@ -188,10 +188,10 @@ source repository. Be sure to URL-encode `ref` if it contains slashes.
### Using webhook payload in the triggered pipeline
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/31197) 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 recommended for production use.
-> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-the-trigger_payload-variable). **(FREE SELF)**
+> - It's [deployed behind a feature flag](../../user/feature_flags.md), enabled by default.
+> - It's enabled on GitLab.com.
+> - It's recommended for production use.
+> - For GitLab self-managed instances, GitLab administrators can opt to [disable it](#enable-or-disable-the-trigger_payload-variable). **(FREE SELF)**
WARNING:
This feature might not be available to you. Check the **version history** note above for details.
@@ -203,21 +203,21 @@ so you can access the data with `cat $TRIGGER_PAYLOAD` or a similar command.
#### Enable or disable the `TRIGGER_PAYLOAD` variable
-The `TRIGGER_PAYLOAD` CI/CD variable is under development and not ready for production use. It is
-deployed behind a feature flag that is **disabled by default**.
+The `TRIGGER_PAYLOAD` CI/CD variable is under development but ready for production use.
+It is deployed behind a feature flag that is **enabled by default**.
[GitLab administrators with access to the GitLab Rails console](../../administration/feature_flags.md)
-can enable it.
+can opt to disable it.
-To enable it:
+To disable it:
```ruby
-Feature.enable(:ci_trigger_payload_into_pipeline)
+Feature.disable(:ci_trigger_payload_into_pipeline)
```
-To disable it:
+To enable it:
```ruby
-Feature.disable(:ci_trigger_payload_into_pipeline)
+Feature.enable(:ci_trigger_payload_into_pipeline)
```
## Making use of trigger variables
diff --git a/doc/ci/unit_test_reports.md b/doc/ci/unit_test_reports.md
index ee060f33d01..c1720675d6a 100644
--- a/doc/ci/unit_test_reports.md
+++ b/doc/ci/unit_test_reports.md
@@ -197,7 +197,7 @@ There are a few tools that can produce JUnit report format XML files in C/C++.
#### GoogleTest
In the following example, `gtest` is used to generate the test reports.
-If there are multiple gtest executables created for different architectures (`x86`, `x64` or `arm`),
+If there are multiple `gtest` executables created for different architectures (`x86`, `x64` or `arm`),
you will be required to run each test providing a unique filename. The results
will then be aggregated together.
diff --git a/doc/ci/yaml/README.md b/doc/ci/yaml/README.md
index 2abfbd3a5b4..77c63e7ee98 100644
--- a/doc/ci/yaml/README.md
+++ b/doc/ci/yaml/README.md
@@ -267,14 +267,14 @@ Some example `if` clauses for `workflow: rules`:
See the [common `if` clauses for `rules`](#common-if-clauses-for-rules) for more examples.
For example, in the following configuration, pipelines run for all `push` events (changes to
-branches and new tags). Pipelines for push events with `-wip` in the commit message
+branches and new tags). Pipelines for push events with `-draft` in the commit message
don't run, because they are set to `when: never`. Pipelines for schedules or merge requests
don't run either, because no rules evaluate to true for them:
```yaml
workflow:
rules:
- - if: $CI_COMMIT_MESSAGE =~ /-wip$/
+ - if: $CI_COMMIT_MESSAGE =~ /-draft$/
when: never
- if: '$CI_PIPELINE_SOURCE == "push"'
```
@@ -2627,14 +2627,18 @@ to change the job without overriding the global variables.
The `stop_review_app` job is **required** to have the following keywords defined:
-- `when` - [reference](#when)
+- `when`, defined at either:
+ - [The job level](#when).
+ - [In a rules clause](#rules). If you use `rules:` and `when: manual`, you should
+ also set [`allow_failure: true`](#allow_failure) so the pipeline can complete
+ even if the job doesn't run.
- `environment:name`
- `environment:action`
Additionally, both jobs should have matching [`rules`](../yaml/README.md#onlyexcept-basic)
or [`only/except`](../yaml/README.md#onlyexcept-basic) configuration.
-In the example above, if the configuration is not identical:
+In the examples above, if the configuration is not identical:
- The `stop_review_app` job might not be included in all pipelines that include the `review_app` job.
- It is not possible to trigger the `action: stop` to stop the environment automatically.
diff --git a/doc/development/agent/user_stories.md b/doc/development/agent/user_stories.md
index 609be47a3cb..ab135cad9d3 100644
--- a/doc/development/agent/user_stories.md
+++ b/doc/development/agent/user_stories.md
@@ -6,7 +6,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# Kubernetes Agent user stories **(PREMIUM SELF)**
-The [personas in action](https://about.gitlab.com/handbook/marketing/product-marketing/roles-personas/#user-personas)
+The [personas in action](https://about.gitlab.com/handbook/marketing/strategic-marketing/roles-personas/#user-personas)
for the Kubernetes Agent are:
- [Sasha, the Software Developer](https://about.gitlab.com/handbook/marketing/strategic-marketing/roles-personas/#sasha-software-developer).
diff --git a/doc/development/api_graphql_styleguide.md b/doc/development/api_graphql_styleguide.md
index 85098689392..f32aaf6ffa8 100644
--- a/doc/development/api_graphql_styleguide.md
+++ b/doc/development/api_graphql_styleguide.md
@@ -13,7 +13,7 @@ This document outlines the style guide for the GitLab [GraphQL API](../api/graph
<!-- vale gitlab.Spelling = NO -->
We use the [GraphQL Ruby gem](https://graphql-ruby.org/) written by [Robert Mosolgo](https://github.com/rmosolgo/).
<!-- vale gitlab.Spelling = YES -->
-In addition, we have a subscription to [GraphQL Pro](https://www.graphql.pro). For details see [GraphQL Pro subscription](graphql_guide/graphql_pro.md).
+In addition, we have a subscription to [GraphQL Pro](https://graphql.pro/). For details see [GraphQL Pro subscription](graphql_guide/graphql_pro.md).
All GraphQL queries are directed to a single endpoint
([`app/controllers/graphql_controller.rb#execute`](https://gitlab.com/gitlab-org/gitlab/blob/master/app%2Fcontrollers%2Fgraphql_controller.rb)),
diff --git a/doc/development/architecture.md b/doc/development/architecture.md
index 69055131ae8..b577b4e93b7 100644
--- a/doc/development/architecture.md
+++ b/doc/development/architecture.md
@@ -224,17 +224,7 @@ Component statuses are linked to configuration documentation for each component.
### Component list
-Table description links:
-
-- [Omnibus GitLab](https://docs.gitlab.com/omnibus/)
-- [GitLab Environment Toolkit (GET)](https://gitlab.com/gitlab-org/quality/gitlab-environment-toolkit)
-- [GitLab chart](https://docs.gitlab.com/charts/)
-- [Minikube Minimal](https://docs.gitlab.com/charts/development/minikube/#deploying-gitlab-with-minimal-settings)
-- [GitLab.com](https://gitlab.com)
-- [Source](../install/installation.md)
-- [GDK](https://gitlab.com/gitlab-org/gitlab-development-kit)
-
-| Component | Description | Omnibus GitLab | GitLab Environment Toolkit (GET) | GitLab chart | Minikube Minimal | GitLab.com | Source | GDK | CE/EE |
+| Component | Description | [Omnibus GitLab](https://docs.gitlab.com/omnibus/) | [GitLab Environment Toolkit (GET)](https://gitlab.com/gitlab-org/quality/gitlab-environment-toolkit) | [GitLab chart](https://docs.gitlab.com/charts/) | [Minikube Minimal](https://docs.gitlab.com/charts/development/minikube/#deploying-gitlab-with-minimal-settings) | [GitLab.com](https://gitlab.com) | [Source](../install/installation.md) | [GDK](https://gitlab.com/gitlab-org/gitlab-development-kit) | [CE/EE](https://about.gitlab.com/install/ce-or-ee/) |
|-------------------------------------------------------|----------------------------------------------------------------------|:--------------:|:--------------:|:------------:|:----------------:|:----------:|:------:|:---:|:-------:|
| [Certificate Management](#certificate-management) | TLS Settings, Let's Encrypt | ✅ | ✅ | ✅ | ⚙ | ✅ | ⚙ | ⚙ | CE & EE |
| [Consul](#consul) | Database node discovery, failover | ⚙ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | EE Only |
diff --git a/doc/development/auto_devops.md b/doc/development/auto_devops.md
index eaf1d712f17..d11587a864d 100644
--- a/doc/development/auto_devops.md
+++ b/doc/development/auto_devops.md
@@ -47,8 +47,8 @@ found in
## Development environment
-Configuring [GDK for Auto
-DevOps](https://gitlab.com/gitlab-org/gitlab-development-kit/blob/master/doc/howto/auto_devops.md).
+See the [Simple way to develop/test Kubernetes workflows with a local cluster](https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues/1064)
+issue for discussion around setting up Auto DevOps development environments.
## Monitoring on GitLab.com
diff --git a/doc/development/cicd/templates.md b/doc/development/cicd/templates.md
index 94b03634e25..df32c310899 100644
--- a/doc/development/cicd/templates.md
+++ b/doc/development/cicd/templates.md
@@ -88,7 +88,7 @@ for example `Jobs/Deploy.gitlab-ci.yml`.
You can make a new stable template by copying [the latest template](#latest-version)
available in a major milestone release of GitLab like `13.0`. All breaking changes
must be announced in a blog post before the official release, for example
-[GitLab.com is moving to 13.0, with narrow breaking changes](https://about.gitlab.com/releases/2020/05/06/gitlab-com-13-0-breaking-changes/)
+[GitLab.com is moving to 13.0, with narrow breaking changes](https://about.gitlab.com/blog/2020/05/06/gitlab-com-13-0-breaking-changes/)
You can change a stable template version in a minor GitLab release like `13.1` if:
diff --git a/doc/development/code_intelligence/index.md b/doc/development/code_intelligence/index.md
index ac962e3ae3e..790ba1539b7 100644
--- a/doc/development/code_intelligence/index.md
+++ b/doc/development/code_intelligence/index.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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
---
diff --git a/doc/development/code_review.md b/doc/development/code_review.md
index dada6adcce7..9f18cbaff25 100644
--- a/doc/development/code_review.md
+++ b/doc/development/code_review.md
@@ -283,6 +283,8 @@ first time.
you forget to remove any debugging code?
- Consider providing instructions on how to test the merge request. This can be
helpful for reviewers not familiar with the product feature or area of the codebase.
+- If you know your change depends on another being merged first, note it in the
+ description and set an [merge request dependency](../user/project/merge_requests/merge_request_dependencies.md).
- Be grateful for the reviewer's suggestions. (`Good call. I'll make that change.`)
- Don't take it personally. The review is of the code, not of you.
- Explain why the code exists. ("It's like that because of these reasons. Would
@@ -345,6 +347,8 @@ experience, refactors the existing code). Then:
- For non-mandatory suggestions, decorate with (non-blocking) so the author knows they can
optionally resolve within the merge request or follow-up at a later stage.
- There's a [Chrome/Firefox add-on](https://gitlab.com/conventionalcomments/conventional-comments-button) which you can use to apply [Conventional Comment](https://conventionalcomments.org/) prefixes.
+- Ensure there are no open dependencies. Check [related issues](../user/project/issues/related_issues.md) for blockers. Clarify with the author(s)
+if necessary. If blocked by one or more open MRs, set an [MR dependency](../user/project/merge_requests/merge_request_dependencies.md).
- After a round of line notes, it can be helpful to post a summary note such as
"Looks good to me", or "Just a couple things to address."
- Assign the merge request to the author if changes are required following your
diff --git a/doc/development/contributing/issue_workflow.md b/doc/development/contributing/issue_workflow.md
index da38d1e73b4..25ab931e236 100644
--- a/doc/development/contributing/issue_workflow.md
+++ b/doc/development/contributing/issue_workflow.md
@@ -181,7 +181,7 @@ For instance, the "DevOps Report" category is represented by the
`devops_reports.name` value is "DevOps Reports".
If a category's label doesn't respect this naming convention, it should be specified
-with [the `label` attribute](https://about.gitlab.com/handbook/marketing/website/#category-attributes)
+with [the `label` attribute](https://about.gitlab.com/handbook/marketing/inbound-marketing/digital-experience/website/#category-attributes)
in <https://gitlab.com/gitlab-com/www-gitlab-com/blob/master/data/categories.yml>.
### Feature labels
diff --git a/doc/development/contributing/style_guides.md b/doc/development/contributing/style_guides.md
index 2a2cfebe964..db1d01383ad 100644
--- a/doc/development/contributing/style_guides.md
+++ b/doc/development/contributing/style_guides.md
@@ -56,10 +56,10 @@ The current Lefthook configuration can be found in [`lefthook.yml`](https://gitl
Before you push your changes, Lefthook automatically runs the following checks:
- Danger: Runs a subset of checks that `danger-review` runs on your merge requests.
-- ES lint: Run `yarn eslint` checks (with the [`.eslintrc.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.eslintrc.yml) configuration) on the modified `*.{js,vue}` files. Tags: `frontend`, `style`.
+- ES lint: Run `yarn run internal:eslint` checks (with the [`.eslintrc.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.eslintrc.yml) configuration) on the modified `*.{js,vue}` files. Tags: `frontend`, `style`.
- HAML lint: Run `bundle exec haml-lint` checks (with the [`.haml-lint.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.haml-lint.yml) configuration) on the modified `*.html.haml` files. Tags: `view`, `haml`, `style`.
- Markdown lint: Run `yarn markdownlint` checks on the modified `*.md` files. Tags: `documentation`, `style`.
-- SCSS lint: Run `bundle exec scss-lint` checks (with the [`.scss-lint.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.scss-lint.yml) configuration) on the modified `*.scss{,.css}` files. Tags: `stylesheet`, `css`, `style`.
+- SCSS lint: Run `yarn stylelint` checks (with the [`.stylelintrc`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.stylelintrc) configuration) on the modified `*.scss{,.css}` files. Tags: `stylesheet`, `css`, `style`.
- RuboCop: Run `bundle exec rubocop` checks (with the [`.rubocop.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.rubocop.yml) configuration) on the modified `*.rb` files. Tags: `backend`, `style`.
- Vale: Run `vale` checks (with the [`.vale.ini`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.vale.ini) configuration) on the modified `*.md` files. Tags: `documentation`, `style`.
@@ -154,6 +154,16 @@ resolved and place it in the `.rubocop_manual_todo.yml`. In this scenario, do no
changes to the `.rubocop_todo.yml` as an `exclude limit` that is higher than 15 will make the
`.rubocop_todo.yml` hard to parse.
+### Reveal existing RuboCop exceptions
+
+To reveal existing RuboCop exceptions in the code that have been excluded via `.rubocop_todo.yml` and
+`.rubocop_manual_todo.yml`, set the environment variable `REVEAL_RUBOCOP_TODO` to `1`.
+
+This allows you to reveal existing RuboCop exceptions during your daily work cycle and fix them along the way.
+
+NOTE:
+Permanent `Exclude`s should be defined in `.rubocop.yml` instead of `.rubocop_manual_todo.yml`.
+
## Database migrations
See the dedicated [Database Migrations Style Guide](../migration_style_guide.md).
diff --git a/doc/development/database_query_comments.md b/doc/development/database_query_comments.md
index 8a5abad3815..39b14074073 100644
--- a/doc/development/database_query_comments.md
+++ b/doc/development/database_query_comments.md
@@ -39,24 +39,11 @@ Examples of queries with comments as observed in `development.log`:
1. Rails:
```sql
- SELECT "project_features".* FROM "project_features" WHERE "project_features"."project_id" = $1 LIMIT $2 [["project_id", 5], ["LIMIT", 1]] /*application:web,controller:jobs,action:trace,correlation_id:rYF4mey9CH3,line:/app/policies/project_policy.rb:504:in `feature_available?'*/
+ /*application:web,controller:jobs,action:trace,correlation_id:rYF4mey9CH3,line:/app/policies/project_policy.rb:504:in `feature_available?'*/ SELECT "project_features".* FROM "project_features" WHERE "project_features"."project_id" = $1 LIMIT $2 [["project_id", 5], ["LIMIT", 1]]
```
1. Sidekiq:
```sql
- SELECT "ci_pipelines".* FROM "ci_pipelines" WHERE "ci_pipelines"."id" = $1 LIMIT $2 [["id", 64], ["LIMIT", 1]] /*application:sidekiq,jid:e7d6668a39a991e323009833,job_class:ExpireJobCacheWorker,correlation_id:rYF4mey9CH3,line:/app/workers/expire_job_cache_worker.rb:14:in `perform'*/
+ /*application:sidekiq,jid:e7d6668a39a991e323009833,job_class:ExpireJobCacheWorker,correlation_id:rYF4mey9CH3,line:/app/workers/expire_job_cache_worker.rb:14:in `perform'*/ SELECT "ci_pipelines".* FROM "ci_pipelines" WHERE "ci_pipelines"."id" = $1 LIMIT $2 [["id", 64], ["LIMIT", 1]]
```
-
-## Enable/Disable the feature
-
-Enabling or disabling the feature requires a **restart/SIGHUP** of the Web and
-Sidekiq workers, as the feature flag's state is memoized upon starting up.
-
-The `feature_flag` for this feature is **disabled** by default. You can enable
-or disable it with:
-
-```ruby
-Feature.enable(:marginalia)
-Feature.disable(:marginalia)
-```
diff --git a/doc/development/distributed_tracing.md b/doc/development/distributed_tracing.md
index eb20e721e46..17967c5f63c 100644
--- a/doc/development/distributed_tracing.md
+++ b/doc/development/distributed_tracing.md
@@ -206,7 +206,7 @@ If `GITLAB_TRACING` is not configured correctly, this issue is logged:
By default, GitLab ships with the Jaeger tracer, but other tracers can be included at compile time.
Details of how this can be done are included in the [LabKit tracing
-documentation](https://godoc.org/gitlab.com/gitlab-org/labkit/tracing).
+documentation](https://pkg.go.dev/gitlab.com/gitlab-org/labkit/tracing).
If no log messages about tracing are emitted, the `GITLAB_TRACING` environment variable is likely
not set.
diff --git a/doc/development/documentation/testing.md b/doc/development/documentation/testing.md
index f3d6e0a5c71..eed544911cb 100644
--- a/doc/development/documentation/testing.md
+++ b/doc/development/documentation/testing.md
@@ -272,7 +272,11 @@ To configure Vale in your editor, install one of the following as appropriate:
In the extension's settings:
- Select the **Use CLI** checkbox.
- - In the **Config** setting, enter an absolute path to [`.vale.ini`](https://gitlab.com/gitlab-org/gitlab/blob/master/.vale.ini) in one of the cloned GitLab repositories on your computer.
+ - In the <!-- vale gitlab.Spelling = NO --> **Config** setting, enter an absolute
+ path to [`.vale.ini`](https://gitlab.com/gitlab-org/gitlab/blob/master/.vale.ini)
+ in one of the cloned GitLab repositories on your computer.
+ <!-- vale gitlab.Spelling = YES -->
+
- In the **Path** setting, enter the absolute path to the Vale binary. In most
cases, `vale` should work. To find the location, run `which vale` in a terminal.
diff --git a/doc/development/elasticsearch.md b/doc/development/elasticsearch.md
index 3392bd1fbf6..e5d69acc2e5 100644
--- a/doc/development/elasticsearch.md
+++ b/doc/development/elasticsearch.md
@@ -219,7 +219,9 @@ Any update to the Elastic index mappings should be replicated in [`Elastic::Late
Migrations can be built with a retry limit and have the ability to be [failed and marked as halted](https://gitlab.com/gitlab-org/gitlab/-/blob/66e899b6637372a4faf61cfd2f254cbdd2fb9f6d/ee/lib/elastic/migration.rb#L40).
Any data or index cleanup needed to support migration retries should be handled within the migration.
-### Migration options supported by the [`Elastic::MigrationWorker`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/app/workers/elastic/migration_worker.rb)
+### Migration options supported by the `Elastic::MigrationWorker`
+
+[`Elastic::MigrationWorker`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/app/workers/elastic/migration_worker.rb) supports the following migration options:
- `batched!` - Allow the migration to run in batches. If set, the [`Elastic::MigrationWorker`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/app/workers/elastic/migration_worker.rb)
will re-enqueue itself with a delay which is set using the `throttle_delay` option described below. The batching
@@ -230,6 +232,9 @@ enough time to finish. Additionally, the time should be less than 30 minutes sin
[`Elastic::MigrationWorker`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/app/workers/elastic/migration_worker.rb)
cron worker runs. Default value is 5 minutes.
+- `pause_indexing!` - Pause indexing while the migration runs. This setting will record the indexing setting before
+the migration runs and set it back to that value when the migration is completed.
+
```ruby
# frozen_string_literal: true
@@ -242,6 +247,45 @@ class BatchedMigrationName < Elastic::Migration
end
```
+### Multi-version compatibility
+
+These Elasticsearch migrations, like any other GitLab changes, need to support the case where
+[multiple versions of the application are running at the same time](multi_version_compatibility.md).
+
+Depending on the order of deployment, it's possible that the migration
+has started or finished and there's still a server running the application code from before the
+migration. We need to take this into consideration until we can [ensure all Elasticsearch migrations
+start after the deployment has finished](https://gitlab.com/gitlab-org/gitlab/-/issues/321619).
+
+### Reverting a migration
+
+Because Elasticsearch does not support transactions, we always need to design our
+migrations to accommodate a situation where the application
+code is reverted after the migration has started or after it is finished.
+
+For this reason we generally defer destructive actions (for example, deletions after
+some data is moved) to a later merge request after the migrations have
+completed successfully. To be safe, for self-managed customers we should also
+defer it to another release if there is risk of important data loss.
+
+### Best practices for Elasticsearch migrations
+
+Follow these best practices for best results:
+
+- When working in batches, keep the batch size under 9,000 documents
+ and `throttle_delay` over 3 minutes. The bulk indexer is set to run
+ every 1 minute and process a batch of 10,000 documents. These limits
+ allow the bulk indexer time to process records before another migration
+ batch is attempted.
+- To ensure that document counts are up to date, it is recommended to refresh
+ the index before checking if a migration is completed.
+- Add logging statements to each migration when the migration starts, when a
+ completion check occurs, and when the migration is completed. These logs
+ are helpful when debugging issues with migrations.
+- Pause indexing if you're using any Elasticsearch Reindex API operations.
+- Consider adding a retry limit if there is potential for the migration to fail.
+ This ensures that migrations can be halted if an issue occurs.
+
## Performance Monitoring
### Prometheus
diff --git a/doc/development/fe_guide/accessibility.md b/doc/development/fe_guide/accessibility.md
index 5ad1a701fac..081812d41ce 100644
--- a/doc/development/fe_guide/accessibility.md
+++ b/doc/development/fe_guide/accessibility.md
@@ -4,14 +4,195 @@ 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
---
-# Accessibility & Readability
+# Accessibility
+
+Accessibility is important for users who use screen readers or rely on keyboard-only functionality
+to ensure they have an equivalent experience to sighted mouse users.
+
+This page contains guidelines we should follow.
+
+## Quick summary
+
+Since [no ARIA is better than bad ARIA](https://www.w3.org/TR/wai-aria-practices/#no_aria_better_bad_aria),
+review the following recommendations before using `aria-*`, `role`, and `tabindex`.
+Use semantic HTML, which typically has accessibility semantics baked in, but always be sure to test with
+[relevant combinations of screen readers and browsers](https://www.accessibility-developer-guide.com/knowledge/screen-readers/relevant-combinations/).
+
+In [WebAIM's accessibility analysis of the top million home pages](https://webaim.org/projects/million/#aria),
+they found that "ARIA correlated to higher detectable errors".
+It is likely that *misuse* of ARIA is a big cause of increased errors,
+so when in doubt don't use `aria-*`, `role`, and `tabindex`, and stick with semantic HTML.
+
+## Provide accessible names to screen readers
+
+To provide markup with accessible names, ensure every:
+
+- `input` has an associated `label`.
+- `button` and `a` have child text, or `aria-label` when text isn’t present.
+ For example, an icon button with no visible text.
+- `img` has an `alt` attribute.
+- `fieldset` has `legend` as its first child.
+- `figure` has `figcaption` as its first child.
+- `table` has `caption` as its first child.
+
+If the `label`, child text, or child element is not visually desired,
+use `.gl-sr-only` to hide the element from everything but screen readers.
+
+Ensure the accessible name is descriptive enough to be understood in isolation.
+
+```html
+// bad
+<button>Submit</button>
+<a href="url">page</a>
+
+// good
+<button>Submit review</button>
+<a href="url">GitLab's accessibility page</a>
+```
+
+## Role
+
+In general, avoid using `role`.
+Use semantic HTML elements that implicitly have a `role` instead.
+
+| Bad | Good |
+| --- | --- |
+| `<div role="button">` | `<button>` |
+| `<div role="img">` | `<img>` |
+| `<div role="link">` | `<a>` |
+| `<div role="header">` | `<h1>` to `<h6>` |
+| `<div role="textbox">` | `<input>` or `<textarea>` |
+| `<div role="article">` | `<article>` |
+| `<div role="list">` | `<ol>` or `<ul>` |
+| `<div role="listitem">` | `<li>` |
+| `<div role="table">` | `<table>` |
+| `<div role="rowgroup">` | `<thead>`, `<tbody>`, or `<tfoot>` |
+| `<div role="row">` | `<tr>` |
+| `<div role="columnheader">` | `<th>` |
+| `<div role="cell">` | `<td>` |
+
+## Support keyboard-only use
+
+Keyboard users rely on focus outlines to understand where they are on the page. Therefore, if an
+element is interactive you must ensure:
+
+- It can receive keyboard focus.
+- It has a visible focus state.
+
+Use semantic HTML, such as `a` and `button`, which provides these behaviours by default.
+
+See the [Pajamas Keyboard-only page](https://design.gitlab.com/accessibility-audits/2-keyboard-only/) for more detail.
+
+## Tabindex
+
+Prefer **no** `tabindex` to using `tabindex`, since:
+
+- Using semantic HTML such as `button` implicitly provides `tabindex="0"`
+- Tabbing order should match the visual reading order and positive `tabindex`s interfere with this
+
+### Avoid using `tabindex="0"` to make an element interactive
+
+Use interactive elements instead of `div`s and `span`s.
+For example:
+
+- If the element should be clickable, use a `button`
+- If the element should be text editable, use an `input` or `textarea`
+
+Once the markup is semantically complete, use CSS to update it to its desired visual state.
+
+```html
+// bad
+<div role="button" tabindex="0" @click="expand">Expand</div>
+
+// good
+<button @click="expand">Expand</button>
+```
+
+### Do not use `tabindex="0"` on interactive elements
+
+Interactive elements are already tab accessible so adding `tabindex` is redundant.
+
+```html
+// bad
+<a href="help" tabindex="0">Help</a>
+<button tabindex="0">Submit</button>
+
+// good
+<a href="help">Help</a>
+<button>Submit</button>
+```
+
+### Do not use `tabindex="0"` on elements for screen readers to read
+
+Screen readers can read text that is not tab accessible.
+The use of `tabindex="0"` is unnecessary and can cause problems,
+as screen reader users then expect to be able to interact with it.
+
+```html
+// bad
+<span tabindex="0" :aria-label="message">{{ message }}</span>
+
+// good
+<p>{{ message }}</p>
+```
+
+### Do not use a positive `tabindex`
+
+[Always avoid using `tabindex="1"`](https://webaim.org/techniques/keyboard/tabindex#overview)
+or greater.
+
+## Hiding elements
+
+Use the following table to hide elements from users, when appropriate.
+
+| Hide from sighted users | Hide from screen readers | Hide from both sighted and screen reader users |
+| --- | --- | --- |
+| `.gl-sr-only` | `aria-hidden="true"` | `display: none`, `visibility: hidden`, or `hidden` attribute |
+
+### Hide decorative images from screen readers
+
+To reduce noise for screen reader users, hide decorative images using `alt=""`.
+If the image is not an `img` element, such as an inline SVG, you can hide it by adding both `role="img"` and `alt=""`.
+
+`gl-icon` components automatically hide their icons from screen readers so `aria-hidden="true"` is
+unnecessary when using `gl-icon`.
+
+```html
+// good - decorative images hidden from screen readers
+<img src="decorative.jpg" alt="">
+<svg role="img" alt="">
+<gl-icon name="epic"/>
+```
+
+## When should ARIA be used
+
+No ARIA is required when using semantic HTML because it incorporates accessibility.
+
+However, there are some UI patterns and widgets that do not have semantic HTML equivalents.
+Building such widgets require ARIA to make them understandable to screen readers.
+Proper research and testing should be done to ensure compliance with ARIA.
+
+Ideally, these widgets would exist only in [GitLab UI](https://gitlab-org.gitlab.io/gitlab-ui/).
+Use of ARIA would then only occur in [GitLab UI](https://gitlab.com/gitlab-org/gitlab-ui/) and not [GitLab](https://gitlab.com/gitlab-org/gitlab/).
## Resources
-[Chrome Accessibility Developer Tools](https://github.com/GoogleChrome/accessibility-developer-tools)
-assist with testing for potential accessibility problems in GitLab.
+### Viewing the browser accessibility tree
+
+- [Firefox DevTools guide](https://developer.mozilla.org/en-US/docs/Tools/Accessibility_inspector#accessing_the_accessibility_inspector)
+- [Chrome DevTools guide](https://developers.google.com/web/tools/chrome-devtools/accessibility/reference#pane)
+
+### Browser extensions
+
+We have two options for Web accessibility testing:
+
+- [axe](https://www.deque.com/axe/) for [Firefox](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/)
+- [axe](https://www.deque.com/axe/) for [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd)
-The [axe](https://www.deque.com/axe/) browser extension (available for [Firefox](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/) and [Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd)) provides running audits and feedback on markup, CSS, and even potentially problematic color usages.
+### Other links
-Accessibility best-practices and more in-depth information are available on
-[the Audit Rules page](https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules) for the Chrome Accessibility Developer Tools. The [Awesome Accessibility](https://github.com/brunopulis/awesome-a11y) list is a compilation of accessibility-related material.
+- [The A11Y Project](https://www.a11yproject.com/) is a good resource for accessibility
+- [Awesome Accessibility](https://github.com/brunopulis/awesome-a11y)
+ is a compilation of accessibility-related material
+- You can read [Chrome Accessibility Developer Tools'](https://github.com/GoogleChrome/accessibility-developer-tools)
+ rules on its [Audit Rules page](https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules)
diff --git a/doc/development/fe_guide/dark_mode.md b/doc/development/fe_guide/dark_mode.md
index dd7ffd1ee6c..34901bbb1e6 100644
--- a/doc/development/fe_guide/dark_mode.md
+++ b/doc/development/fe_guide/dark_mode.md
@@ -17,7 +17,7 @@ Note the following:
- The dark mode palette is defined in `app/assets/stylesheets/themes/_dark.scss`.
This is loaded _before_ application.scss to generate `application_dark.css`
- We define two types of variables in `_dark.scss`:
- - SCSS variables are used in framework, components, and utitlity classes.
+ - SCSS variables are used in framework, components, and utility classes.
- CSS variables are used for any colors within the `app/assets/stylesheets/page_bundles` directory.
- `app/views/layouts/_head.html.haml` then loads application or application_dark based on the user's theme preference.
@@ -68,7 +68,7 @@ We [plan to add](https://gitlab.com/gitlab-org/gitlab/-/issues/301147) the CSS v
## When to use SCSS variables
There are a few things we do in SCSS that we cannot (easily) do with CSS, such as the following
-functions:
+functions:
- `lighten`
- `darken`
diff --git a/doc/development/fe_guide/editor_lite.md b/doc/development/fe_guide/editor_lite.md
index f783a97fbd3..8154f0ee5c6 100644
--- a/doc/development/fe_guide/editor_lite.md
+++ b/doc/development/fe_guide/editor_lite.md
@@ -4,7 +4,7 @@ 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
---
-# Editor Lite
+# Editor Lite **(FREE)**
## Background
diff --git a/doc/development/fe_guide/graphql.md b/doc/development/fe_guide/graphql.md
index a53d9fee029..0b26115b94f 100644
--- a/doc/development/fe_guide/graphql.md
+++ b/doc/development/fe_guide/graphql.md
@@ -63,6 +63,7 @@ see [Immutability and cache updates](#immutability-and-cache-updates) for more i
If you use VS Code, the Apollo GraphQL extension supports autocompletion in `.graphql` files. To set up
the GraphQL extension, follow these steps:
+1. Generate the schema: `bundle exec rake gitlab:graphql:schema:dump`
1. Add an `apollo.config.js` file to the root of your `gitlab` local directory.
1. Populate the file with the following content:
@@ -72,7 +73,7 @@ the GraphQL extension, follow these steps:
includes: ['./app/assets/javascripts/**/*.graphql', './ee/app/assets/javascripts/**/*.graphql'],
service: {
name: 'GitLab',
- localSchemaFile: './doc/api/graphql/reference/gitlab_schema.graphql',
+ localSchemaFile: './tmp/tests/graphql/gitlab_schema.graphql',
},
},
};
@@ -768,6 +769,23 @@ export default {
### Testing
+#### Generating the GraphQL schema
+
+Some of our tests load the schema JSON files. To generate these files, run:
+
+```shell
+bundle exec rake gitlab:graphql:schema:dump
+```
+
+You should run this task after pulling from upstream, or when rebasing your
+branch. This is run automatically as part of `gdk update`.
+
+NOTE:
+If you use the RubyMine IDE, and have marked the `tmp` directory as
+"Excluded", you should "Mark Directory As -> Not Excluded" for
+`gitlab/tmp/tests/graphql`. This will allow the **JS GraphQL** plugin to
+automatically find and index the schema.
+
#### Mocking response as component data
<!-- vale gitlab.Spelling = NO -->
diff --git a/doc/development/fe_guide/index.md b/doc/development/fe_guide/index.md
index 711c6a5f875..1315520342e 100644
--- a/doc/development/fe_guide/index.md
+++ b/doc/development/fe_guide/index.md
@@ -104,7 +104,7 @@ See the relevant style guides for our guidelines and for information on linting:
- [JavaScript](style/javascript.md). Our guide is based on
the excellent [Airbnb](https://github.com/airbnb/javascript) style guide with a few small
changes.
-- [SCSS](style/scss.md): our SCSS conventions which are enforced through [`scss-lint`](https://github.com/sds/scss-lint).
+- [SCSS](style/scss.md): [our SCSS conventions](https://gitlab.com/gitlab-org/frontend/gitlab-stylelint-config) which are enforced through [`stylelint`](https://stylelint.io).
- [HTML](style/html.md). Guidelines for writing HTML code consistent with the rest of the codebase.
- [Vue](style/vue.md). Guidelines and conventions for Vue code may be found here.
diff --git a/doc/development/fe_guide/style/html.md b/doc/development/fe_guide/style/html.md
index e53686de1a0..18f72a9655c 100644
--- a/doc/development/fe_guide/style/html.md
+++ b/doc/development/fe_guide/style/html.md
@@ -6,6 +6,8 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# HTML style guide
+See also our [accessibility page](../accessibility.md).
+
## Semantic elements
[Semantic elements](https://developer.mozilla.org/en-US/docs/Glossary/Semantics) are HTML tags that
@@ -52,30 +54,27 @@ Button tags requires a `type` attribute according to the [W3C HTML specification
<button type="button"></button>
```
-### Button role
-
-If an HTML element has an `onClick` handler but is not a button, it should have `role="button"`. This is [more accessible](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/button_role).
-
-```html
-// bad
-<div onClick="doSomething"></div>
-
-// good
-<div role="button" onClick="doSomething"></div>
-```
-
## Links
### Blank target
+Avoid forcing links to open in a new window as this reduces the control the user has over the link.
+However, it might be a good idea to use a blank target when replacing the current page with
+the link makes the user lose content or progress.
+
Use `rel="noopener noreferrer"` whenever your links open in a new window, i.e. `target="_blank"`. This prevents a security vulnerability [documented by JitBit](https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/).
+When using `gl-link`, using `target="_blank"` is sufficient as it automatically adds `rel="noopener noreferrer"` to the link.
+
```html
// bad
<a href="url" target="_blank"></a>
// good
<a href="url" target="_blank" rel="noopener noreferrer"></a>
+
+// good
+<gl-link href="url" target="_blank"></gl-link>
```
### Fake links
diff --git a/doc/development/fe_guide/style/index.md b/doc/development/fe_guide/style/index.md
index 89a3d874184..f3da78647be 100644
--- a/doc/development/fe_guide/style/index.md
+++ b/doc/development/fe_guide/style/index.md
@@ -16,7 +16,7 @@ changes.
## SCSS style guide
-Our [SCSS conventions](scss.md) which are enforced through [`scss-lint`](https://github.com/sds/scss-lint).
+Our [SCSS conventions](scss.md) which are enforced through [`stylelint`](https://stylelint.io).
## HTML style guide
diff --git a/doc/development/fe_guide/style/javascript.md b/doc/development/fe_guide/style/javascript.md
index 5c35b880eab..87054f7db86 100644
--- a/doc/development/fe_guide/style/javascript.md
+++ b/doc/development/fe_guide/style/javascript.md
@@ -14,7 +14,7 @@ In addition to the style guidelines set by Airbnb, we also have a few specific r
listed below.
NOTE:
-You can run ESLint locally by running `yarn eslint`
+You can run ESLint locally by running `yarn run lint:eslint`
## Avoid forEach
diff --git a/doc/development/fe_guide/style/scss.md b/doc/development/fe_guide/style/scss.md
index 1d0b3c2b7fc..13c44a098bc 100644
--- a/doc/development/fe_guide/style/scss.md
+++ b/doc/development/fe_guide/style/scss.md
@@ -132,16 +132,14 @@ Before adding a new variable for a color or a size, guarantee:
## Linting
-We use [SCSS Lint](https://github.com/sds/scss-lint) to check for style guide conformity. It uses the
-ruleset in `.scss-lint.yml`, which is located in the home directory of the
-project.
+We use [stylelint](https://stylelint.io) to check for style guide conformity. It uses the
+ruleset in `.stylelintrc` and rules from [our SCSS configuration](https://gitlab.com/gitlab-org/frontend/gitlab-stylelint-config). `.stylelintrc` is located in the home directory of the project.
-To check if any warnings are produced by your changes, run `rake
-scss_lint` in the GitLab directory. SCSS Lint also runs in GitLab CI/CD to
+To check if any warnings are produced by your changes, run `yarn stylelint` in the GitLab directory. Stylelint also runs in GitLab CI/CD to
catch any warnings.
If the Rake task is throwing warnings you don't understand, SCSS Lint's
-documentation includes [a full list of their linters](https://github.com/sds/scss-lint/blob/master/lib/scss_lint/linter/README.md).
+documentation includes [a full list of their rules](https://stylelint.io/user-guide/rules/list).
### Fixing issues
diff --git a/doc/development/fe_guide/style/vue.md b/doc/development/fe_guide/style/vue.md
index 0288238a9e5..d62145b4a4c 100644
--- a/doc/development/fe_guide/style/vue.md
+++ b/doc/development/fe_guide/style/vue.md
@@ -432,41 +432,7 @@ must be unique. It's advised to use `kebab-case` namespaces.
Useful links:
1. [`key`](https://vuejs.org/v2/guide/list.html#key)
-1. [Vue Style Guide: Keyed v-for](https://vuejs.org/v2/style-guide/#Keyed-v-for-essential )
-
-## Vue and Bootstrap
-
-1. Tooltips: Do not rely on `has-tooltip` class name for Vue components
-
- ```html
- // bad
- <span
- class="has-tooltip"
- title="Some tooltip text">
- Text
- </span>
-
- // good
- <span
- v-tooltip
- title="Some tooltip text">
- Text
- </span>
- ```
-
-1. Tooltips: When using a tooltip, include the tooltip directive, `./app/assets/javascripts/vue_shared/directives/tooltip.js`
-
-1. Don't change `data-original-title`.
-
- ```html
- // bad
- <span data-original-title="tooltip text">Foo</span>
-
- // good
- <span title="tooltip text">Foo</span>
-
- $('span').tooltip('_fixTitle');
- ```
+1. [Vue Style Guide: Keyed v-for](https://vuejs.org/v2/style-guide/#Keyed-v-for-essential)
## Vue testing
diff --git a/doc/development/fe_guide/tooling.md b/doc/development/fe_guide/tooling.md
index 7a2d8fccdbf..c493ab9a206 100644
--- a/doc/development/fe_guide/tooling.md
+++ b/doc/development/fe_guide/tooling.md
@@ -17,7 +17,7 @@ This section describes yarn scripts that are available to validate and apply aut
To check all staged files (based on `git diff`) with ESLint, run the following script:
```shell
-yarn eslint-staged
+yarn run lint:eslint:staged
```
A list of problems found are logged to the console.
@@ -25,7 +25,7 @@ A list of problems found are logged to the console.
To apply automatic ESLint fixes to all staged files (based on `git diff`), run the following script:
```shell
-yarn eslint-staged-fix
+yarn run lint:eslint:staged:fix
```
If manual changes are required, a list of changes are sent to the console.
@@ -33,7 +33,7 @@ If manual changes are required, a list of changes are sent to the console.
To check **all** files in the repository with ESLint, run the following script:
```shell
-yarn eslint
+yarn run lint:eslint
```
A list of problems found are logged to the console.
@@ -41,7 +41,7 @@ A list of problems found are logged to the console.
To apply automatic ESLint fixes to **all** files in the repository, run the following script:
```shell
-yarn eslint-fix
+yarn run lint:eslint:fix
```
If manual changes are required, a list of changes are sent to the console.
@@ -98,6 +98,57 @@ When declaring multiple globals, always use one `/* global [name] */` line per v
/* global jQuery */
```
+### Deprecating functions with `import/no-deprecated`
+
+Our `@gitlab/eslint-plugin` Node module contains the [`eslint-plugin-import`](https://gitlab.com/gitlab-org/frontend/eslint-plugin) package.
+
+We can use the [`import/no-deprecated`](https://github.com/benmosher/eslint-plugin-import/blob/HEAD/docs/rules/no-deprecated.md) rule to deprecate functions using a JSDoc block with a `@deprecated` tag:
+
+```javascript
+/**
+ * Convert search query into an object
+ *
+ * @param {String} query from "document.location.search"
+ * @param {Object} options
+ * @param {Boolean} options.gatherArrays - gather array values into an Array
+ * @returns {Object}
+ *
+ * ex: "?one=1&two=2" into {one: 1, two: 2}
+ * @deprecated Please use `queryToObject` instead. See https://gitlab.com/gitlab-org/gitlab/-/issues/283982 for more information
+ */
+export function queryToObject(query, options = {}) {
+ ...
+}
+```
+
+It is strongly encouraged that you:
+
+- Put in an **alternative path for developers** looking to use this function.
+- **Provide a link to the issue** that tracks the migration process.
+
+NOTE:
+Uses are detected if you import the deprecated function into another file. They are not detected when the function is used in the same file.
+
+Running `$ yarn eslint` after this will give us the list of deprecated usages:
+
+```shell
+$ yarn eslint
+
+./app/assets/javascripts/issuable_form.js
+ 9:10 error Deprecated: Please use `queryToObject` instead. See https://gitlab.com/gitlab-org/gitlab/-/issues/283982 for more information import/no-deprecated
+ 33:23 error Deprecated: Please use `queryToObject` instead. See https://gitlab.com/gitlab-org/gitlab/-/issues/283982 for more information import/no-deprecated
+...
+```
+
+Grep for disabled cases of this rule to generate a working list to create issues from, so you can track the effort of removing deprecated uses:
+
+```shell
+$ grep "eslint-disable.*import/no-deprecated" -r .
+
+./app/assets/javascripts/issuable_form.js:import { queryToObject, objectToQuery } from './lib/utils/url_utility'; // eslint-disable-line import/no-deprecate
+./app/assets/javascripts/issuable_form.js: // eslint-disable-next-line import/no-deprecated
+```
+
## Formatting with Prettier
> Support for `.graphql` [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/227280) in GitLab 13.2.
@@ -125,44 +176,28 @@ Please take care that you only let Prettier format the same file types as the gl
The following yarn scripts are available to do global formatting:
```shell
-yarn prettier-staged-save
+yarn run lint:prettier:staged:fix
```
Updates all staged files (based on `git diff`) with Prettier and saves the needed changes.
```shell
-yarn prettier-staged
+yarn run lint:prettier:staged
```
Checks all staged files (based on `git diff`) with Prettier and log which files would need manual updating to the console.
```shell
-yarn prettier-all
+yarn run lint:prettier
```
Checks all files with Prettier and logs which files need manual updating to the console.
```shell
-yarn prettier-all-save
-```
-
-Formats all files in the repository with Prettier. (This should only be used to test global rule updates otherwise you would end up with huge MR's).
-
-The source of these Yarn scripts can be found in `/scripts/frontend/prettier.js`.
-
-#### Scripts during Conversion period
-
-```shell
-node ./scripts/frontend/prettier.js check-all ./vendor/
-```
-
-This iterates over all files in a specific folder, and checks them.
-
-```shell
-node ./scripts/frontend/prettier.js save-all ./vendor/
+yarn run lint:prettier:fix
```
-This iterates over all files in a specific folder and saves them.
+Formats all files in the repository with Prettier.
### VSCode Settings
diff --git a/doc/development/feature_flags/controls.md b/doc/development/feature_flags/controls.md
index 21ac152c469..df98996158e 100644
--- a/doc/development/feature_flags/controls.md
+++ b/doc/development/feature_flags/controls.md
@@ -276,17 +276,19 @@ and reduces confidence in our testing suite covering all possible combinations.
Additionally, a feature flag overwritten in some of the environments can result
in undefined and untested system behavior.
-To remove a feature flag:
+To remove a feature flag, open **one merge request** to make the changes. In the MR:
-1. Open a new merge request with the ~"feature flag" label so
- release managers are aware the changes are hidden behind a feature flag.
+1. Add the ~"feature flag" label so release managers are aware the changes are hidden behind a feature flag.
1. If the merge request has to be picked into a stable branch, add the
appropriate `~"Pick into X.Y"` label, for example `~"Pick into 13.0"`.
See [the feature flag process](process.md#including-a-feature-behind-feature-flag-in-the-final-release)
for further details.
-1. Remove all references to the feature flag from the codebase.
+1. Remove all references to the feature flag from the codebase, including tests.
1. Remove the YAML definition for the feature from the repository.
-1. Clean up the feature flag from all environments with `/chatops run feature delete some_feature`.
+
+Once the above MR has been merged, you should:
+
+1. [Clean up the feature flag from all environments](#cleanup-chatops) with `/chatops run feature delete some_feature`.
1. Close the rollout issue for the feature flag after the feature flag is removed from the codebase.
### Cleanup ChatOps
diff --git a/doc/development/features_inside_dot_gitlab.md b/doc/development/features_inside_dot_gitlab.md
index 08adb7faeb2..36b9064bbc4 100644
--- a/doc/development/features_inside_dot_gitlab.md
+++ b/doc/development/features_inside_dot_gitlab.md
@@ -10,8 +10,8 @@ We have implemented standard features that depend on configuration files in the
When implementing new features, please refer to these existing features to avoid conflicts:
- [Custom Dashboards](../operations/metrics/dashboards/index.md#add-a-new-dashboard-to-your-project): `.gitlab/dashboards/`.
-- [Issue Templates](../user/project/description_templates.md#creating-issue-templates): `.gitlab/issue_templates/`.
-- [Merge Request Templates](../user/project/description_templates.md#creating-merge-request-templates): `.gitlab/merge_request_templates/`.
+- [Issue Templates](../user/project/description_templates.md#create-an-issue-template): `.gitlab/issue_templates/`.
+- [Merge Request Templates](../user/project/description_templates.md#create-a-merge-request-template): `.gitlab/merge_request_templates/`.
- [GitLab Kubernetes Agents](https://gitlab.com/gitlab-org/cluster-integration/gitlab-agent/-/blob/master/doc/configuration_repository.md#layout): `.gitlab/agents/`.
- [CODEOWNERS](../user/project/code_owners.md#how-to-set-up-code-owners): `.gitlab/CODEOWNERS`.
- [Route Maps](../ci/review_apps/#route-maps): `.gitlab/route-map.yml`.
diff --git a/doc/development/go_guide/index.md b/doc/development/go_guide/index.md
index f352db918ed..a6d9ba861b0 100644
--- a/doc/development/go_guide/index.md
+++ b/doc/development/go_guide/index.md
@@ -202,9 +202,9 @@ code readability and test output.
### Better output in tests
When comparing expected and actual values in tests, use
-[`testify/require.Equal`](https://godoc.org/github.com/stretchr/testify/require#Equal),
-[`testify/require.EqualError`](https://godoc.org/github.com/stretchr/testify/require#EqualError),
-[`testify/require.EqualValues`](https://godoc.org/github.com/stretchr/testify/require#EqualValues),
+[`testify/require.Equal`](https://pkg.go.dev/github.com/stretchr/testify/require#Equal),
+[`testify/require.EqualError`](https://pkg.go.dev/github.com/stretchr/testify/require#EqualError),
+[`testify/require.EqualValues`](https://pkg.go.dev/github.com/stretchr/testify/require#EqualValues),
and others to improve readability when comparing structs, errors,
large portions of text, or JSON documents:
@@ -363,12 +363,12 @@ There are a few guidelines one should follow when using the
[Logrus](https://github.com/sirupsen/logrus) package:
- When printing an error use
- [WithError](https://godoc.org/github.com/sirupsen/logrus#WithError). For
+ [WithError](https://pkg.go.dev/github.com/sirupsen/logrus#WithError). For
example, `logrus.WithError(err).Error("Failed to do something")`.
- Since we use [structured logging](#structured-json-logging) we can log
fields in the context of that code path, such as the URI of the request using
- [`WithField`](https://godoc.org/github.com/sirupsen/logrus#WithField) or
- [`WithFields`](https://godoc.org/github.com/sirupsen/logrus#WithFields). For
+ [`WithField`](https://pkg.go.dev/github.com/sirupsen/logrus#WithField) or
+ [`WithFields`](https://pkg.go.dev/github.com/sirupsen/logrus#WithFields). For
example, `logrus.WithField("file", "/app/go").Info("Opening dir")`. If you
have to log multiple keys, always use `WithFields` instead of calling
`WithField` more than once.
@@ -488,7 +488,7 @@ The following are some style guidelines that are specific to the Secure Team.
### Code style and format
Use `goimports -local gitlab.com/gitlab-org` before committing.
-[`goimports`](https://godoc.org/golang.org/x/tools/cmd/goimports)
+[`goimports`](https://pkg.go.dev/golang.org/x/tools/cmd/goimports)
is a tool that automatically formats Go source code using
[`Gofmt`](https://golang.org/cmd/gofmt/), in addition to formatting import lines,
adding missing ones and removing unreferenced ones.
diff --git a/doc/development/graphql_guide/index.md b/doc/development/graphql_guide/index.md
index fd6d8992f94..4ecb34835aa 100644
--- a/doc/development/graphql_guide/index.md
+++ b/doc/development/graphql_guide/index.md
@@ -17,6 +17,6 @@ feedback, and suggestions.
- [GraphQL API documentation style guide](../documentation/graphql_styleguide.md): documentation
style guide for GraphQL.
- [GraphQL API](../../api/graphql/index.md): user documentation for the GitLab GraphQL API.
-- [GraphQL BatchLoader](batchloader.md): development documentation on the batchloader.
+- [GraphQL BatchLoader](batchloader.md): development documentation on the BatchLoader.
- [GraphQL pagination](pagination.md): development documentation on pagination.
- [GraphQL Pro](graphql_pro.md): information on our GraphQL Pro subscription.
diff --git a/doc/development/image_scaling.md b/doc/development/image_scaling.md
index d447b6baf57..79687b66711 100644
--- a/doc/development/image_scaling.md
+++ b/doc/development/image_scaling.md
@@ -73,7 +73,7 @@ we simply follow the path we take to serve any ordinary upload.
### Workhorse
Assuming Rails decided the request to be valid, Workhorse will take over. Upon receiving the `send-scaled-image`
-instruction through the Rails response, a [special response injecter](https://gitlab.com/gitlab-org/gitlab-workhorse/-/blob/master/internal/imageresizer/image_resizer.go)
+instruction through the Rails response, a [special response injector](https://gitlab.com/gitlab-org/gitlab-workhorse/-/blob/master/internal/imageresizer/image_resizer.go)
will be invoked that knows how to rescale images. The only inputs it requires are the location of the image
(a path if the image resides in block storage, or a URL to remote storage otherwise) and the desired width.
Workhorse will handle the location transparently so Rails does not need to be concerned with where the image
diff --git a/doc/development/integrations/jira_connect.md b/doc/development/integrations/jira_connect.md
index bfe523ee390..860fd88612f 100644
--- a/doc/development/integrations/jira_connect.md
+++ b/doc/development/integrations/jira_connect.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Set up a development environment
+# Set up a development environment **(FREE)**
The following are required to install and test the app:
diff --git a/doc/development/integrations/secure.md b/doc/development/integrations/secure.md
index 1d5aced5869..9eae964b86a 100644
--- a/doc/development/integrations/secure.md
+++ b/doc/development/integrations/secure.md
@@ -263,14 +263,14 @@ and what `bundle audit` writes to the standard output.
If the command line fails, then it should be logged with the `error` log level;
this makes it possible to debug the problem without having to change the log level to `debug` and rerun the scanning job.
-#### common logutil package
+#### common `logutil` package
If you are using [go](https://golang.org/) and
[common](https://gitlab.com/gitlab-org/security-products/analyzers/common),
-then it is suggested that you use [logrus](https://github.com/Sirupsen/logrus)
-and [common's logutil package](https://gitlab.com/gitlab-org/security-products/analyzers/common/-/tree/master/logutil)
-to configure the formatter for [logrus](https://github.com/Sirupsen/logrus).
-See the [logutil README.md](https://gitlab.com/gitlab-org/security-products/analyzers/common/-/tree/master/logutil/README.md)
+then it is suggested that you use [Logrus](https://github.com/Sirupsen/logrus)
+and [common's `logutil` package](https://gitlab.com/gitlab-org/security-products/analyzers/common/-/tree/master/logutil)
+to configure the formatter for [Logrus](https://github.com/Sirupsen/logrus).
+See the [`logutil` README](https://gitlab.com/gitlab-org/security-products/analyzers/common/-/tree/master/logutil/README.md)
## Report
diff --git a/doc/development/integrations/secure_partner_integration.md b/doc/development/integrations/secure_partner_integration.md
index 364e18ad015..9c7dc752e4f 100644
--- a/doc/development/integrations/secure_partner_integration.md
+++ b/doc/development/integrations/secure_partner_integration.md
@@ -13,7 +13,7 @@ guidelines so you can build an integration that fits with the workflow GitLab
users are already familiar with.
This page also provides resources for the technical work associated
-with [onboarding as a partner](https://about.gitlab.com/partners/integrate/).
+with [onboarding as a partner](https://about.gitlab.com/partners/technology-partners/integrate/).
The steps below are a high-level view of what needs to be done to complete an
integration as well as linking to more detailed resources for how to do so.
diff --git a/doc/development/internal_api.md b/doc/development/internal_api.md
index dce0877b1b7..78b59940613 100644
--- a/doc/development/internal_api.md
+++ b/doc/development/internal_api.md
@@ -470,7 +470,7 @@ curl --request POST --header "Gitlab-Kas-Api-Request: <JWT token>" --header "A
## Subscriptions
-The subscriptions endpoint is used by `[customers.gitlab.com](https://gitlab.com/gitlab-org/customers-gitlab-com)` (CustomersDot)
+The subscriptions endpoint is used by [CustomersDot](https://gitlab.com/gitlab-org/customers-gitlab-com) (`customers.gitlab.com`)
in order to apply subscriptions including trials, and add-on purchases, for personal namespaces or top-level groups within GitLab.com.
### Creating a subscription
diff --git a/doc/development/namespaces_storage_statistics.md b/doc/development/namespaces_storage_statistics.md
index 373b1e38dfc..587e1091e77 100644
--- a/doc/development/namespaces_storage_statistics.md
+++ b/doc/development/namespaces_storage_statistics.md
@@ -140,7 +140,7 @@ Even though this approach would make aggregating much easier, it has some major
- We'd have to migrate **all namespaces** by adding and filling a new column. Because of the size of the table, dealing with time/cost would be significant. The background migration would take approximately `153h`, see <https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/29772>.
- Background migration has to be shipped one release before, delaying the functionality by another milestone.
-### Attempt E (final): Update the namespace storage statistics in async way
+### Attempt E (final): Update the namespace storage statistics asynchronously
This approach consists of continuing to use the incremental statistics updates we already have,
but we refresh them through Sidekiq jobs and in different transactions:
@@ -149,7 +149,7 @@ but we refresh them through Sidekiq jobs and in different transactions:
1. Whenever the statistics of a project changes, insert a row into `namespace_aggregation_schedules`
- We don't insert a new row if there's already one related to the root namespace.
- Keeping in mind the length of the transaction that involves updating `project_statistics`(<https://gitlab.com/gitlab-org/gitlab/-/issues/29070>), the insertion should be done in a different transaction and through a Sidekiq Job.
-1. After inserting the row, we schedule another worker to be executed async at two different moments:
+1. After inserting the row, we schedule another worker to be executed asynchronously at two different moments:
- One enqueued for immediate execution and another one scheduled in `1.5h` hours.
- We only schedule the jobs, if we can obtain a `1.5h` lease on Redis on a key based on the root namespace ID.
- If we can't obtain the lease, it indicates there's another aggregation already in progress, or scheduled in no more than `1.5h`.
@@ -161,7 +161,7 @@ but we refresh them through Sidekiq jobs and in different transactions:
This implementation has the following benefits:
-- All the updates are done async, so we're not increasing the length of the transactions for `project_statistics`.
+- All the updates are done asynchronously, so we're not increasing the length of the transactions for `project_statistics`.
- We're doing the update in a single SQL query.
- It is compatible with PostgreSQL and MySQL.
- No background migration required.
diff --git a/doc/development/new_fe_guide/development/components.md b/doc/development/new_fe_guide/development/components.md
index 1d56419028e..ec714c9c26f 100644
--- a/doc/development/new_fe_guide/development/components.md
+++ b/doc/development/new_fe_guide/development/components.md
@@ -19,7 +19,7 @@ D3 is very popular across many projects outside of GitLab:
- [The New York Times](https://archive.nytimes.com/www.nytimes.com/interactive/2012/02/13/us/politics/2013-budget-proposal-graphic.html)
- [plot.ly](https://plotly.com/)
-- [Droptask](https://www.ayoa.com/previously-droptask/)
+- [Ayoa](https://www.ayoa.com/previously-droptask/)
Within GitLab, D3 has been used for the following notable features
diff --git a/doc/development/performance.md b/doc/development/performance.md
index 3b4525dc8ee..f2e3bcf2877 100644
--- a/doc/development/performance.md
+++ b/doc/development/performance.md
@@ -256,7 +256,7 @@ The following configuration options can be configured:
- `STACKPROF_MODE`: See [sampling modes](https://github.com/tmm1/stackprof#sampling).
Defaults to `cpu`.
- `STACKPROF_INTERVAL`: Sampling interval. Unit semantics depend on `STACKPROF_MODE`.
- For `object` mode this is a per-event interval (every `n`th event is sampled)
+ For `object` mode this is a per-event interval (every `nth` event is sampled)
and defaults to `1000`.
For other modes such as `cpu` this is a frequency and defaults to `10000` μs (100hz).
- `STACKPROF_FILE_PREFIX`: File path prefix where profiles are stored. Defaults
@@ -293,7 +293,7 @@ worker processes), selecting the latter.
For Sidekiq, the signal can be sent to the `sidekiq-cluster` process via `pkill
-USR2 bin/sidekiq-cluster`, which forwards the signal to all Sidekiq
-children. Alternatively, you can also select a specific pid of interest.
+children. Alternatively, you can also select a specific PID of interest.
Production profiles can be especially noisy. It can be helpful to visualize them
as a [flame graph](https://github.com/brendangregg/FlameGraph). This can be done
@@ -306,7 +306,7 @@ bundle exec stackprof --stackcollapse /tmp/stackprof.55769.c6c3906452.profile |
## RSpec profiling
The GitLab development environment also includes the
-[rspec_profiling](https://github.com/foraker/rspec_profiling) gem, which is used
+[`rspec_profiling`](https://github.com/foraker/rspec_profiling) gem, which is used
to collect data on spec execution times. This is useful for analyzing the
performance of the test suite itself, or seeing how the performance of a spec
may have changed over time.
@@ -409,7 +409,7 @@ Fragmented Ruby heap snapshot could look like this:
![Ruby heap fragmentation](img/memory_ruby_heap_fragmentation.png)
-Memory fragmentation could be reduced by tuning GC parameters as described in [this post by Nate Berkopec](https://www.speedshop.co/2017/12/04/malloc-doubles-ruby-memory.html). This should be considered as a tradeoff, as it may affect overall performance of memory allocation and GC cycles.
+Memory fragmentation could be reduced by tuning GC parameters [as described in this post](https://www.speedshop.co/2017/12/04/malloc-doubles-ruby-memory.html). This should be considered as a tradeoff, as it may affect overall performance of memory allocation and GC cycles.
## Importance of Changes
diff --git a/doc/development/pipelines.md b/doc/development/pipelines.md
index 4d931899da6..ca5bf1671f4 100644
--- a/doc/development/pipelines.md
+++ b/doc/development/pipelines.md
@@ -426,7 +426,7 @@ We are using a custom mapping between source file to test files, maintained in t
### PostgreSQL versions testing
-Even though [Omnibus defaults to PG12 for new installs and upgrades](https://docs.gitlab.com/omnibus/package-information/postgresql_versions.md),
+Even though [Omnibus defaults to PG12 for new installs and upgrades](https://docs.gitlab.com/omnibus/package-information/postgresql_versions.html),
our test suite is currently running against PG11, since GitLab.com still runs on PG11.
We do run our test suite against PG12 on nightly scheduled pipelines as well as upon specific
@@ -704,13 +704,13 @@ and included in `rules` definitions via [YAML anchors](../ci/yaml/README.md#anch
| `if-not-canonical-namespace` | Matches if the project isn't in the canonical (`gitlab-org/`) or security (`gitlab-org/security`) namespace. | Use to create a job for forks (by using `when: on_success|manual`), or **not** create a job for forks (by using `when: never`). |
| `if-not-ee` | Matches if the project isn't EE (i.e. project name isn't `gitlab` or `gitlab-ee`). | Use to create a job only in the FOSS project (by using `when: on_success|manual`), or **not** create a job if the project is EE (by using `when: never`). |
| `if-not-foss` | Matches if the project isn't FOSS (i.e. project name isn't `gitlab-foss`, `gitlab-ce`, or `gitlabhq`). | Use to create a job only in the EE project (by using `when: on_success|manual`), or **not** create a job if the project is FOSS (by using `when: never`). |
-| `if-default-refs` | Matches if the pipeline is for `master`, `/^[\d-]+-stable(-ee)?$/` (stable branches), `/^\d+-\d+-auto-deploy-\d+$/` (auto-deploy branches), `/^security\//` (security branches), merge requests, and tags. | Note that jobs aren't created for branches with this default configuration. |
-| `if-master-refs` | Matches if the current branch is `master`. | |
-| `if-master-push` | Matches if the current branch is `master` and pipeline source is `push`. | |
-| `if-master-schedule-2-hourly` | Matches if the current branch is `master` and pipeline runs on a 2-hourly schedule. | |
-| `if-master-schedule-nightly` | Matches if the current branch is `master` and pipeline runs on a nightly schedule. | |
+| `if-default-refs` | Matches if the pipeline is for `master`, `main`, `/^[\d-]+-stable(-ee)?$/` (stable branches), `/^\d+-\d+-auto-deploy-\d+$/` (auto-deploy branches), `/^security\//` (security branches), merge requests, and tags. | Note that jobs aren't created for branches with this default configuration. |
+| `if-master-refs` | Matches if the current branch is `master` or `main`. | |
+| `if-master-push` | Matches if the current branch is `master` or `main` and pipeline source is `push`. | |
+| `if-master-schedule-2-hourly` | Matches if the current branch is `master` or `main` and pipeline runs on a 2-hourly schedule. | |
+| `if-master-schedule-nightly` | Matches if the current branch is `master` or `main` and pipeline runs on a nightly schedule. | |
| `if-auto-deploy-branches` | Matches if the current branch is an auto-deploy one. | |
-| `if-master-or-tag` | Matches if the pipeline is for the `master` branch or for a tag. | |
+| `if-master-or-tag` | Matches if the pipeline is for the `master` or `main` branch or for a tag. | |
| `if-merge-request` | Matches if the pipeline is for a merge request. | |
| `if-merge-request-title-as-if-foss` | Matches if the pipeline is for a merge request and the MR title includes "RUN AS-IF-FOSS". | |
| `if-merge-request-title-update-caches` | Matches if the pipeline is for a merge request and the MR title includes "UPDATE CACHE". | |
@@ -719,7 +719,7 @@ and included in `rules` definitions via [YAML anchors](../ci/yaml/README.md#anch
| `if-security-schedule` | Matches if the pipeline is for a security scheduled pipeline. | |
| `if-nightly-master-schedule` | Matches if the pipeline is for a `master` scheduled pipeline with `$NIGHTLY` set. | |
| `if-dot-com-gitlab-org-schedule` | Limits jobs creation to scheduled pipelines for the `gitlab-org` group on GitLab.com. | |
-| `if-dot-com-gitlab-org-master` | Limits jobs creation to the `master` branch for the `gitlab-org` group on GitLab.com. | |
+| `if-dot-com-gitlab-org-master` | Limits jobs creation to the `master` or `main` branch for the `gitlab-org` group on GitLab.com. | |
| `if-dot-com-gitlab-org-merge-request` | Limits jobs creation to merge requests for the `gitlab-org` group on GitLab.com. | |
| `if-dot-com-gitlab-org-and-security-tag` | Limits job creation to tags for the `gitlab-org` and `gitlab-org/security` groups on GitLab.com. | |
| `if-dot-com-gitlab-org-and-security-merge-request` | Limit jobs creation to merge requests for the `gitlab-org` and `gitlab-org/security` groups on GitLab.com. | |
diff --git a/doc/development/prometheus.md b/doc/development/prometheus.md
deleted file mode 100644
index 62f30871f54..00000000000
--- a/doc/development/prometheus.md
+++ /dev/null
@@ -1,8 +0,0 @@
----
-redirect_to: '../user/project/integrations/prometheus.md'
----
-
-This document was moved to [another location](../user/project/integrations/prometheus.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/development/query_performance.md b/doc/development/query_performance.md
index 3cb1b10c417..80c4d8c1fd0 100644
--- a/doc/development/query_performance.md
+++ b/doc/development/query_performance.md
@@ -25,7 +25,7 @@ When you are optimizing your SQL queries, there are two dimensions to pay attent
- When analyzing your query's performance, pay attention to if the time you are seeing is on a [cold or warm cache](#cold-and-warm-cache). These guidelines apply for both cache types.
- When working with batched queries, change the range and batch size to see how it effects the query timing and caching.
-- If an existing query is already underperforming, make an effort to improve it. If it is too complex or would stall development, create a follow-up so it can be addressed in a timely manner. You can always ask the database reviewer or maintainer for help and guidance.
+- If an existing query is not performing well, make an effort to improve it. If it is too complex or would stall development, create a follow-up so it can be addressed in a timely manner. You can always ask the database reviewer or maintainer for help and guidance.
## Cold and warm cache
diff --git a/doc/development/redis.md b/doc/development/redis.md
index 9f90c5ee760..c7111db0cdc 100644
--- a/doc/development/redis.md
+++ b/doc/development/redis.md
@@ -120,14 +120,13 @@ This shows commands that have taken a long time and may be a performance
concern.
The
-[fluent-plugin-redis-slowlog](https://gitlab.com/gitlab-org/fluent-plugin-redis-slowlog)
-project is responsible for taking the slowlog entries from Redis and
-passing to fluentd (and ultimately Elasticsearch).
+[`fluent-plugin-redis-slowlog`](https://gitlab.com/gitlab-org/fluent-plugin-redis-slowlog)
+project is responsible for taking the `slowlog` entries from Redis and
+passing to Fluentd (and ultimately Elasticsearch).
## Analyzing the entire keyspace
-The [Redis Keyspace
-Analyzer](https://gitlab.com/gitlab-com/gl-infra/redis-keyspace-analyzer)
+The [Redis Keyspace Analyzer](https://gitlab.com/gitlab-com/gl-infra/redis-keyspace-analyzer)
project contains tools for dumping the full key list and memory usage of a Redis
instance, and then analyzing those lists while eliminating potentially sensitive
data from the results. It can be used to find the most frequent key patterns, or
diff --git a/doc/development/secure_coding_guidelines.md b/doc/development/secure_coding_guidelines.md
index 41a7defbc26..e9c95a14236 100644
--- a/doc/development/secure_coding_guidelines.md
+++ b/doc/development/secure_coding_guidelines.md
@@ -195,7 +195,7 @@ Go's [`regexp`](https://golang.org/pkg/regexp/) package uses `re2` and isn't vul
- [Rubular](https://rubular.com/) is a nice online tool to fiddle with Ruby Regexps.
- [Runaway Regular Expressions](https://www.regular-expressions.info/catastrophic.html)
- [The impact of regular expression denial of service (ReDoS) in practice: an empirical study at the ecosystem scale](https://people.cs.vt.edu/~davisjam/downloads/publications/DavisCoghlanServantLee-EcosystemREDOS-ESECFSE18.pdf). This research paper discusses approaches to automatically detect ReDoS vulnerabilities.
-- [Freezing the web: A study of redos vulnerabilities in JavaScript-based web servers](https://www.usenix.org/system/files/conference/usenixsecurity18/sec18-staicu.pdf). Another research paper about detecting ReDoS vulnerabilities.
+- [Freezing the web: A study of ReDoS vulnerabilities in JavaScript-based web servers](https://www.usenix.org/system/files/conference/usenixsecurity18/sec18-staicu.pdf). Another research paper about detecting ReDoS vulnerabilities.
## Server Side Request Forgery (SSRF)
diff --git a/doc/development/sidekiq_style_guide.md b/doc/development/sidekiq_style_guide.md
index ce00934b35c..cff199c8b1d 100644
--- a/doc/development/sidekiq_style_guide.md
+++ b/doc/development/sidekiq_style_guide.md
@@ -588,7 +588,7 @@ the `.with_route` scope defined on all `Routable`s.
### Cron workers
-The context is automatically cleared for workers in the Cronjob queue
+The context is automatically cleared for workers in the cronjob queue
(`include CronjobQueue`), even when scheduling them from
requests. We do this to avoid incorrect metadata when other jobs are
scheduled from the cron worker.
diff --git a/doc/development/snowplow.md b/doc/development/snowplow.md
index a56e85ba50d..c9b76014c74 100644
--- a/doc/development/snowplow.md
+++ b/doc/development/snowplow.md
@@ -358,6 +358,7 @@ There are several tools for developing and testing Snowplow Event
1. For frontend events, in the MR description section, add a screenshot of the event's relevant section using the [Snowplow Analytics Debugger](https://chrome.google.com/webstore/detail/snowplow-analytics-debugg/jbnlcgeengmijcghameodeaenefieedm) Chrome browser extension.
1. For backend events, please use Snowplow Micro and add the output of the Snowplow Micro good events `GET http://localhost:9090/micro/good`.
+1. Include a member of the Product Intelligence team as a reviewer of your MR. Mention `@gitlab-org/growth/product_intelligence/engineers` in your MR to request a review.
### Snowplow Analytics Debugger Chrome Extension
@@ -484,9 +485,9 @@ For GitLab.com, we're setting up a [QA and Testing environment](https://gitlab.c
### `gitlab_standard`
-We are currently working towards including the [`gitlab_standard` schema](https://gitlab.com/gitlab-org/iglu/-/blob/master/public/schemas/com.gitlab/gitlab_standard/jsonschema/) with every event. See [Standardize Snowplow Schema](https://gitlab.com/groups/gitlab-org/-/epics/5218) for details.
+We are including the [`gitlab_standard` schema](https://gitlab.com/gitlab-org/iglu/-/blob/master/public/schemas/com.gitlab/gitlab_standard/jsonschema/) with every event. See [Standardize Snowplow Schema](https://gitlab.com/groups/gitlab-org/-/epics/5218) for details.
-The [`StandardContext`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/tracking/standard_context.rb) class represents this schema in the application.
+The [`StandardContext`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/tracking/standard_context.rb) class represents this schema in the application.
| Field Name | Required | Type | Description |
|----------------|---------------------|-----------------------|---------------------------------------------------------------------------------------------|
diff --git a/doc/development/sql.md b/doc/development/sql.md
index f68ca44efa8..8726c1331e8 100644
--- a/doc/development/sql.md
+++ b/doc/development/sql.md
@@ -12,13 +12,13 @@ either using ActiveRecord/Arel or raw SQL queries.
## Using LIKE Statements
The most common way to search for data is using the `LIKE` statement. For
-example, to get all issues with a title starting with "WIP:" you'd write the
+example, to get all issues with a title starting with "Draft:" you'd write the
following query:
```sql
SELECT *
FROM issues
-WHERE title LIKE 'WIP:%';
+WHERE title LIKE 'Draft:%';
```
On PostgreSQL the `LIKE` statement is case-sensitive. To perform a case-insensitive
@@ -28,13 +28,13 @@ To handle this automatically you should use `LIKE` queries using Arel instead
of raw SQL fragments, as Arel automatically uses `ILIKE` on PostgreSQL.
```ruby
-Issue.where('title LIKE ?', 'WIP:%')
+Issue.where('title LIKE ?', 'Draft:%')
```
You'd write this instead:
```ruby
-Issue.where(Issue.arel_table[:title].matches('WIP:%'))
+Issue.where(Issue.arel_table[:title].matches('Draft:%'))
```
Here `matches` generates the correct `LIKE` / `ILIKE` statement depending on the
@@ -45,7 +45,7 @@ If you need to chain multiple `OR` conditions you can also do this using Arel:
```ruby
table = Issue.arel_table
-Issue.where(table[:title].matches('WIP:%').or(table[:foo].matches('WIP:%')))
+Issue.where(table[:title].matches('Draft:%').or(table[:foo].matches('Draft:%')))
```
On PostgreSQL, this produces:
@@ -53,7 +53,7 @@ On PostgreSQL, this produces:
```sql
SELECT *
FROM issues
-WHERE (title ILIKE 'WIP:%' OR foo ILIKE 'WIP:%')
+WHERE (title ILIKE 'Draft:%' OR foo ILIKE 'Draft:%')
```
## LIKE & Indexes
@@ -64,7 +64,7 @@ the start. For example, this will not use any indexes:
```sql
SELECT *
FROM issues
-WHERE title ILIKE '%WIP:%';
+WHERE title ILIKE '%Draft:%';
```
Because the value for `ILIKE` starts with a wildcard the database is not able to
diff --git a/doc/development/testing_guide/best_practices.md b/doc/development/testing_guide/best_practices.md
index 79ff46ae352..b2f15c22429 100644
--- a/doc/development/testing_guide/best_practices.md
+++ b/doc/development/testing_guide/best_practices.md
@@ -168,7 +168,7 @@ can be used:
```ruby
RSpec.describe API::Search, factory_default: :keep do
- let_it_be(:namespace) { create_default(:namespace) }
+ let_it_be(:namespace) { create_default(:namespace).freeze }
```
Then every project we create uses this `namespace`, without us having to pass
@@ -176,13 +176,17 @@ it as `namespace: namespace`. In order to make it work along with `let_it_be`, `
must be explicitly specified. That keeps the default factory for every example in a suite instead of
recreating it for each example.
+Objects created inside a `factory_default: :keep`, and using
+`create_default` inside a `let_it_be` should be frozen to prevent accidental reliance
+between test examples.
+
Maybe we don't need to create 208 different projects - we
can create one and reuse it. In addition, we can see that only about 1/3 of the
projects we create are ones we ask for (76/208). There is benefit in setting
a default value for projects as well:
```ruby
- let_it_be(:project) { create_default(:project) }
+ let_it_be(:project) { create_default(:project).freeze }
```
In this case, the `total time` and `top-level time` numbers match more closely:
@@ -796,10 +800,11 @@ end
```
WARNING:
-Only use simple values as input in the `where` block. Using procs, stateful
+Only use simple values as input in the `where` block. Using
+<!-- vale gitlab.Spelling = NO --> procs, stateful
objects, FactoryBot-created objects, and similar items can lead to
[unexpected results](https://github.com/tomykaira/rspec-parameterized/issues/8).
-
+<!-- vale gitlab.Spelling = YES -->
### Prometheus tests
Prometheus metrics may be preserved from one test run to another. To ensure that metrics are
diff --git a/doc/development/testing_guide/frontend_testing.md b/doc/development/testing_guide/frontend_testing.md
index 73fce3a38d7..65c4275d0fd 100644
--- a/doc/development/testing_guide/frontend_testing.md
+++ b/doc/development/testing_guide/frontend_testing.md
@@ -193,7 +193,7 @@ When it comes to querying DOM elements in your tests, it is best to uniquely and
the element.
Preferentially, this is done by targeting what the user actually sees using [DOM Testing Library](https://testing-library.com/docs/dom-testing-library/intro/).
-When selecting by text it is best to use [`getByRole` or `findByRole`](https://testing-library.com/docs/dom-testing-library/api-queries/#byrole)
+When selecting by text it is best to use [`getByRole` or `findByRole`](https://testing-library.com/docs/queries/byrole)
as these enforce accessibility best practices as well. The examples below demonstrate the order of preference.
When writing Vue component unit tests, it can be wise to query children by component, so that the unit test can focus on comprehensive value coverage
@@ -687,7 +687,7 @@ Similarly, if you really need to use the real `Date` class, then you can import
```javascript
import { useRealDate } from 'helpers/fake_date';
-// NOTE: `useRealDate` cannot be called during test execution (i.e. inside `it`, `beforeEach`, `beforeAll`, etc.).
+// NOTE: `useRealDate` cannot be called during test execution (i.e. inside `it`, `beforeEach`, `beforeAll`, etc.).
describe('with real date', () => {
useRealDate();
});
@@ -1034,7 +1034,7 @@ describe "Admin::AbuseReports", :js do
end
```
-### Jest test timeout due to async imports
+### Jest test timeout due to asynchronous imports
If a module asynchronously imports some other modules at runtime, these modules must be
transpiled by the Jest loaders at runtime. It's possible that this can cause [Jest to timeout](https://gitlab.com/gitlab-org/gitlab/-/issues/280809).
diff --git a/doc/development/usage_ping.md b/doc/development/usage_ping.md
index 3618d18b1bb..f75db08597e 100644
--- a/doc/development/usage_ping.md
+++ b/doc/development/usage_ping.md
@@ -15,7 +15,7 @@ For more information about Product Intelligence, see:
- [Product Intelligence Guide](https://about.gitlab.com/handbook/product/product-intelligence-guide/)
- [Snowplow Guide](snowplow.md)
-More useful links:
+More links:
- [Product Intelligence Direction](https://about.gitlab.com/direction/product-intelligence/)
- [Data Analysis Process](https://about.gitlab.com/handbook/business-ops/data-team/#data-analysis-process/)
@@ -25,7 +25,7 @@ More useful links:
## What is Usage Ping?
- GitLab sends a weekly payload containing usage data to GitLab Inc. Usage Ping provides high-level data to help our product, support, and sales teams. It does not send any project names, usernames, or any other specific data. The information from the usage ping is not anonymous, it is linked to the hostname of the instance. Sending usage ping is optional, and any instance can disable analytics.
-- The usage data is primarily composed of row counts for different tables in the instance’s database. By comparing these counts month over month (or week over week), we can get a rough sense for how an instance is using the different features within the product. In addition to counts, other facts
+- The usage data is primarily composed of row counts for different tables in the instance’s database. By comparing these counts month over month (or week over week), we can get a rough sense for how an instance is using the different features in the product. In addition to counts, other facts
that help us classify and understand GitLab installations are collected.
- Usage ping is important to GitLab as we use it to calculate our Stage Monthly Active Users (SMAU) which helps us measure the success of our stages and features.
- While usage ping is enabled, GitLab gathers data from the other instances and can show usage statistics of your instance to your users.
@@ -170,7 +170,7 @@ and update existing business analysis artefacts to use `example_metric_without_a
### 3. Metrics deprecation and removal
-The process for deprecating and removing metrics is currently under development. For
+The process for deprecating and removing metrics is under development. For
more information, see the following [issue](https://gitlab.com/gitlab-org/gitlab/-/issues/284637).
## Implementing Usage Ping
@@ -206,10 +206,10 @@ For GitLab.com, there are extremely large tables with 15 second query timeouts,
We have several batch counting methods available:
-- `Ordinary Batch Counters`
-- `Distinct Batch Counters`
-- `Sum Batch Counters`
-- `Estimated Batch Counters`
+- [Ordinary Batch Counters](#ordinary-batch-counters)
+- [Distinct Batch Counters](#distinct-batch-counters)
+- [Sum Batch Counters](#sum-batch-counters)
+- [Estimated Batch Counters](#estimated-batch-counters)
Batch counting requires indexes on columns to calculate max, min, and range queries. In some cases,
you may need to add a specialized index on the columns involved in a counter.
@@ -218,7 +218,7 @@ you may need to add a specialized index on the columns involved in a counter.
Handles `ActiveRecord::StatementInvalid` error
-Simple count of a given ActiveRecord_Relation, does a non-distinct batch count, smartly reduces batch_size and handles errors.
+Simple count of a given `ActiveRecord_Relation`, does a non-distinct batch count, smartly reduces `batch_size`, and handles errors.
Method: `count(relation, column = nil, batch: true, start: nil, finish: nil)`
@@ -242,7 +242,7 @@ count(::Clusters::Cluster.aws_installed.enabled, :cluster_id, start: ::Clusters:
Handles `ActiveRecord::StatementInvalid` error
-Distinct count of a given ActiveRecord_Relation on given column, a distinct batch count, smartly reduces batch_size and handles errors.
+Distinct count of a given `ActiveRecord_Relation` on given column, a distinct batch count, smartly reduces `batch_size`, and handles errors.
Method: `distinct_count(relation, column = nil, batch: true, batch_size: nil, start: nil, finish: nil)`
@@ -324,13 +324,16 @@ The highest encountered error rate is 4.9%.
When correctly used, the `estimate_batch_distinct_count` method enables efficient counting over
columns that contain non-unique values, which can not be assured by other counters.
-Method: [`estimate_batch_distinct_count(relation, column = nil, batch_size: nil, start: nil, finish: nil)`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/utils/usage_data.rb#L63)
+#### estimate_batch_distinct_count method
-The method includes the following arguments:
+Method: `estimate_batch_distinct_count(relation, column = nil, batch_size: nil, start: nil, finish: nil)`
+
+The [method](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/utils/usage_data.rb#L63)
+includes the following arguments:
- `relation`: The ActiveRecord_Relation to perform the count.
- `column`: The column to perform the distinct count. The default is the primary key.
-- `batch_size`: The default is 10,000, from `Gitlab::Database::PostgresHll::BatchDistinctCounter::DEFAULT_BATCH_SIZE`.
+- `batch_size`: From `Gitlab::Database::PostgresHll::BatchDistinctCounter::DEFAULT_BATCH_SIZE`. Default value: 10,000.
- `start`: The custom start of the batch count, to avoid complex minimum calculations.
- `finish`: The custom end of the batch count to avoid complex maximum calculations.
@@ -658,7 +661,7 @@ Events are tracked behind [feature flags](feature_flags/index.md) due to concern
For a full list of events and corresponding feature flags see, [known_events](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/usage_data_counters/known_events/) files.
-To enable or disable tracking for specific event within <https://gitlab.com> or <https://about.staging.gitlab.com>, run commands such as the following to
+To enable or disable tracking for specific event in <https://gitlab.com> or <https://about.staging.gitlab.com>, run commands such as the following to
[enable or disable the corresponding feature](feature_flags/index.md).
```shell
@@ -674,7 +677,7 @@ For each event we add metrics for the weekly and monthly time frames, and totals
- `#{event_name}_weekly`: Data for 7 days for daily [aggregation](#adding-new-events) events and data for the last complete week for weekly [aggregation](#adding-new-events) events.
- `#{event_name}_monthly`: Data for 28 days for daily [aggregation](#adding-new-events) events and data for the last 4 complete weeks for weekly [aggregation](#adding-new-events) events.
-Redis HLL implementation calculates automatic total metrics, if there are more than one metric for the same category, aggregation and Redis slot.
+Redis HLL implementation calculates automatic total metrics, if there are more than one metric for the same category, aggregation, and Redis slot.
- `#{category}_total_unique_counts_weekly`: Total unique counts for events in the same category for the last 7 days or the last complete week, if events are in the same Redis slot and we have more than one metric.
- `#{category}_total_unique_counts_monthly`: Total unique counts for events in same category for the last 28 days or the last 4 complete weeks, if events are in the same Redis slot and we have more than one metric.
@@ -750,7 +753,7 @@ alt_usage_data(999)
### Prometheus Queries
In those cases where operational metrics should be part of Usage Ping, a database or Redis query is unlikely
-to provide useful data. Instead, Prometheus might be more appropriate, since most GitLab architectural
+to provide useful data. Instead, Prometheus might be more appropriate, because most GitLab architectural
components publish metrics to it that can be queried back, aggregated, and included as usage data.
NOTE:
@@ -831,13 +834,15 @@ We also use `#database-lab` and [explain.depesz.com](https://explain.depesz.com/
#### Optimization recommendations and examples
- Use specialized indexes [example 1](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/26871), [example 2](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/26445).
-- Use defined `start` and `finish`, and simple queries, because these values can be memoized and reused, [example](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37155).
+- Use defined `start` and `finish`, and simple queries. These values can be memoized and reused, [example](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37155).
- Avoid joins and write the queries as simply as possible, [example](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36316).
- Set a custom `batch_size` for `distinct_count`, [example](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/38000).
### 5. Add the metric definition
-When adding, changing, or updating metrics, please update the [Event Dictionary's **Usage Ping** table](https://about.gitlab.com/handbook/product/product-intelligence-guide/#event-dictionary).
+[Check Metrics Dictionary Guide](usage_ping/metrics_dictionary.md)
+
+When adding, updating, or removing metrics, please update the [Metrics Dictionary](usage_ping/dictionary.md).
### 6. Add new metric to Versions Application
@@ -864,9 +869,9 @@ On GitLab.com, the Product Intelligence team regularly monitors Usage Ping. They
If the data submitted includes metrics [queried from Prometheus](#prometheus-queries) that you would like to inspect and verify,
then you need to ensure that a Prometheus server is running locally, and that furthermore the respective GitLab components
are exporting metrics to it. If you do not need to test data coming from Prometheus, no further action
-is necessary, since Usage Ping should degrade gracefully in the absence of a running Prometheus server.
+is necessary. Usage Ping should degrade gracefully in the absence of a running Prometheus server.
-There are currently three kinds of components that may export data to Prometheus, and which are included in Usage Ping:
+There are three kinds of components that may export data to Prometheus, and which are included in Usage Ping:
- [`node_exporter`](https://github.com/prometheus/node_exporter) - Exports node metrics from the host machine
- [`gitlab-exporter`](https://gitlab.com/gitlab-org/gitlab-exporter) - Exports process metrics from various GitLab components
@@ -890,20 +895,20 @@ build in a [downstream pipeline of the `omnibus-gitlab-mirror` project](https://
#### Test with GitLab development toolkits
-This is the less recommended approach, since it comes with a number of difficulties when emulating a real GitLab deployment.
+This is the less recommended approach, because it comes with a number of difficulties when emulating a real GitLab deployment.
-The [GDK](https://gitlab.com/gitlab-org/gitlab-development-kit) is not currently set up to run a Prometheus server or `node_exporter` alongside other GitLab components. If you would
+The [GDK](https://gitlab.com/gitlab-org/gitlab-development-kit) is not set up to run a Prometheus server or `node_exporter` alongside other GitLab components. If you would
like to do so, [Monitoring the GDK with Prometheus](https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/master/doc/howto/prometheus/index.md#monitoring-the-gdk-with-prometheus) is a good start.
The [GCK](https://gitlab.com/gitlab-org/gitlab-compose-kit) has limited support for testing Prometheus based Usage Ping.
By default, it already comes with a fully configured Prometheus service that is set up to scrape a number of components,
but with the following limitations:
-- It does not currently run a `gitlab-exporter` instance, so several `process_*` metrics from services such as Gitaly may be missing.
+- It does not run a `gitlab-exporter` instance, so several `process_*` metrics from services such as Gitaly may be missing.
- While it runs a `node_exporter`, `docker-compose` services emulate hosts, meaning that it would normally report itself to not be associated
with any of the other services that are running. That is not how node metrics are reported in a production setup, where `node_exporter`
always runs as a process alongside other GitLab components on any given node. From Usage Ping's perspective none of the node data would therefore
-appear to be associated to any of the services running, since they all appear to be running on different hosts. To alleviate this problem, the `node_exporter` in GCK was arbitrarily "assigned" to the `web` service, meaning only for this service `node_*` metrics appears in Usage Ping.
+appear to be associated to any of the services running, because they all appear to be running on different hosts. To alleviate this problem, the `node_exporter` in GCK was arbitrarily "assigned" to the `web` service, meaning only for this service `node_*` metrics appears in Usage Ping.
## Aggregated metrics
@@ -914,24 +919,33 @@ This feature is intended solely for internal GitLab use.
To add data for aggregated metrics into Usage Ping payload you should add corresponding definition in [`aggregated_metrics`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/usage_data_counters/aggregated_metrics/). Each aggregate definition includes following parts:
-- name: unique name under which aggregate metric is added to Usage Ping payload
-- operator: operator that defines how aggregated metric data is counted. Available operators are:
- - `OR`: removes duplicates and counts all entries that triggered any of listed events
- - `AND`: removes duplicates and counts all elements that were observed triggering all of following events
-- events: list of events names (from [`known_events/`](#known-events-are-added-automatically-in-usage-data-payload)) to aggregate into metric. All events in this list must have the same `redis_slot` and `aggregation` attributes.
-- feature_flag: name of [development feature flag](feature_flags/development.md#development-type) that is checked before
-metrics aggregation is performed. Corresponding feature flag should have `default_enabled` attribute set to `false`.
-`feature_flag` attribute is **OPTIONAL** and can be omitted, when `feature_flag` is missing no feature flag is checked.
+- `name`: Unique name under which the aggregate metric is added to the Usage Ping payload.
+- `operator`: Operator that defines how the aggregated metric data is counted. Available operators are:
+ - `OR`: Removes duplicates and counts all entries that triggered any of listed events.
+ - `AND`: Removes duplicates and counts all elements that were observed triggering all of following events.
+- `source`: Data source used to collect all events data included in aggregated metric. Valid data sources are:
+ - [`database`](#database-sourced-aggregated-metrics)
+ - [`redis`](#redis-sourced-aggregated-metrics)
+- `events`: list of events names to aggregate into metric. All events in this list must
+ relay on the same data source. Additional data source requirements are described in the
+ [Database sourced aggregated metrics](#database-sourced-aggregated-metrics) and
+ [Redis sourced aggregated metrics](#redis-sourced-aggregated-metrics) sections.
+- `feature_flag`: Name of [development feature flag](feature_flags/development.md#development-type)
+ that is checked before metrics aggregation is performed. Corresponding feature flag
+ should have `default_enabled` attribute set to `false`. The `feature_flag` attribute
+ is optional and can be omitted. When `feature_flag` is missing, no feature flag is checked.
Example aggregated metric entries:
```yaml
-- name: product_analytics_test_metrics_union
+- name: product_analytics_test_metrics_union_redis_sourced
operator: OR
events: ['i_search_total', 'i_search_advanced', 'i_search_paid']
-- name: product_analytics_test_metrics_intersection_with_feautre_flag
+ source: redis
+- name: product_analytics_test_metrics_intersection_with_feautre_flag_database_sourced
operator: AND
- events: ['i_search_total', 'i_search_advanced', 'i_search_paid']
+ source: database
+ events: ['dependency_scanning_pipeline_all_time', 'container_scanning_pipeline_all_time']
feature_flag: example_aggregated_metric
```
@@ -956,6 +970,89 @@ Aggregated metrics are added under `aggregated_metrics` key in both `counts_week
}
```
+### Redis sourced aggregated metrics
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/45979) in GitLab 13.6.
+
+To declare the aggregate of events collected with [Redis HLL Counters](#redis-hll-counters),
+you must fulfill the following requirements:
+
+1. All events listed at `events` attribute must come from
+ [`known_events/*.yml`](#known-events-are-added-automatically-in-usage-data-payload) files.
+1. All events listed at `events` attribute must have the same `redis_slot` attribute.
+1. All events listed at `events` attribute must have the same `aggregation` attribute.
+
+### Database sourced aggregated metrics
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/52784) in GitLab 13.9.
+> - It's [deployed behind a feature flag](../user/feature_flags.md), disabled by default.
+> - It's enabled on GitLab.com.
+
+To declare an aggregate of metrics based on events collected from database, follow
+these steps:
+
+1. [Persist the metrics for aggregation](#persist-metrics-for-aggregation).
+1. [Add new aggregated metric definition](#add-new-aggregated-metric-definition).
+
+#### Persist metrics for aggregation
+
+Only metrics calculated with [Estimated Batch Counters](#estimated-batch-counters)
+can be persisted for database sourced aggregated metrics. To persist a metric,
+inject a Ruby block into the
+[estimate_batch_distinct_count](#estimate_batch_distinct_count-method) method.
+This block should invoke the
+`Gitlab::Usage::Metrics::Aggregates::Sources::PostgresHll.save_aggregated_metrics`
+[method](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/usage/metrics/aggregates/sources/postgres_hll.rb#L21),
+which stores `estimate_batch_distinct_count` results for future use in aggregated metrics.
+
+The `Gitlab::Usage::Metrics::Aggregates::Sources::PostgresHll.save_aggregated_metrics`
+method accepts the following arguments:
+
+- `metric_name`: The name of metric to use for aggregations. Should be the same
+ as the key under which the metric is added into Usage Ping.
+- `recorded_at_timestamp`: The timestamp representing the moment when a given
+ Usage Ping payload was collected. You should use the convenience method `recorded_at`
+ to fill `recorded_at_timestamp` argument, like this: `recorded_at_timestamp: recorded_at`
+- `time_period`: The time period used to build the `relation` argument passed into
+ `estimate_batch_distinct_count`. To collect the metric with all available historical
+ data, set a `nil` value as time period: `time_period: nil`.
+- `data`: HyperLogLog buckets structure representing unique entries in `relation`.
+ The `estimate_batch_distinct_count` method always passes the correct argument
+ into the block, so `data` argument must always have a value equal to block argument,
+ like this: `data: result`
+
+Example metrics persistence:
+
+```ruby
+class UsageData
+ def count_secure_pipelines(time_period)
+ ...
+ relation = ::Security::Scan.latest_successful_by_build.by_scan_types(scan_type).where(security_scans: time_period)
+
+ pipelines_with_secure_jobs['dependency_scanning_pipeline'] = estimate_batch_distinct_count(relation, :commit_id, batch_size: 1000, start: start_id, finish: finish_id) do |result|
+ ::Gitlab::Usage::Metrics::Aggregates::Sources::PostgresHll
+ .save_aggregated_metrics(metric_name: 'dependency_scanning_pipeline', recorded_at_timestamp: recorded_at, time_period: time_period, data: result)
+ end
+ end
+end
+```
+
+#### Add new aggregated metric definition
+
+After all metrics are persisted, you can add an aggregated metric definition at
+[`aggregated_metrics/`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/usage_data_counters/aggregated_metrics/). When adding definitions for metrics names listed in the
+`events:` attribute, use the same names you passed in the `metric_name` argument
+while persisting metrics in previous step.
+
+Example definition:
+
+```yaml
+- name: product_analytics_test_metrics_intersection_database_sourced
+ operator: AND
+ source: database
+ events: ['dependency_scanning_pipeline', 'container_scanning_pipeline']
+```
+
## Example Usage Ping payload
The following is example content of the Usage Ping payload.
diff --git a/doc/development/usage_ping/dictionary.md b/doc/development/usage_ping/dictionary.md
index ca3e0f1aae6..035b1832104 100644
--- a/doc/development/usage_ping/dictionary.md
+++ b/doc/development/usage_ping/dictionary.md
@@ -39,7 +39,7 @@ This is named the instance_user_count in the Versions application.
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -48,6 +48,481 @@ This is named the instance_user_count in the Versions application.
| `tier` | free, premium, ultimate |
| `skip_validation` | true |
+## `analytics_unique_visits.analytics_unique_visits_for_any_target`
+
+Visits to any of the pages listed above per week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.analytics_unique_visits_for_any_target`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.analytics_unique_visits_for_any_target_monthly`
+
+Visits to any of the pages listed above per month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.analytics_unique_visits_for_any_target_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_contribution`
+
+Visits to /groups/:group/-/contribution_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_contribution`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_insights`
+
+Visits to /groups/:group/-/insights
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_insights`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_issues`
+
+Visits to /groups/:group/-/issues_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_issues`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_merge_request`
+
+Visits to /groups/:group/-/analytics/merge_request_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_productivity`
+
+Visits to /groups/:group/-/analytics/productivity_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_productivity`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.g_analytics_valuestream`
+
+Visits to /groups/:group/-/analytics/value_stream_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.g_analytics_valuestream`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.i_analytics_cohorts`
+
+Visits to /-/instance_statistics/cohorts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.i_analytics_cohorts`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.i_analytics_dev_ops_score`
+
+Visits to /-/instance_statistics/dev_ops_score
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.i_analytics_dev_ops_score`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.i_analytics_instance_statistics`
+
+Visit to /admin/instance_statistics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.i_analytics_instance_statistics`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_code_reviews`
+
+Visits to /:group/:project/-/analytics/code_reviews
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_code_reviews`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_insights`
+
+Visits to /:group/:project/insights
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_insights`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_issues`
+
+Visits to /:group/:project/-/analytics/issues_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_issues`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_merge_request`
+
+Visits to /:group/:project/-/analytics/merge_request_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_pipelines`
+
+Visits to /:group/:project/pipelines/charts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_pipelines`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_repo`
+
+Visits to /:group/:project/-/graphs/master/charts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_repo`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `analytics_unique_visits.p_analytics_valuestream`
+
+Visits to /:group/:project/-/value_stream_analytics
+
+| field | value |
+| --- | --- |
+| `key_path` | **`analytics_unique_visits.p_analytics_valuestream`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.a_compliance_audit_events_api`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.a_compliance_audit_events_api`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.compliance_unique_visits_for_any_target`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.compliance_unique_visits_for_any_target`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.compliance_unique_visits_for_any_target_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.compliance_unique_visits_for_any_target_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.g_compliance_audit_events`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.g_compliance_audit_events`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.g_compliance_dashboard`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.g_compliance_dashboard`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.i_compliance_audit_events`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.i_compliance_audit_events`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `compliance_unique_visits.i_compliance_credential_inventory`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`compliance_unique_visits.i_compliance_credential_inventory`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `container_registry_enabled`
Whether container registry is enabled
@@ -58,15 +533,869 @@ Whether container registry is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `container_registry_server.vendor`
+
+Identifies if a user is using an external container registry and what type
+
+| field | value |
+| --- | --- |
+| `key_path` | **`container_registry_server.vendor`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `container_registry_server.version`
+
+Identifies the version of the external registry being used
+
+| field | value |
+| --- | --- |
+| `key_path` | **`container_registry_server.version`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.alert_bot_incident_issues`
+
+Count of issues created by the alert bot automatically
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.alert_bot_incident_issues`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.all_searches`
+
+Total Searches for All Basic Search and Advanced Search in self-managed and SaaS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.all_searches`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Redis |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `counts.api_fuzzing_dnd_jobs`
+
+Count of API Fuzzing `docker-in-docker` jobs run by job name
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.api_fuzzing_dnd_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.api_fuzzing_jobs`
+
+Count of API Fuzzing jobs run by job name
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.api_fuzzing_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.assignee_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.assignee_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
| `tier` | |
| `skip_validation` | true |
+## `counts.auto_devops_disabled`
+
+Projects with Auto DevOps template disabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.auto_devops_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `auto_devops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.auto_devops_enabled`
+
+Projects with Auto DevOps template enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.auto_devops_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `auto_devops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.boards`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.boards`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_builds`
+
+Unique builds in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_builds`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_external_pipelines`
+
+Total pipelines in external repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_external_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_internal_pipelines`
+
+Total pipelines in GitLab repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_internal_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_pipeline_config_auto_devops`
+
+Total pipelines from an Auto DevOps template
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_pipeline_config_auto_devops`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_pipeline_config_repository`
+
+Total Pipelines from templates in repository
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_pipeline_config_repository`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_pipeline_schedules`
+
+Pipeline schedules in GitLab
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_pipeline_schedules`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_runners`
+
+Total configured Runners in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_runners`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.ci_triggers`
+
+Total configured Triggers in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ci_triggers`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.clusters`
+
+Total GitLab Managed clusters both enabled and disabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_cert_managers`
+
+Total GitLab Managed clusters with GitLab Managed App:Cert Manager installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_cert_managers`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_cilium`
+
+Total GitLab Managed clusters with GitLab Managed App:Cilium installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_cilium`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_crossplane`
+
+Total GitLab Managed clusters with GitLab Managed App:Crossplane installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_crossplane`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_elastic_stack`
+
+Total GitLab Managed clusters with GitLab Managed App:Elastic Stack installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_elastic_stack`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_helm`
+
+Total GitLab Managed clusters with GitLab Managed App:Helm enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_helm`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_ingress`
+
+Total GitLab Managed clusters with GitLab Managed App:Ingress installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_ingress`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_jupyter`
+
+Total GitLab Managed clusters with GitLab Managed App:Jupyter installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_jupyter`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_knative`
+
+Total GitLab Managed clusters with GitLab Managed App:Knative installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_knative`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_prometheus`
+
+Total GitLab Managed clusters with GitLab Managed App:Prometheus installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_prometheus`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_applications_runner`
+
+Total GitLab Managed clusters with GitLab Managed App:Runner installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_applications_runner`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_disabled`
+
+Total GitLab Managed disabled clusters
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_enabled`
+
+Total GitLab Managed clusters currently enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_management_project`
+
+Total GitLab Managed clusters with defined cluster management project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_management_project`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_platforms_eks`
+
+Total GitLab Managed clusters provisioned with GitLab on AWS EKS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_platforms_eks`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_platforms_gke`
+
+Total GitLab Managed clusters provisioned with GitLab on GCE GKE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_platforms_gke`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.clusters_platforms_user`
+
+Total GitLab Managed clusters that are user provisioned
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.clusters_platforms_user`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.commit_comment`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.commit_comment`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.confidential_epics`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.confidential_epics`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::portfolio management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.container_scanning_jobs`
+
+Count of Container Scanning jobs run
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.container_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.coverage_fuzzing_jobs`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.coverage_fuzzing_jobs`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.cycle_analytics_views`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.cycle_analytics_views`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.dast_jobs`
+
+Count of DAST jobs run
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.dast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::dynamic analysis` |
+| `product_category` | `dynamic_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.dast_on_demand_pipelines`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.dast_on_demand_pipelines`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.dependency_list_usages_total`
+
+Count to Dependency List page views
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.dependency_list_usages_total`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.dependency_scanning_jobs`
+
+Count of Dependency Scanning jobs run
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.dependency_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.deploy_keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.deploy_keys`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `counts.deployments`
Total deployments count
@@ -86,6 +1415,196 @@ Total deployments count
| `distribution` | ee, ce |
| `tier` | free, premium, ultimate |
+## `counts.design_management_designs_create`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.design_management_designs_create`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `design_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.design_management_designs_delete`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.design_management_designs_delete`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `design_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.design_management_designs_update`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.design_management_designs_update`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `design_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.environments`
+
+Total available and stopped environments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.environments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.epic_issues`
+
+Count of issues that are assigned to an epic
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.epic_issues`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::portfolio management` |
+| `product_category` | `epics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.epics`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.epics`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::portfolio management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.epics_deepest_relationship_level`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.epics_deepest_relationship_level`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::portfolio management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.failed_deployments`
+
+Total failed deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.failed_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.feature_flags`
+
+Number of feature flag toggles
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.feature_flags`** |
+| `product_section` | ops |
+| `product_stage` | release |
+| `product_group` | `group::progressive delivery` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.geo_event_log_max_id`
+
+Number of replication events on a Geo primary
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.geo_event_log_max_id`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::geo` |
+| `product_category` | `disaster_recovery` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
## `counts.geo_nodes`
Total number of sites in a Geo deployment
@@ -96,8 +1615,8 @@ Total number of sites in a Geo deployment
| `product_section` | enablement |
| `product_stage` | enablement |
| `product_group` | `group::geo` |
-| `product_category` | disaster_recovery |
-| `value_type` | integer |
+| `product_category` | `disaster_recovery` |
+| `value_type` | number |
| `status` | data_available |
| `milestone` | 11.2 |
| `time_frame` | all |
@@ -105,6 +1624,2894 @@ Total number of sites in a Geo deployment
| `distribution` | ee |
| `tier` | premium, ultimate |
+## `counts.grafana_integrated_projects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.grafana_integrated_projects`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.group_clusters_disabled`
+
+Total GitLab Managed disabled clusters previously attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.group_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.group_clusters_enabled`
+
+Total GitLab Managed clusters attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.group_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups`
+
+Total count of groups as of usage ping snapshot
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | `subgroups` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_asana_active`
+
+Count of groups with active integrations for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_assembla_active`
+
+Count of groups with active integrations for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_bamboo_active`
+
+Count of groups with active integrations for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_bugzilla_active`
+
+Count of groups with active integrations for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_buildkite_active`
+
+Count of groups with active integrations for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_campfire_active`
+
+Count of groups with active integrations for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_confluence_active`
+
+Count of groups with active integrations for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_custom_issue_tracker_active`
+
+Count of groups with active integrations for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_discord_active`
+
+Count of groups with active integrations for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_drone_ci_active`
+
+Count of groups with active integrations for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_emails_on_push_active`
+
+Count of groups with active integrations for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_external_wiki_active`
+
+Count of groups with active integrations for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_flowdock_active`
+
+Count of groups with active integrations for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_github_active`
+
+Count of groups with active integrations for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_hangouts_chat_active`
+
+Count of groups with active integrations for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_hipchat_active`
+
+Count of groups with active integrations for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_asana_active`
+
+Count of active groups inheriting integrations for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_assembla_active`
+
+Count of active groups inheriting integrations for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_bamboo_active`
+
+Count of active groups inheriting integrations for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_bugzilla_active`
+
+Count of active groups inheriting integrations for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_buildkite_active`
+
+Count of active groups inheriting integrations for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_campfire_active`
+
+Count of active groups inheriting integrations for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_confluence_active`
+
+Count of active groups inheriting integrations for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_custom_issue_tracker_active`
+
+Count of active groups inheriting integrations for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_discord_active`
+
+Count of active groups inheriting integrations for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_drone_ci_active`
+
+Count of active groups inheriting integrations for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_emails_on_push_active`
+
+Count of active groups inheriting integrations for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_external_wiki_active`
+
+Count of active groups inheriting integrations for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_flowdock_active`
+
+Count of active groups inheriting integrations for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_github_active`
+
+Count of active groups inheriting integrations for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_hangouts_chat_active`
+
+Count of active groups inheriting integrations for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_hipchat_active`
+
+Count of active groups inheriting integrations for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_irker_active`
+
+Count of active groups inheriting integrations for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_jenkins_active`
+
+Count of active groups inheriting integrations for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_jira_active`
+
+Count of active groups inheriting integrations for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_mattermost_active`
+
+Count of active groups inheriting integrations for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_mattermost_slash_commands_active`
+
+Count of active groups inheriting integrations for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_microsoft_teams_active`
+
+Count of active groups inheriting integrations for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_packagist_active`
+
+Count of active groups inheriting integrations for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_pipelines_email_active`
+
+Count of active groups inheriting integrations for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_pivotaltracker_active`
+
+Count of active groups inheriting integrations for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_prometheus_active`
+
+Count of active groups inheriting integrations for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_pushover_active`
+
+Count of active groups inheriting integrations for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_redmine_active`
+
+Count of active groups inheriting integrations for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_slack_active`
+
+Count of active groups inheriting integrations for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_slack_slash_commands_active`
+
+Count of active groups inheriting integrations for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_teamcity_active`
+
+Count of active groups inheriting integrations for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_unify_circuit_active`
+
+Count of active groups inheriting integrations for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_webex_teams_active`
+
+Count of active groups inheriting integrations for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_inheriting_youtrack_active`
+
+Count of active groups inheriting integrations for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_inheriting_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_irker_active`
+
+Count of groups with active integrations for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_jenkins_active`
+
+Count of groups with active integrations for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_jira_active`
+
+Count of groups with active integrations for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_mattermost_active`
+
+Count of groups with active integrations for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_mattermost_slash_commands_active`
+
+Count of groups with active integrations for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_microsoft_teams_active`
+
+Count of groups with active integrations for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.groups_packagist_active`
+
+Count of groups with active integrations for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_pipelines_email_active`
+
+Count of groups with active integrations for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_pivotaltracker_active`
+
+Count of groups with active integrations for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_prometheus_active`
+
+Count of groups with active integrations for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_pushover_active`
+
+Count of groups with active integrations for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_redmine_active`
+
+Count of groups with active integrations for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_slack_active`
+
+Count of groups with active integrations for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_slack_slash_commands_active`
+
+Count of groups with active integrations for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_teamcity_active`
+
+Count of groups with active integrations for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_unify_circuit_active`
+
+Count of groups with active integrations for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_webex_teams_active`
+
+Count of groups with active integrations for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.groups_youtrack_active`
+
+Count of groups with active integrations for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.groups_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.in_review_folder`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.in_review_folder`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.incident_issues`
+
+Count of incidents (issues where issue_type=incident)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.incident_issues`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.incident_labeled_issues`
+
+Count of all issues with the label=incident
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.incident_labeled_issues`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_blocking`
+
+Whether or not ModSecurity is set to blocking mode
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_blocking`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_disabled`
+
+Whether or not ModSecurity is disabled within Ingress
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_disabled`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_logging`
+
+Whether or not ModSecurity is set to logging mode
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_logging`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_not_installed`
+
+Whether or not ModSecurity has not been installed into the cluster
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_not_installed`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_packets_anomalous`
+
+Cumulative count of packets identified as anomalous by ModSecurity since Usage Ping was last reported
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_packets_anomalous`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_packets_processed`
+
+Cumulative count of packets processed by ModSecurity since Usage Ping was last reported
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_packets_processed`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ingress_modsecurity_statistics_unavailable`
+
+Whether or not ModSecurity statistics are unavailable
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ingress_modsecurity_statistics_unavailable`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.instance_clusters_disabled`
+
+Total GitLab Managed disabled clusters previously attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instance_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instance_clusters_enabled`
+
+Total GitLab Managed clusters attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instance_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_asana_active`
+
+Count of active instance-level integrations for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_assembla_active`
+
+Count of active instance-level integrations for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_bamboo_active`
+
+Count of active instance-level integrations for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_bugzilla_active`
+
+Count of active instance-level integrations for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_buildkite_active`
+
+Count of active instance-level integrations for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_campfire_active`
+
+Count of active instance-level integrations for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_confluence_active`
+
+Count of active instance-level integrations for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_custom_issue_tracker_active`
+
+Count of active instance-level integrations for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.instances_discord_active`
+
+Count of active instance-level integrations for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_drone_ci_active`
+
+Count of active instance-level integrations for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_emails_on_push_active`
+
+Count of active instance-level integrations for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.instances_external_wiki_active`
+
+Count of active instance-level integrations for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_flowdock_active`
+
+Count of active instance-level integrations for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_github_active`
+
+Count of active instance-level integrations for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_hangouts_chat_active`
+
+Count of active instance-level integrations for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_hipchat_active`
+
+Count of active instance-level integrations for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_irker_active`
+
+Count of active instance-level integrations for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_jenkins_active`
+
+Count of active instance-level integrations for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_jira_active`
+
+Count of active instance-level integrations for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_mattermost_active`
+
+Count of active instance-level integrations for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_mattermost_slash_commands_active`
+
+Count of active instance-level integrations for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_microsoft_teams_active`
+
+Count of active instance-level integrations for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.instances_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.instances_packagist_active`
+
+Count of active instance-level integrations for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_pipelines_email_active`
+
+Count of active instance-level integrations for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_pivotaltracker_active`
+
+Count of active instance-level integrations for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_prometheus_active`
+
+Count of active instance-level integrations for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_pushover_active`
+
+Count of active instance-level integrations for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_redmine_active`
+
+Count of active instance-level integrations for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_slack_active`
+
+Count of active instance-level integrations for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_slack_slash_commands_active`
+
+Count of active instance-level integrations for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_teamcity_active`
+
+Count of active instance-level integrations for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_unify_circuit_active`
+
+Count of active instance-level integrations for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_webex_teams_active`
+
+Count of active instance-level integrations for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.instances_youtrack_active`
+
+Count of active instance-level integrations for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.instances_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues`
+
+Count of Issues created
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_created_from_alerts`
+
+Count of issues created automatically on alerts from GitLab-Managed Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_created_from_alerts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_created_from_gitlab_error_tracking_ui`
+
+Count of issues manually created from the GitLab UI on Sentry errors
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_created_from_gitlab_error_tracking_ui`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `error_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.issues_created_gitlab_alerts`
+
+Count of all issues created from GitLab alerts (bot and non-bot)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_created_gitlab_alerts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_created_manually_from_alerts`
+
+Count of issues created manually by non-bot users from GitLab alerts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_created_manually_from_alerts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_using_zoom_quick_actions`
+
+Count of issues where a user have added AND removed a zoom meeting using slash commands
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_using_zoom_quick_actions`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_with_associated_zoom_link`
+
+Count of issues where a user has linked a Zoom meeting
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_with_associated_zoom_link`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_with_embedded_grafana_charts_approx`
+
+Count of issues where a user has embedded a Grafana chart
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_with_embedded_grafana_charts_approx`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.issues_with_health_status`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.issues_with_health_status`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::portfolio management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.jira_imports_projects_count`
+
+Count of Projects that imported Issues from Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.jira_imports_projects_count`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `jira_importer` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.jira_imports_total_imported_count`
+
+Count of Issues imported from Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.jira_imports_total_imported_count`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `jira_importer` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.jira_imports_total_imported_issues_count`
+
+Count of Jira imports run
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.jira_imports_total_imported_issues_count`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `jira_importer` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.keys`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | `authentication_and_authorization` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.kubernetes_agent_gitops_sync`
+
+Count of GitOps Sync events
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.kubernetes_agent_gitops_sync`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.kubernetes_agents`
+
+Count of Kubernetes agents
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.kubernetes_agents`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.kubernetes_agents_with_token`
+
+Count of Kubernetes agents with at least one token
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.kubernetes_agents_with_token`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.label_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.label_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.labels`
+
+Count of Labels
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.labels`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ldap_group_links`
+
+Number of groups that are synced via LDAP group sync `https://docs.gitlab.com/ee/user/group/index.html#manage-group-memberships-via-ldap-starter-only`
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ldap_group_links`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::access` |
+| `product_category` | `authentication_and_authorization` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ldap_keys`
+
+Number of keys synced as part of LDAP `https://docs.gitlab.com/ee/administration/auth/ldap/#ldap-sync-configuration-settings-starter-only`
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ldap_keys`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::access` |
+| `product_category` | `authentication_and_authorization` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.ldap_users`
+
+Number of users that are linked to LDAP
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.ldap_users`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::access` |
+| `product_category` | `authentication_and_authorization` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.lfs_objects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.lfs_objects`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `counts.license_management_jobs`
Name on the GitLab license
@@ -115,15 +4522,5163 @@ Name on the GitLab license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | number |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | Database |
-| `distribution` | |
+| `distribution` | ce |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.licenses_list_views`
+
+Count to License List page views
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.licenses_list_views`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `license_compliance` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.merge_request_comment`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.merge_request_comment`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.merge_request_create`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.merge_request_create`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.merge_requests`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.merge_requests`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.merged_merge_requests_using_approval_rules`
+
+Count of merge requests merged using approval rules
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.merged_merge_requests_using_approval_rules`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::compliance` |
+| `product_category` | `compliance_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.milestone_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.milestone_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.milestones`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.milestones`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.navbar_searches`
+
+Total Searches using the navbar for All Basic Search and Advanced Search in self-managed and SaaS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.navbar_searches`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Redis |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `counts.network_policy_drops`
+
+Cumulative count of packets dropped by Cilium (Container Network Security) since Usage Ping was last reported
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.network_policy_drops`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_network_security` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.network_policy_forwards`
+
+Cumulative count of packets forwarded by Cilium (Container Network Security) since Usage Ping was last reported
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.network_policy_forwards`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_network_security` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.notes`
+
+Count of Notes across all objects that use them
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.notes`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.operations_dashboard_default_dashboard`
+
+Active users with enabled operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.operations_dashboard_default_dashboard`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.operations_dashboard_users_with_projects_added`
+
+Active users with projects on operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.operations_dashboard_users_with_projects_added`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_composer_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_composer_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_composer_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_composer_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_composer_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_composer_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_conan_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_conan_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_conan_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_conan_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_conan_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_conan_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_container_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_container_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_container_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_container_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_container_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_container_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_debian_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_debian_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_debian_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_debian_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_debian_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_debian_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_delete_package_by_deploy_token`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_delete_package_by_deploy_token`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_delete_package_by_guest`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_delete_package_by_guest`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_delete_package_by_user`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_delete_package_by_user`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_generic_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_generic_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_generic_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_generic_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_generic_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_generic_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_golang_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_golang_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_golang_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_golang_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_golang_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_golang_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_maven_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_maven_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_maven_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_maven_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_maven_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_maven_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_npm_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_npm_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_npm_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_npm_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_npm_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_npm_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_nuget_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_nuget_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_nuget_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_nuget_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_nuget_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_nuget_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pull_package_by_deploy_token`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pull_package_by_deploy_token`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pull_package_by_guest`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pull_package_by_guest`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pull_package_by_user`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pull_package_by_user`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_push_package_by_deploy_token`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_push_package_by_deploy_token`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_push_package_by_guest`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_push_package_by_guest`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_push_package_by_user`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_push_package_by_user`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pypi_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pypi_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pypi_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pypi_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_pypi_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_pypi_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_tag_delete_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_tag_delete_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_tag_pull_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_tag_pull_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.package_events_i_package_tag_push_package`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.package_events_i_package_tag_push_package`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.packages`
+
+Number of packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.packages`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.pages_domains`
+
+Total GitLab Pages domains
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.pages_domains`** |
+| `product_section` | ops |
+| `product_stage` | release |
+| `product_group` | `group::release management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.personal_snippets`
+
+Count of Personal Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.personal_snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.pod_logs_usages_total`
+
+Count the total number of log views
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.pod_logs_usages_total`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::apm` |
+| `product_category` | `logging` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.pool_repositories`
+
+Count of unique object pool repositories for fork deduplication
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.pool_repositories`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::gitaly` |
+| `product_category` | `gitaly` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.productivity_analytics_views`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.productivity_analytics_views`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.project_clusters_disabled`
+
+Total GitLab Managed disabled clusters previously attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.project_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.project_clusters_enabled`
+
+Total GitLab Managed clusters attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.project_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.project_snippets`
+
+Count of Project Snippetss
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.project_snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects`
+
+Count of Projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `projects` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_asana_active`
+
+Count of projects with active integrations for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_assembla_active`
+
+Count of projects with active integrations for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_bamboo_active`
+
+Count of projects with active integrations for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_bugzilla_active`
+
+Count of projects with active integrations for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_buildkite_active`
+
+Count of projects with active integrations for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_campfire_active`
+
+Count of projects with active integrations for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_confluence_active`
+
+Count of projects with active integrations for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_creating_incidents`
+
+Counts of Projects that have created incidents
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_creating_incidents`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_custom_issue_tracker_active`
+
+Count of projects with active integrations for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_discord_active`
+
+Count of projects with active integrations for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_drone_ci_active`
+
+Count of projects with active integrations for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_emails_on_push_active`
+
+Count of projects with active integrations for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_external_wiki_active`
+
+Count of projects with active integrations for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_flowdock_active`
+
+Count of projects with active integrations for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_github_active`
+
+Count of projects with active integrations for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_hangouts_chat_active`
+
+Count of projects with active integrations for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_hipchat_active`
+
+Count of projects with active integrations for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_imported_from_github`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_imported_from_github`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_asana_active`
+
+Count of active projects inheriting integrations for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_assembla_active`
+
+Count of active projects inheriting integrations for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_bamboo_active`
+
+Count of active projects inheriting integrations for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_bugzilla_active`
+
+Count of active projects inheriting integrations for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_buildkite_active`
+
+Count of active projects inheriting integrations for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_campfire_active`
+
+Count of active projects inheriting integrations for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_confluence_active`
+
+Count of active projects inheriting integrations for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_custom_issue_tracker_active`
+
+Count of active projects inheriting integrations for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_discord_active`
+
+Count of active projects inheriting integrations for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_drone_ci_active`
+
+Count of active projects inheriting integrations for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_emails_on_push_active`
+
+Count of active projects inheriting integrations for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_external_wiki_active`
+
+Count of active projects inheriting integrations for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_flowdock_active`
+
+Count of active projects inheriting integrations for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_github_active`
+
+Count of active projects inheriting integrations for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_hangouts_chat_active`
+
+Count of active projects inheriting integrations for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_hipchat_active`
+
+Count of active projects inheriting integrations for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_irker_active`
+
+Count of active projects inheriting integrations for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_jenkins_active`
+
+Count of active projects inheriting integrations for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_jira_active`
+
+Count of active projects inheriting integrations for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_mattermost_active`
+
+Count of active projects inheriting integrations for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_mattermost_slash_commands_active`
+
+Count of active projects inheriting integrations for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_microsoft_teams_active`
+
+Count of active projects inheriting integrations for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_packagist_active`
+
+Count of active projects inheriting integrations for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_pipelines_email_active`
+
+Count of active projects inheriting integrations for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_pivotaltracker_active`
+
+Count of active projects inheriting integrations for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_prometheus_active`
+
+Count of active projects inheriting integrations for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_pushover_active`
+
+Count of active projects inheriting integrations for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_redmine_active`
+
+Count of active projects inheriting integrations for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_slack_active`
+
+Count of active projects inheriting integrations for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_slack_slash_commands_active`
+
+Count of active projects inheriting integrations for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_teamcity_active`
+
+Count of active projects inheriting integrations for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_unify_circuit_active`
+
+Count of active projects inheriting integrations for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_webex_teams_active`
+
+Count of active projects inheriting integrations for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_inheriting_youtrack_active`
+
+Count of active projects inheriting integrations for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_inheriting_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_irker_active`
+
+Count of projects with active integrations for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jenkins_active`
+
+Count of projects with active integrations for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_active`
+
+Count of projects with active integrations for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_cloud_active`
+
+Count of active integrations with Jira Cloud (Saas)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_cloud_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_dvcs_cloud_active`
+
+Count of active integrations with Jira Cloud (DVCS Connector)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_dvcs_cloud_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_dvcs_server_active`
+
+Count of active integrations with Jira Software (DVCS connector)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_dvcs_server_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_issuelist_active`
+
+Total Jira Issue feature enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_issuelist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_jira_server_active`
+
+Count of active integrations with Jira Software (server)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_jira_server_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_mattermost_active`
+
+Count of projects with active integrations for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_mattermost_slash_commands_active`
+
+Count of projects with active integrations for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_microsoft_teams_active`
+
+Count of projects with active integrations for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_mirrored_with_pipelines_enabled`
+
+Projects with repository mirroring enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_mirrored_with_pipelines_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_packagist_active`
+
+Count of projects with active integrations for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_pipelines_email_active`
+
+Count of projects with active integrations for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_pivotaltracker_active`
+
+Count of projects with active integrations for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_prometheus_active`
+
+Count of projects with active integrations for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_pushover_active`
+
+Count of projects with active integrations for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_redmine_active`
+
+Count of projects with active integrations for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_reporting_ci_cd_back_to_github`
+
+Projects with a GitHub service pipeline enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_reporting_ci_cd_back_to_github`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::verify` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
| `tier` | premium, ultimate |
| `skip_validation` | true |
+## `counts.projects_slack_active`
+
+Count of projects with active integrations for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_slack_slash_commands_active`
+
+Count of projects with active integrations for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_teamcity_active`
+
+Count of projects with active integrations for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_unify_circuit_active`
+
+Count of projects with active integrations for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_webex_teams_active`
+
+Count of projects with active integrations for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_with_alerts_created`
+
+Count of projects with alerts created in given time period
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_alerts_created`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `alert_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_alerts_service_enabled`
+
+Count of projects that have enabled the Alerts service
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_alerts_service_enabled`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_with_enabled_alert_integrations`
+
+Count of projects with at least 1 enabled integration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_enabled_alert_integrations`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_error_tracking_enabled`
+
+Count of projects that have enabled Error tracking via Sentry
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_error_tracking_enabled`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `error_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_disabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_disabled`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_cadence_set_to_14d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_cadence_set_to_14d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_cadence_set_to_1d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_cadence_set_to_1d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_cadence_set_to_1month`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_cadence_set_to_1month`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_cadence_set_to_3month`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_cadence_set_to_3month`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_cadence_set_to_7d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_cadence_set_to_7d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_1`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_1`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_10`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_10`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_100`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_100`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_25`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_25`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_5`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_5`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_50`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_set_to_50`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_keep_n_unset`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_keep_n_unset`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_older_than_set_to_14d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_older_than_set_to_14d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_older_than_set_to_30d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_older_than_set_to_30d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_older_than_set_to_7d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_older_than_set_to_7d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_older_than_set_to_90d`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_older_than_set_to_90d`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_expiration_policy_enabled_with_older_than_unset`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_expiration_policy_enabled_with_older_than_unset`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_packages`
+
+Projects with package registry configured
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_packages`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_prometheus_alerts`
+
+Projects with Prometheus alerting enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_prometheus_alerts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::apm` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_repositories_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_repositories_enabled`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_terraform_reports`
+
+Count of projects with Terraform MR reports
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_terraform_reports`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `infrastructure_as_code` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_terraform_states`
+
+Count of projects with GitLab Managed Terraform State
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_terraform_states`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `infrastructure_as_code` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_with_tracing_enabled`
+
+Projects with tracing enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_with_tracing_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `tracing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.projects_youtrack_active`
+
+Count of projects with active integrations for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.projects_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.protected_branches`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.protected_branches`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.protected_branches_except_default`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.protected_branches_except_default`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.releases`
+
+Unique release tags
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.releases`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.remote_mirrors`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.remote_mirrors`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.requirement_test_reports_ci`
+
+Count of requirement test reports created from CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.requirement_test_reports_ci`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `requirements_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.requirement_test_reports_manual`
+
+Count of requirement test reports created manually
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.requirement_test_reports_manual`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `requirements_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.requirements_created`
+
+Count of requirements created
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.requirements_created`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `requirements_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.requirements_with_test_report`
+
+Count of requirements having a test report
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.requirements_with_test_report`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `requirements_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.sast_jobs`
+
+Count of SAST CI jobs for the month. Job names ending in '-sast'
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.sast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `static_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.secret_detection_jobs`
+
+Count of 'secret-detection' CI jobs fro the month.
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.secret_detection_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `secret_detection` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.service_desk_enabled_projects`
+
+Count of service desk enabled projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.service_desk_enabled_projects`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `service_desk` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.service_desk_issues`
+
+Count of service desk issues
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.service_desk_issues`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::certify` |
+| `product_category` | `service_desk` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.snippet_comment`
+
+Count of comments on Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.snippet_comment`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.snippet_create`
+
+Count of newly created Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.snippet_create`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.snippet_update`
+
+Count of updates to existing Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.snippet_update`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.snippets`
+
+Count of all Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.source_code_pushes`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.source_code_pushes`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.static_site_editor_commits`
+
+Count of commits created via Static Site Editor
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.static_site_editor_commits`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `static_site_editor` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.static_site_editor_merge_requests`
+
+Count of merge requests created via Static Site Editor
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.static_site_editor_merge_requests`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `static_site_editor` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.static_site_editor_views`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.static_site_editor_views`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `static_site_editor` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.status_page_incident_publishes`
+
+Cumulative count of usages of publish operation
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.status_page_incident_publishes`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.status_page_incident_unpublishes`
+
+Cumulative count of usages of unpublish operation
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.status_page_incident_unpublishes`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.status_page_issues`
+
+Issues published to a Status Page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.status_page_issues`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.status_page_projects`
+
+Projects with status page enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.status_page_projects`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.successful_deployments`
+
+Total successful deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.successful_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.suggestions`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.suggestions`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.template_repositories`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.template_repositories`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.templates_asana_active`
+
+Count of active service templates for Asana
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_asana_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_assembla_active`
+
+Count of active service templates for Assembla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_assembla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_bamboo_active`
+
+Count of active service templates for Bamboo CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_bamboo_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_bugzilla_active`
+
+Count of active service templates for Bugzilla
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_bugzilla_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_buildkite_active`
+
+Count of active service templates for Buildkite
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_buildkite_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_campfire_active`
+
+Count of active service templates for Campfire
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_campfire_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_confluence_active`
+
+Count of active service templates for Confluence
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_confluence_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_custom_issue_tracker_active`
+
+Count of active service templates for a Custom Issue Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_custom_issue_tracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_datadog_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_datadog_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.templates_discord_active`
+
+Count of active service templates for Discord
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_discord_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_drone_ci_active`
+
+Count of active service templates for Drone CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_drone_ci_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_emails_on_push_active`
+
+Count of active service templates for Emails on Push
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_emails_on_push_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_ewm_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_ewm_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.templates_external_wiki_active`
+
+Count of active service templates for External Wiki
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_external_wiki_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_flowdock_active`
+
+Count of active service templates for Flowdock
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_flowdock_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_github_active`
+
+Count of active service templates for GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_github_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_hangouts_chat_active`
+
+Count of active service templates for Hangouts Chat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_hangouts_chat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_hipchat_active`
+
+Count of active service templates for HipChat
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_hipchat_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_irker_active`
+
+Count of active service templates for Irker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_irker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_jenkins_active`
+
+Count of active service templates for Jenkins
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_jenkins_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_jira_active`
+
+Count of active service templates for Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_mattermost_active`
+
+Count of active service templates for Mattermost
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_mattermost_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_mattermost_slash_commands_active`
+
+Count of active service templates for Mattermost (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_mattermost_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_microsoft_teams_active`
+
+Count of active service templates for Microsoft Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_microsoft_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_mock_ci_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_mock_ci_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.templates_mock_monitoring_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_mock_monitoring_active`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.templates_packagist_active`
+
+Count of active service templates for Packagist
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_packagist_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_pipelines_email_active`
+
+Count of active service templates for Pipeline Emails
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_pipelines_email_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_pivotaltracker_active`
+
+Count of active service templates for Pivotal Tracker
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_pivotaltracker_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_prometheus_active`
+
+Count of active service templates for Prometheus
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_prometheus_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_pushover_active`
+
+Count of active service templates for Pushover
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_pushover_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_redmine_active`
+
+Count of active service templates for Redmine
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_redmine_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_slack_active`
+
+Count of active service templates for Slack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_slack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_slack_slash_commands_active`
+
+Count of active service templates for Slack (slash commands)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_slack_slash_commands_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_teamcity_active`
+
+Count of active service templates for Teamcity CI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_teamcity_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_unify_circuit_active`
+
+Count of active service templates for Unifiy Circuit
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_unify_circuit_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_webex_teams_active`
+
+Count of active service templates for Webex Teams
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_webex_teams_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.templates_youtrack_active`
+
+Count of active service templates for YouTrack
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.templates_youtrack_active`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | `integrations` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.terraform_reports`
+
+Count of Terraform MR reports generated
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.terraform_reports`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `infrastructure_as_code` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.terraform_states`
+
+Count of GitLab Managed Terraform States used
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.terraform_states`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `infrastructure_as_code` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.todos`
+
+Count of ToDos
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.todos`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.uploads`
+
+Count of Uploads via Notes and Descriptions
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.uploads`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.user_preferences_group_overview_details`
+
+Count of users who set personal preference to see Details on Group overview page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.user_preferences_group_overview_details`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::threat insights` |
+| `product_category` | `vulnerability_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.user_preferences_group_overview_security_dashboard`
+
+Count of users who set personal preference to see Security Dashboard on Group overview page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.user_preferences_group_overview_security_dashboard`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::threat insights` |
+| `product_category` | `vulnerability_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `counts.user_preferences_user_gitpod_enabled`
+
+Count all users with their GitPod setting enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.user_preferences_user_gitpod_enabled`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `editor_extension` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_hooks`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_hooks`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::ecosystem` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.web_ide_commits`
+
+Count of Commits made from Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_commits`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_ide_merge_requests`
+
+Count of Merge Requests created from Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_merge_requests`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_ide_pipelines`
+
+Count of Pipeline tab views in Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_pipelines`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_ide_previews`
+
+Count of Live Preview tab views in Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_previews`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_ide_terminals`
+
+Count of Web Terminal Tab views in Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_terminals`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.web_ide_views`
+
+Count of Views of the Web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.web_ide_views`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts.wiki_pages_create`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.wiki_pages_create`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `wiki` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.wiki_pages_delete`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.wiki_pages_delete`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `wiki` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.wiki_pages_update`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.wiki_pages_update`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `wiki` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts.wiki_pages_view`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts.wiki_pages_view`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.compliance_features_track_unique_visits_union`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.compliance_features_track_unique_visits_union`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.i_testing_paid_monthly_active_user_total`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.i_testing_paid_monthly_active_user_total`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.incident_management_alerts_total_unique_counts`
+
+Count of unique users per month to take an action on an alert
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.incident_management_alerts_total_unique_counts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.incident_management_incidents_total_unique_counts`
+
+Count of unique users per month to take an action on an incident
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.incident_management_incidents_total_unique_counts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.product_analytics_test_metrics_intersection`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.product_analytics_test_metrics_intersection`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.aggregated_metrics.product_analytics_test_metrics_union`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.aggregated_metrics.product_analytics_test_metrics_union`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `counts_monthly.deployments`
Total deployments count for recent 28 days
@@ -144,6 +9699,253 @@ Total deployments count for recent 28 days
| `distribution` | ee, ce |
| `tier` | free, premium, ultimate |
+## `counts_monthly.failed_deployments`
+
+Total failed deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.failed_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.packages`
+
+Monthly count of Packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.packages`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.personal_snippets`
+
+Monthly count of Personal Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.personal_snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts_monthly.project_snippets`
+
+Monthly count of Project Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.project_snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts_monthly.projects_with_alerts_created`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.projects_with_alerts_created`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_monthly.snippets`
+
+Monthly count of All Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `counts_monthly.successful_deployments`
+
+Total successful deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_monthly.successful_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Database |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.compliance_features_track_unique_visits_union`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.compliance_features_track_unique_visits_union`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.i_testing_paid_monthly_active_user_total`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.i_testing_paid_monthly_active_user_total`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.incident_management_alerts_total_unique_counts`
+
+Count of unique users per week to take an action on an alert
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.incident_management_alerts_total_unique_counts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.incident_management_incidents_total_unique_counts`
+
+Count of unique users per week to take an action on an incident
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.incident_management_incidents_total_unique_counts`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.product_analytics_test_metrics_intersection`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.product_analytics_test_metrics_intersection`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `counts_weekly.aggregated_metrics.product_analytics_test_metrics_union`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`counts_weekly.aggregated_metrics.product_analytics_test_metrics_union`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Database |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
## `database.adapter`
This metric only returns a value of PostgreSQL in supported versions of GitLab. It could be removed from the usage ping. Historically MySQL was also supported.
@@ -154,7 +9956,7 @@ This metric only returns a value of PostgreSQL in supported versions of GitLab.
| `product_section` | enablement |
| `product_stage` | enablement |
| `product_group` | `group::enablement distribution` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -162,6 +9964,44 @@ This metric only returns a value of PostgreSQL in supported versions of GitLab.
| `distribution` | ee, ce |
| `tier` | free, premium, ultimate |
+## `database.pg_system_id`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`database.pg_system_id`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `database.version`
+
+The version of the PostgreSQL database.
+
+| field | value |
+| --- | --- |
+| `key_path` | **`database.version`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::distribution` |
+| `product_category` | `collection` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `dependency_proxy_enabled`
Whether dependency proxy is enabled
@@ -172,13 +10012,32 @@ Whether dependency proxy is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `edition`
+
+Edition of GitLab such as EE, CE, Bronze, Silver, Gold
+
+| field | value |
+| --- | --- |
+| `key_path` | **`edition`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::distribution` |
+| `product_category` | `collection` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
| `skip_validation` | true |
## `elasticsearch_enabled`
@@ -191,13 +10050,51 @@ Whether Elasticsearch is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `geo_enabled`
+
+Is Geo enabled?
+
+| field | value |
+| --- | --- |
+| `key_path` | **`geo_enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::geo` |
+| `product_category` | `collection` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `git.version`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`git.version`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitaly.clusters`
@@ -210,13 +10107,32 @@ Total GitLab Managed clusters both enabled and disabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | number |
| `status` | data_available |
| `time_frame` | all |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `gitaly.filesystems`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`gitaly.filesystems`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitaly.servers`
@@ -229,13 +10145,13 @@ Total Gitalty Servers
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | number |
| `status` | data_available |
| `time_frame` | all |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitaly.version`
@@ -248,13 +10164,13 @@ Version of Gitaly
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitlab_pages.enabled`
@@ -267,13 +10183,13 @@ Whether GitLab Pages is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitlab_pages.version`
@@ -286,13 +10202,13 @@ The version number of GitLab Pages
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gitlab_shared_runners_enabled`
@@ -305,13 +10221,32 @@ Whether shared runners is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `gitpod_enabled`
+
+Whether gitpod is enabled in the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`gitpod_enabled`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `integrations` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
| `skip_validation` | true |
## `grafana_link_enabled`
@@ -324,13 +10259,13 @@ Whether Grafana is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `gravatar_enabled`
@@ -343,13 +10278,13 @@ Whether gravatar is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `historical_max_users`
@@ -362,7 +10297,7 @@ The maximum active user count. Active is defined in UsersStatistics model.
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -381,7 +10316,45 @@ Host name of GitLab instance
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `ingress_modsecurity_enabled`
+
+Whether or not ModSecurity is enabled within Ingress
+
+| field | value |
+| --- | --- |
+| `key_path` | **`ingress_modsecurity_enabled`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `web_firewall` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `installation_type`
+
+The installation method used to install GitLab (Omnibus, Helm, etc)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`installation_type`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::distribution` |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -400,13 +10373,13 @@ Whether auto DevOps is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `ldap_enabled`
@@ -419,13 +10392,13 @@ Whether LDAP is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `license_expires_at`
@@ -438,7 +10411,7 @@ The date the license ends
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -457,7 +10430,7 @@ The ID of the license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -476,7 +10449,7 @@ The license key of the GitLab instance
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -495,7 +10468,7 @@ The plan of the GitLab license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -514,7 +10487,7 @@ The date the license starts
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -533,7 +10506,7 @@ Licese zuora_subscription_id
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -552,7 +10525,7 @@ Whether this is a trial license or not
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
@@ -571,13 +10544,13 @@ Date the license ends on
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `license_user_count`
@@ -590,7 +10563,7 @@ The number of users included in the license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -609,7 +10582,7 @@ Company on the GitLab license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -628,7 +10601,7 @@ Email on the GitLab license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -647,7 +10620,7 @@ Name on the GitLab license
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -656,6 +10629,25 @@ Name on the GitLab license
| `tier` | premium, ultimate |
| `skip_validation` | true |
+## `mail.smtp_server`
+
+The value of the SMTP server that is used
+
+| field | value |
+| --- | --- |
+| `key_path` | **`mail.smtp_server`** |
+| `product_section` | growth |
+| `product_stage` | |
+| `product_group` | `group::acquisition` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
## `mattermost_enabled`
Whether Mattermost is enabled
@@ -666,13 +10658,488 @@ Whether Mattermost is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `object_store.artifacts.enabled`
+
+Whether Object Storage is enabled for Artifacts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.artifacts.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.artifacts.object_store.background_upload`
+
+Whether Background Upload for Object Storage is enabled for Artifacts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.artifacts.object_store.background_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.artifacts.object_store.direct_upload`
+
+Whether Direct Upload for Object Storage is enabled for Artifacts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.artifacts.object_store.direct_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.artifacts.object_store.enabled`
+
+Whether Object Storage is enabled for Artifacts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.artifacts.object_store.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.artifacts.object_store.provider`
+
+What Object Storage provider has been configured for Artifacts
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.artifacts.object_store.provider`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.external_diffs.enabled`
+
+Whether Object Storage is enabled for External Diffs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.external_diffs.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.external_diffs.object_store.background_upload`
+
+Whether Background Upload for Object Storage is enabled for External Diffs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.external_diffs.object_store.background_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.external_diffs.object_store.direct_upload`
+
+Whether Direct Upload for Object Storage is enabled for External Diffs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.external_diffs.object_store.direct_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.external_diffs.object_store.enabled`
+
+Whether Object Storage is enabled for External Diffs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.external_diffs.object_store.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.external_diffs.object_store.provider`
+
+What Object Storage provider has been configured for External Diffs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.external_diffs.object_store.provider`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.lfs.enabled`
+
+Whether Object Storage is enabled for LFS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.lfs.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.lfs.object_store.background_upload`
+
+Whether Background Upload for Object Storage is enabled for LFS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.lfs.object_store.background_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.lfs.object_store.direct_upload`
+
+Whether Direct Upload for Object Storage is enabled for LFS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.lfs.object_store.direct_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.lfs.object_store.enabled`
+
+Whether Object Storage is enabled for LFS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.lfs.object_store.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.lfs.object_store.provider`
+
+What Object Storage provider has been configured for LFS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.lfs.object_store.provider`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.packages.enabled`
+
+Whether Object Storage is enabled for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.packages.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.packages.object_store.background_upload`
+
+Whether Background Upload for Object Storage is enabled for Packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.packages.object_store.background_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.packages.object_store.direct_upload`
+
+Whether Direct Upload for Object Storage is enabled for Packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.packages.object_store.direct_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.packages.object_store.enabled`
+
+Whether Object Storage is enabled for Packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.packages.object_store.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.packages.object_store.provider`
+
+What Object Storage provider has been configured for Packages
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.packages.object_store.provider`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.uploads.enabled`
+
+Whether Object Storage is enabled for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.uploads.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.uploads.object_store.background_upload`
+
+Whether Background Upload for Object Storage is enabled for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.uploads.object_store.background_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.uploads.object_store.direct_upload`
+
+Whether Direct Upload for Object Storage is enabled for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.uploads.object_store.direct_upload`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.uploads.object_store.enabled`
+
+Whether Object Storage is enabled for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.uploads.object_store.enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `object_store.uploads.object_store.provider`
+
+What Object Storage provider has been configured for Uploads
+
+| field | value |
+| --- | --- |
+| `key_path` | **`object_store.uploads.object_store.provider`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | `operational_metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
| `skip_validation` | true |
## `omniauth_enabled`
@@ -685,13 +11152,13 @@ Whether OmniAuth is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `prometheus_enabled`
@@ -704,13 +11171,13 @@ Whether the bundled Prometheus is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `prometheus_metrics_enabled`
@@ -723,13 +11190,13 @@ Whether Prometheus Metrics endpoint is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
## `recorded_at`
@@ -742,7 +11209,7 @@ When the Usage Ping computation was started
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `milestone` | 8.1 |
@@ -762,13 +11229,13 @@ When the core features were computed
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
| `distribution` | ce, ee |
-| `tier` | |
+| `tier` | free |
| `skip_validation` | true |
## `recording_ee_finished_at`
@@ -781,7 +11248,7 @@ When the EE-specific features were computed
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `time_frame` | none |
@@ -790,6 +11257,5383 @@ When the EE-specific features were computed
| `tier` | |
| `skip_validation` | true |
+## `redis_hll_counters.analytics.analytics_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.analytics_total_unique_counts_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.analytics_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.analytics_total_unique_counts_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_contribution_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_contribution_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_contribution_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_contribution_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_insights_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_insights_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_insights_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_insights_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_issues_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_issues_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_issues_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_issues_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_merge_request_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_merge_request_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_merge_request_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_merge_request_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_productivity_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_productivity_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_productivity_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_productivity_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_valuestream_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_valuestream_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.g_analytics_valuestream_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.g_analytics_valuestream_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_cohorts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_cohorts_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_cohorts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_cohorts_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_dev_ops_score_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_dev_ops_score_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_dev_ops_score_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_dev_ops_score_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_instance_statistics_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_instance_statistics_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.i_analytics_instance_statistics_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.i_analytics_instance_statistics_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_code_reviews_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_code_reviews_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_code_reviews_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_code_reviews_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_insights_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_insights_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_insights_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_insights_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_issues_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_issues_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_issues_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_issues_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_merge_request_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_merge_request_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_merge_request_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_merge_request_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_pipelines_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_pipelines_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_pipelines_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_pipelines_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_repo_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_repo_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_repo_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_repo_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_valuestream_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_valuestream_monthly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.analytics.p_analytics_valuestream_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.analytics.p_analytics_valuestream_weekly`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::analytics` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_secrets_management.i_ci_secrets_management_vault_build_created_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_secrets_management.i_ci_secrets_management_vault_build_created_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_secrets_management.i_ci_secrets_management_vault_build_created_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_secrets_management.i_ci_secrets_management_vault_build_created_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.ci_templates_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.ci_templates_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.ci_templates_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.ci_templates_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_5_min_production_app_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_5_min_production_app_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_5_min_production_app_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_5_min_production_app_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_build_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_build_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_build_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_build_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_latest_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_latest_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_latest_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_latest_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_deploy_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_auto_devops_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_auto_devops_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_aws_cf_deploy_ec2_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_aws_cf_deploy_ec2_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_aws_cf_deploy_ec2_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_aws_cf_deploy_ec2_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_aws_deploy_ecs_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_aws_deploy_ecs_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_aws_deploy_ecs_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_aws_deploy_ecs_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_build_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_build_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_build_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_build_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_deploy_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_deploy_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_deploy_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_deploy_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_auto_devops_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_security_sast_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_security_sast_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_security_sast_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_security_sast_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_security_secret_detection_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_security_secret_detection_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_implicit_security_secret_detection_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_implicit_security_secret_detection_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_security_sast_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_security_sast_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_security_sast_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_security_sast_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_security_secret_detection_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_security_secret_detection_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_security_secret_detection_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_security_secret_detection_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_terraform_base_latest_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_terraform_base_latest_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ci_templates.p_ci_templates_terraform_base_latest_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ci_templates.p_ci_templates_terraform_base_latest_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.code_review_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.code_review_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.code_review_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.code_review_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_edit_mr_desc_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_edit_mr_desc_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_edit_mr_desc_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_edit_mr_desc_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_edit_mr_title_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_edit_mr_title_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_edit_mr_title_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_edit_mr_title_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_mr_diffs_monthly`
+
+Count of unique merge requests per week|month with diffs viewed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_mr_diffs_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_mr_diffs_weekly`
+
+Count of unique merge requests per week|month with diffs viewed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_mr_diffs_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_mr_single_file_diffs_monthly`
+
+Count of unique merge requests per week|month with diffs viewed file by file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_mr_single_file_diffs_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_mr_single_file_diffs_weekly`
+
+Count of unique merge requests per week|month with diffs viewed file by file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_mr_single_file_diffs_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_add_suggestion_monthly`
+
+Count of unique users per month who added a suggestion
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_add_suggestion_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_add_suggestion_weekly`
+
+Count of unique users per week who added a suggestion
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_add_suggestion_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_apply_suggestion_monthly`
+
+Count of unique users per month who applied a suggestion
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_apply_suggestion_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_apply_suggestion_weekly`
+
+Count of unique users per week who applied a suggestion
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_apply_suggestion_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_added_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_added_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_added_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_added_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_deleted_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_deleted_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_deleted_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_deleted_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_edited_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_edited_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approval_rule_edited_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approval_rule_edited_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approve_mr_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approve_mr_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_approve_mr_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_approve_mr_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_assigned_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_assigned_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_assigned_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_assigned_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_close_mr_monthly`
+
+Count of unique users per week|month who closed a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_close_mr_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_close_mr_weekly`
+
+Count of unique users per week|month who closed a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_close_mr_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_comment_monthly`
+
+Count of unique users per week|month who commented on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_comment_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_comment_weekly`
+
+Count of unique users per week|month who commented on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_comment_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_from_issue_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_from_issue_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_from_issue_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_from_issue_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_monthly`
+
+Count of unique users per week|month who created a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_mr_weekly`
+
+Count of unique users per week|month who created a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_mr_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_multiline_mr_comment_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_multiline_mr_comment_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_multiline_mr_comment_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_multiline_mr_comment_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_review_note_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_review_note_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_create_review_note_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_create_review_note_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_edit_mr_comment_monthly`
+
+Count of unique users per week|month who edited a comment on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_edit_mr_comment_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_edit_mr_comment_weekly`
+
+Count of unique users per week|month who edited a comment on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_edit_mr_comment_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_edit_multiline_mr_comment_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_edit_multiline_mr_comment_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_edit_multiline_mr_comment_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_edit_multiline_mr_comment_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_marked_as_draft_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_marked_as_draft_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_marked_as_draft_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_marked_as_draft_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_merge_mr_monthly`
+
+Count of unique users per week|month who merged a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_merge_mr_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_merge_mr_weekly`
+
+Count of unique users per week|month who merged a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_merge_mr_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_publish_review_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_publish_review_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_publish_review_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_publish_review_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_remove_mr_comment_monthly`
+
+Count of unique users per week|month who removed a comment on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_remove_mr_comment_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_remove_mr_comment_weekly`
+
+Count of unique users per week|month who removed a comment on a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_remove_mr_comment_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_remove_multiline_mr_comment_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_remove_multiline_mr_comment_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_remove_multiline_mr_comment_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_remove_multiline_mr_comment_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_reopen_mr_monthly`
+
+Count of unique users per week|month who reopened a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_reopen_mr_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_reopen_mr_weekly`
+
+Count of unique users per week|month who reopened a MR
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_reopen_mr_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_resolve_thread_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_resolve_thread_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_resolve_thread_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_resolve_thread_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_review_requested_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_review_requested_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_review_requested_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_review_requested_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_single_file_diffs_monthly`
+
+Count of unique users per week|month with diffs viewed file by file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_single_file_diffs_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_single_file_diffs_weekly`
+
+Count of unique users per week|month with diffs viewed file by file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_single_file_diffs_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_toggled_task_item_status_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_toggled_task_item_status_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_toggled_task_item_status_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_toggled_task_item_status_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unapprove_mr_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unapprove_mr_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unapprove_mr_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unapprove_mr_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unmarked_as_draft_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unmarked_as_draft_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unmarked_as_draft_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unmarked_as_draft_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unresolve_thread_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unresolve_thread_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_unresolve_thread_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_unresolve_thread_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_vs_code_api_request_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_vs_code_api_request_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.code_review.i_code_review_user_vs_code_api_request_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.code_review.i_code_review_user_vs_code_api_request_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.a_compliance_audit_events_api_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.a_compliance_audit_events_api_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.a_compliance_audit_events_api_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.a_compliance_audit_events_api_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.compliance_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.compliance_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.compliance_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.compliance_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.g_compliance_audit_events_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.g_compliance_audit_events_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.g_compliance_audit_events_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.g_compliance_audit_events_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.g_compliance_dashboard_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.g_compliance_dashboard_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.g_compliance_dashboard_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.g_compliance_dashboard_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.i_compliance_audit_events_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.i_compliance_audit_events_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.i_compliance_audit_events_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.i_compliance_audit_events_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.i_compliance_credential_inventory_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.i_compliance_credential_inventory_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.compliance.i_compliance_credential_inventory_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.compliance.i_compliance_credential_inventory_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.deploy_token_packages_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.deploy_token_packages_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.deploy_token_packages_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.deploy_token_packages_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_composer_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_composer_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_composer_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_composer_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_conan_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_conan_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_conan_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_conan_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_container_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_container_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_container_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_container_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_debian_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_debian_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_debian_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_debian_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_generic_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_generic_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_generic_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_generic_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_golang_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_golang_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_golang_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_golang_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_maven_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_maven_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_maven_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_maven_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_npm_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_npm_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_npm_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_npm_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_nuget_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_nuget_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_nuget_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_nuget_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_pypi_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_pypi_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_pypi_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_pypi_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_tag_deploy_token_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_tag_deploy_token_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.deploy_token_packages.i_package_tag_deploy_token_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.deploy_token_packages.i_package_tag_deploy_token_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.ecosystem_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.ecosystem_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.ecosystem_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.ecosystem_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_close_issue_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_close_issue_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_close_issue_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_close_issue_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_create_issue_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_create_issue_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_create_issue_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_create_issue_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_cross_reference_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_cross_reference_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_cross_reference_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_cross_reference_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_list_issues_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_list_issues_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ecosystem.i_ecosystem_jira_service_list_issues_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ecosystem.i_ecosystem_jira_service_list_issues_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_sfe_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_sfe_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_sfe_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_sfe_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_snippet_ide_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_snippet_ide_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_snippet_ide_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_snippet_ide_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_sse_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_sse_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_sse_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_sse_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_web_ide_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_web_ide_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.g_edit_by_web_ide_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.g_edit_by_web_ide_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.ide_edit_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.ide_edit_total_unique_counts_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.ide_edit.ide_edit_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.ide_edit.ide_edit_total_unique_counts_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_assigned_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_assigned_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_assigned_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_assigned_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_status_changed_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_status_changed_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_status_changed_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_status_changed_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_todo_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_todo_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_alert_todo_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_alert_todo_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_assigned_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_assigned_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_assigned_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_assigned_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_change_confidential_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_change_confidential_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_change_confidential_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_change_confidential_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_closed_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_closed_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_closed_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_closed_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_comment_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_comment_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_comment_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_comment_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_created_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_created_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_created_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_created_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_published_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_published_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_published_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_published_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_relate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_relate_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_relate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_relate_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_reopened_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_reopened_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_reopened_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_reopened_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_todo_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_todo_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_todo_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_todo_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_unrelate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_unrelate_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_unrelate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_unrelate_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_zoom_meeting_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_zoom_meeting_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_incident_zoom_meeting_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_incident_zoom_meeting_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_total_unique_counts_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management.incident_management_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management.incident_management_total_unique_counts_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management_alerts.incident_management_alert_create_incident_monthly`
+
+Count of unique users per month to create an incident corresponding to an alert
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management_alerts.incident_management_alert_create_incident_monthly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.incident_management_alerts.incident_management_alert_create_incident_weekly`
+
+Count of unique users per week to create an incident corresponding to an alert
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.incident_management_alerts.incident_management_alert_create_incident_weekly`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_added_to_epic_monthly`
+
+Count of MAU adding an issue to an epic
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_added_to_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_added_to_epic_weekly`
+
+Count of WAU adding an issue to an epic
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_added_to_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_assignee_changed_monthly`
+
+Count of MAU changing issue assignees
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_assignee_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_assignee_changed_weekly`
+
+Count of WAU changing issue assignees
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_assignee_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_changed_epic_monthly`
+
+Count of MAU changing the epic on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_changed_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_changed_epic_weekly`
+
+Count of WAU changing the epic on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_changed_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_cloned_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_cloned_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_cloned_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_cloned_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_closed_monthly`
+
+Count of MAU closing an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_closed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_closed_weekly`
+
+Count of WAU closing an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_closed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_added_monthly`
+
+Count of MAU commenting on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_added_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_added_weekly`
+
+Count of WAU commenting on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_added_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_edited_monthly`
+
+Count of MAU editing a comment on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_edited_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_edited_weekly`
+
+Count of WAU editing a comment on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_edited_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_removed_monthly`
+
+Count of MAU deleting a comment from an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_removed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_comment_removed_weekly`
+
+Count of WAU deleting a comment from an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_comment_removed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_created_monthly`
+
+Count of MAU creating new issues
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_created_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_created_weekly`
+
+Count of WAU creating issues
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_created_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_cross_referenced_monthly`
+
+Count of MAU referencing an issue from somewhere else
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_cross_referenced_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_cross_referenced_weekly`
+
+Count of WAU referncing an issue from somewhere else
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_cross_referenced_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_description_changed_monthly`
+
+Count of MAU editing an issue description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_description_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_description_changed_weekly`
+
+Count of WAU editing an issue description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_description_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_added_monthly`
+
+Count of MAU adding a design to an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_added_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_added_weekly`
+
+Count of WAU adding a design to an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_added_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_modified_monthly`
+
+Count of MAU modifying a design on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_modified_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_modified_weekly`
+
+Count of WAU modifying a design on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_modified_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_removed_monthly`
+
+Count of MAU removing a design from an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_removed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_designs_removed_weekly`
+
+Count of WAU removing a design from an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_designs_removed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_due_date_changed_monthly`
+
+Count of MAU changing an issue due date
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_due_date_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_due_date_changed_weekly`
+
+Count of WAU changing an issue due date
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_due_date_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_health_status_changed_monthly`
+
+Count of MAU changing the health status on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_health_status_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_health_status_changed_weekly`
+
+Count of WAU changing the health status on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_health_status_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_iteration_changed_monthly`
+
+Count of MAU changing an issue's iteration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_iteration_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_iteration_changed_weekly`
+
+Count of WAU changing an issue's iteration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_iteration_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_label_changed_monthly`
+
+Count of MAU changing an issue's label
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_label_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_label_changed_weekly`
+
+Count of WAU changing an issue's label
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_label_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_locked_monthly`
+
+Count of MAU locking an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_locked_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_locked_weekly`
+
+Count of WAU locking an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_locked_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_made_confidential_monthly`
+
+Count of MAU making an issue confidential
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_made_confidential_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_made_confidential_weekly`
+
+Count of WAU making an issue confidential
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_made_confidential_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_made_visible_monthly`
+
+Count of MAU making an issue not confidential
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_made_visible_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_made_visible_weekly`
+
+Count of WAU making an issue not confidential
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_made_visible_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_marked_as_duplicate_monthly`
+
+Count of MAU marking an issue as a duplicate
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_marked_as_duplicate_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_marked_as_duplicate_weekly`
+
+Count of WAU marking an issue as a duplicate
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_marked_as_duplicate_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_milestone_changed_monthly`
+
+Count of MAU changing an issue's milestone
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_milestone_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_milestone_changed_weekly`
+
+Count of WAU changing an issue's milestone
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_milestone_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_moved_monthly`
+
+Count of MAU moving an issue to another project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_moved_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_moved_weekly`
+
+Count of WAU moving an issue to another project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_moved_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_related_monthly`
+
+Count of MAU relating an issue to another issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_related_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_related_weekly`
+
+Count of WAU relating an issue to another issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_related_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_removed_from_epic_monthly`
+
+Count of MAU removing an issue from an epic
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_removed_from_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_removed_from_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_removed_from_epic_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_reopened_monthly`
+
+Count of MAU re-opening a closed issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_reopened_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_reopened_weekly`
+
+Count of WAU re-opening a closed issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_reopened_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_time_estimate_changed_monthly`
+
+Count of MAU changing an issue time estimate
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_time_estimate_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_time_estimate_changed_weekly`
+
+Count of WAU changing an issue time estimate
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_time_estimate_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_time_spent_changed_monthly`
+
+Count of MAU recording time spent on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_time_spent_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_time_spent_changed_weekly`
+
+Count of WAU recording time spent on an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_time_spent_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_title_changed_monthly`
+
+Count of MAU editing an issue title
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_title_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
## `redis_hll_counters.issues_edit.g_project_management_issue_title_changed_weekly`
Distinct users count that changed issue title in a group for last recent week
@@ -799,7 +16643,7 @@ Distinct users count that changed issue title in a group for last recent week
| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_title_changed_weekly`** |
| `product_stage` | plan |
| `product_group` | `group::project management` |
-| `product_category` | issue_tracking |
+| `product_category` | `issue_tracking` |
| `value_type` | number |
| `status` | data_available |
| `milestone` | 13.6 |
@@ -809,6 +16653,3952 @@ Distinct users count that changed issue title in a group for last recent week
| `distribution` | ee, ce |
| `tier` | free, premium, ultimate |
+## `redis_hll_counters.issues_edit.g_project_management_issue_unlocked_monthly`
+
+Count of MAU marking an issue as blocked or blocked by
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_unlocked_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_unlocked_weekly`
+
+Count of WAU marking an issue as blocked or blocked by
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_unlocked_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_unrelated_monthly`
+
+Count of MAU unrelating an issue to another issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_unrelated_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_unrelated_weekly`
+
+Count of WAU unrelating an issue to another issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_unrelated_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_weight_changed_monthly`
+
+Count of MAU changing an issue's weight
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_weight_changed_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.g_project_management_issue_weight_changed_weekly`
+
+Count of WAU changing an issue's weight
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.g_project_management_issue_weight_changed_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.issues_edit_total_unique_counts_monthly`
+
+Count of MAU taking an action related to an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.issues_edit_total_unique_counts_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.issues_edit.issues_edit_total_unique_counts_weekly`
+
+Count of WAU taking an action related to an issue
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.issues_edit.issues_edit_total_unique_counts_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | `issue_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.pipeline_authoring.o_pipeline_authoring_unique_users_committing_ciconfigfile_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.pipeline_authoring.o_pipeline_authoring_unique_users_committing_ciconfigfile_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.pipeline_authoring.o_pipeline_authoring_unique_users_committing_ciconfigfile_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.pipeline_authoring.o_pipeline_authoring_unique_users_committing_ciconfigfile_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_approve_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_approve_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_approve_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_approve_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_multiple_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_multiple_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_multiple_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_multiple_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_reviewer_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_reviewer_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_reviewer_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_reviewer_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_self_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_self_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_self_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_self_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_single_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_single_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_assign_single_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_assign_single_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_award_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_award_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_award_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_award_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_board_move_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_board_move_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_board_move_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_board_move_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_child_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_child_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_child_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_child_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_clear_weight_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_clear_weight_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_clear_weight_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_clear_weight_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_clone_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_clone_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_clone_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_clone_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_close_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_close_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_close_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_close_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_confidential_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_confidential_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_confidential_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_confidential_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_copy_metadata_issue_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_copy_metadata_issue_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_copy_metadata_issue_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_copy_metadata_issue_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_copy_metadata_merge_request_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_copy_metadata_merge_request_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_copy_metadata_merge_request_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_copy_metadata_merge_request_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_create_merge_request_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_create_merge_request_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_create_merge_request_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_create_merge_request_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_done_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_done_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_done_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_done_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_draft_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_draft_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_draft_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_draft_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_due_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_due_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_due_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_due_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_duplicate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_duplicate_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_duplicate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_duplicate_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_estimate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_estimate_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_estimate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_estimate_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_iteration_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_iteration_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_iteration_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_iteration_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_label_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_label_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_label_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_label_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_lock_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_lock_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_lock_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_lock_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_merge_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_merge_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_merge_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_merge_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_milestone_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_milestone_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_milestone_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_milestone_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_move_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_move_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_move_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_move_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_parent_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_parent_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_parent_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_parent_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_promote_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_promote_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_promote_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_promote_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_publish_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_publish_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_publish_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_publish_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reassign_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reassign_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reassign_reviewer_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reassign_reviewer_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reassign_reviewer_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reassign_reviewer_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reassign_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reassign_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_rebase_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_rebase_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_rebase_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_rebase_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_relabel_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_relabel_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_relabel_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_relabel_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_relate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_relate_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_relate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_relate_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_child_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_child_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_child_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_child_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_due_date_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_due_date_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_due_date_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_due_date_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_estimate_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_estimate_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_estimate_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_estimate_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_iteration_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_iteration_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_iteration_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_iteration_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_milestone_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_milestone_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_milestone_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_milestone_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_parent_epic_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_parent_epic_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_parent_epic_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_parent_epic_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_time_spent_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_time_spent_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_time_spent_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_time_spent_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_zoom_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_zoom_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_remove_zoom_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_remove_zoom_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reopen_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reopen_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_reopen_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_reopen_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_shrug_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_shrug_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_shrug_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_shrug_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_spend_add_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_spend_add_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_spend_add_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_spend_add_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_spend_subtract_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_spend_subtract_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_spend_subtract_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_spend_subtract_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_submit_review_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_submit_review_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_submit_review_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_submit_review_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_subscribe_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_subscribe_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_subscribe_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_subscribe_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_tableflip_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_tableflip_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_tableflip_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_tableflip_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_tag_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_tag_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_tag_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_tag_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_target_branch_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_target_branch_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_target_branch_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_target_branch_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_title_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_title_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_title_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_title_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_todo_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_todo_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_todo_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_todo_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_all_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_all_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_all_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_all_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_reviewer_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_reviewer_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_reviewer_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_reviewer_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_specific_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_specific_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unassign_specific_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unassign_specific_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlabel_all_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlabel_all_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlabel_all_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlabel_all_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlabel_specific_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlabel_specific_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlabel_specific_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlabel_specific_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlock_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlock_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unlock_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unlock_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unsubscribe_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unsubscribe_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_unsubscribe_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_unsubscribe_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_weight_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_weight_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_weight_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_weight_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_wip_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_wip_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_wip_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_wip_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_zoom_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_zoom_monthly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.i_quickactions_zoom_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.i_quickactions_zoom_weekly`** |
+| `product_section` | dev |
+| `product_stage` | plan |
+| `product_group` | `group::project management` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.quickactions_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.quickactions_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.quickactions.quickactions_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.quickactions.quickactions_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.search.i_search_advanced_monthly`
+
+Calculated unique users to perform Advanced searches by month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_advanced_monthly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+
+## `redis_hll_counters.search.i_search_advanced_weekly`
+
+Calculated unique users to perform Advanced searches by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_advanced_weekly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+
+## `redis_hll_counters.search.i_search_paid_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_paid_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.search.i_search_paid_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_paid_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.search.i_search_total_monthly`
+
+Calculated unique users to perform Basic or Advanced searches by month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_total_monthly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `redis_hll_counters.search.i_search_total_weekly`
+
+Calculated unique users to perform Basic or Advanced searches by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.i_search_total_weekly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee, ce |
+| `tier` | free, premium, ultimate |
+
+## `redis_hll_counters.search.search_total_unique_counts_monthly`
+
+Calculated unique users to perform Basic or Advanced searches by month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.search_total_unique_counts_monthly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `redis_hll_counters.search.search_total_unique_counts_weekly`
+
+Calculated unique users to perform Basic or Advanced searches by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.search.search_total_unique_counts_weekly`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee, ce |
+| `tier` | free, premium, ultimate |
+
+## `redis_hll_counters.snippets.i_snippets_show_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.snippets.i_snippets_show_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.snippets.i_snippets_show_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.snippets.i_snippets_show_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.design_action_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.design_action_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.design_action_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.design_action_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.git_write_action_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.git_write_action_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.git_write_action_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.git_write_action_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.i_source_code_code_intelligence_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.i_source_code_code_intelligence_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.i_source_code_code_intelligence_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.i_source_code_code_intelligence_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.merge_request_action_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.merge_request_action_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.merge_request_action_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.merge_request_action_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.project_action_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.project_action_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.project_action_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.project_action_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.wiki_action_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.wiki_action_monthly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.source_code.wiki_action_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.source_code.wiki_action_weekly`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.terraform.p_terraform_state_api_unique_users_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.terraform.p_terraform_state_api_unique_users_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.terraform.p_terraform_state_api_unique_users_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.terraform.p_terraform_state_api_unique_users_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_full_code_quality_report_total_monthly`
+
+Count of unique users per week|month who visit the full code quality report
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_full_code_quality_report_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_quality` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_full_code_quality_report_total_weekly`
+
+Count of unique users per week|month who visit the full code quality report
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_full_code_quality_report_total_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_quality` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_group_code_coverage_project_click_total_monthly`
+
+Count of unique users per week|month who click on a project link in the group code coverage table
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_group_code_coverage_project_click_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_analytics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_group_code_coverage_project_click_total_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_group_code_coverage_project_click_total_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_group_code_coverage_visit_total_monthly`
+
+Count of unique users per week|month who visited the group code coverage page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_group_code_coverage_visit_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_group_code_coverage_visit_total_weekly`
+
+Count of unique users per week|month who visited the group code coverage page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_group_code_coverage_visit_total_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_load_performance_widget_total_monthly`
+
+Count of unique users per week|month who expanded the load performance report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_load_performance_widget_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `load_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_load_performance_widget_total_weekly`
+
+Count of unique users per week|month who expanded the load performance report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_load_performance_widget_total_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `load_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_metrics_report_artifact_uploaders_monthly`
+
+Internal Tracking to count number of unit tests parsed for planning of future code testing features. Data available [here](https://app.periscopedata.com/app/gitlab/788674/Verify:Testing-Group-Metrics?widget=10454394&udv=0)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_metrics_report_artifact_uploaders_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_metrics_report_artifact_uploaders_weekly`
+
+Internal Tracking to count number of unit tests parsed for planning of future code testing features. Data available [here](https://app.periscopedata.com/app/gitlab/788674/Verify:Testing-Group-Metrics?widget=10454394&udv=0)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_metrics_report_artifact_uploaders_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee, ce |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_metrics_report_widget_total_monthly`
+
+Count of unique users per week|month who expanded the metrics report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_metrics_report_widget_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_metrics_report_widget_total_weekly`
+
+Count of unique users per week|month who expanded the metrics report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_metrics_report_widget_total_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_test_case_parsed_monthly`
+
+Internal Tracking to count number of unit tests parsed for planning of future code testing features. Data available [here](https://app.periscopedata.com/app/gitlab/788674/Verify:Testing-Group-Metrics?widget=10454394&udv=0)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_test_case_parsed_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_test_case_parsed_weekly`
+
+Internal Tracking to count number of unit tests parsed for planning of future code testing features. Data available [here](https://app.periscopedata.com/app/gitlab/788674/Verify:Testing-Group-Metrics?widget=10454394&udv=0)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_test_case_parsed_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `code_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee, ce |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_web_performance_widget_total_monthly`
+
+Count of unique users per week|month who expanded the browser performance report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_web_performance_widget_total_monthly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `web_performance` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.i_testing_web_performance_widget_total_weekly`
+
+Count of unique users per week|month who expanded the browser performance report MR widget
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.i_testing_web_performance_widget_total_weekly`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::testing` |
+| `product_category` | `web_performance` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.testing_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.testing_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.testing.testing_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.testing.testing_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_composer_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_composer_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_composer_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_composer_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_conan_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_conan_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_conan_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_conan_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_container_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_container_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_container_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_container_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_debian_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_debian_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_debian_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_debian_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_generic_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_generic_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_generic_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_generic_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_golang_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_golang_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_golang_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_golang_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_maven_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_maven_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_maven_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_maven_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_npm_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_npm_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_npm_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_npm_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_nuget_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_nuget_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_nuget_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_nuget_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_pypi_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_pypi_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_pypi_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_pypi_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_tag_user_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_tag_user_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.i_package_tag_user_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.i_package_tag_user_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.user_packages_total_unique_counts_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.user_packages_total_unique_counts_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | Redis_hll |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `redis_hll_counters.user_packages.user_packages_total_unique_counts_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`redis_hll_counters.user_packages.user_packages_total_unique_counts_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
## `reply_by_email_enabled`
Whether incoming email is setup
@@ -819,15 +20609,126 @@ Whether incoming email is setup
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `search_unique_visits.i_search_advanced`
+
+Calculated unique users to perform Advanced searches by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`search_unique_visits.i_search_advanced`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Redis_hll |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+
+## `search_unique_visits.i_search_paid`
+
+Calculated unique users to perform a search with a paid license enabled by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`search_unique_visits.i_search_paid`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `search_unique_visits.i_search_total`
+
+Calculated unique users to perform Basic or Advanced searches by week
+
+| field | value |
+| --- | --- |
+| `key_path` | **`search_unique_visits.i_search_total`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::global search` |
+| `product_category` | `global_search` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Redis_hll |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+
+## `search_unique_visits.search_unique_visits_for_any_target_monthly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`search_unique_visits.search_unique_visits_for_any_target_monthly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `search_unique_visits.search_unique_visits_for_any_target_weekly`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`search_unique_visits.search_unique_visits_for_any_target_weekly`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 7d |
+| `data_source` | |
+| `distribution` | ee |
| `tier` | |
| `skip_validation` | true |
+## `settings.ldap_encrypted_secrets_enabled`
+
+Is encrypted LDAP secrets configured?
+
+| field | value |
+| --- | --- |
+| `key_path` | **`settings.ldap_encrypted_secrets_enabled`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::distribution` |
+| `product_category` | `global_search` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
## `signup_enabled`
Whether public signup is enabled
@@ -838,15 +20739,6076 @@ Whether public signup is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `topology.duration_s`
+
+Time it took to collect topology data
+
+| field | value |
+| --- | --- |
+| `key_path` | **`topology.duration_s`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Prometheus |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `topology.failures`
+
+Contains information about failed queries
+
+| field | value |
+| --- | --- |
+| `key_path` | **`topology.failures`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::memory` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | Prometheus |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_applications_cert_managers`
+
+Total GitLab Managed clusters with GitLab Managed App:Cert Manager installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_applications_cert_managers`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_applications_helm`
+
+Total GitLab Managed clusters with GitLab Managed App:Helm enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_applications_helm`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_applications_ingress`
+
+Total GitLab Managed clusters with GitLab Managed App:Ingress installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_applications_ingress`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_applications_knative`
+
+Total GitLab Managed clusters with GitLab Managed App:Knative installed
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_applications_knative`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_disabled`
+
+Total GitLab Managed disabled clusters
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_enabled`
+
+Total GitLab Managed clusters currently enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_management_project`
+
+Total GitLab Managed clusters with defined cluster management project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_management_project`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_platforms_eks`
+
+Total GitLab Managed clusters provisioned with GitLab on AWS EKS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_platforms_eks`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_platforms_gke`
+
+Total GitLab Managed clusters provisioned with GitLab on GCE GKE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_platforms_gke`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.clusters_platforms_user`
+
+Total GitLab Managed clusters that are user provisioned
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.clusters_platforms_user`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.group_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.group_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.group_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.group_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.instance_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.instance_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.instance_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.instance_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.project_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.project_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.project_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.project_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.projects_slack_notifications_active`
+
+Unique projects with Slack webhook enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.projects_slack_notifications_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `chatops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.projects_slack_slash_active`
+
+Unique projects with Slack ‘/’ commands enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.projects_slack_slash_active`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `chatops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.configure.projects_with_prometheus_alerts`
+
+Projects with Prometheus alerting enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.configure.projects_with_prometheus_alerts`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.approval_project_rules`
+
+Number of project approval rules
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.approval_project_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.approval_project_rules_with_exact_required_approvers`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.approval_project_rules_with_exact_required_approvers`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.approval_project_rules_with_less_approvers_than_required`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.approval_project_rules_with_less_approvers_than_required`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.approval_project_rules_with_more_approvers_than_required`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.approval_project_rules_with_more_approvers_than_required`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.approval_project_rules_with_target_branch`
+
+Number of project approval rules with not default target branch
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.approval_project_rules_with_target_branch`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.deploy_keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.deploy_keys`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.keys`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.merge_requests`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.merge_requests`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.merge_requests_with_added_rules`
+
+Merge Requests with added rules
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.merge_requests_with_added_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.merge_requests_with_optional_codeowners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.merge_requests_with_optional_codeowners`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.merge_requests_with_overridden_project_rules`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.merge_requests_with_overridden_project_rules`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.merge_requests_with_required_codeowners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.merge_requests_with_required_codeowners`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_enforcing_code_owner_approval`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_enforcing_code_owner_approval`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_imported_from_github`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_imported_from_github`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_with_disable_overriding_approvers_per_merge_request`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_with_disable_overriding_approvers_per_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_with_repositories_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_with_repositories_enabled`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_with_sectional_code_owner_rules`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_with_sectional_code_owner_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.projects_without_disable_overriding_approvers_per_merge_request`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.projects_without_disable_overriding_approvers_per_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.protected_branches`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.protected_branches`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.remote_mirrors`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.remote_mirrors`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.snippets`
+
+Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.suggestions`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.suggestions`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.total_number_of_locked_files`
+
+The total number of exclusive file locks (through the CLI)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.total_number_of_locked_files`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.total_number_of_path_locks`
+
+The total number of default branch locks done through the GitLab UI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.total_number_of_path_locks`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.users_using_lfs_locks`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.users_using_lfs_locks`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.create.users_using_path_locks`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.create.users_using_path_locks`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.bulk_imports.gitlab`
+
+Distinct count of users that triggered an import using the Group Migration tool
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.bulk_imports.gitlab`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.bulk_imports.gitlab_v1`
+
+Count of imports using GitLab Migration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.bulk_imports.gitlab_v1`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.events`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.events`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.group_imports.gitlab_migration`
+
+Count of groups imported using GitLab Migration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.group_imports.gitlab_migration`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.group_imports.group_import`
+
+Count of group imports using Group Import/Export
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.group_imports.group_import`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.group_saml_enabled`
+
+Has the instance enabled Group SAML SSO `https://docs.gitlab.com/ee/user/group/saml_sso/` on at least 1 group?
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.group_saml_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | premium |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.groups`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.groups`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.groups_imported`
+
+Distinct count of users that imported groups using Group Import
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.groups_imported`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issue_imports.csv`
+
+Count of (attempted) imports from csv files
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issue_imports.csv`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issue_imports.fogbugz`
+
+Count of projects imported from fogbugz
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issue_imports.fogbugz`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issue_imports.jira`
+
+Count of projects imported from Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issue_imports.jira`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issue_imports.phabricator`
+
+Count of projects imported from phabricator
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issue_imports.phabricator`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issues_imported.csv`
+
+Distinct count of users that imported issues into projects using CSV upload
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issues_imported.csv`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issues_imported.fogbugz`
+
+Distinct count of users that imported issues into projects using FogBugz
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issues_imported.fogbugz`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issues_imported.jira`
+
+Distinct count of users that imported issues into projects using Jira
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issues_imported.jira`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.issues_imported.phabricator`
+
+Distinct count of users that imported issues into projects using Phabricator
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.issues_imported.phabricator`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.ldap_admin_sync_enabled`
+
+Has the instance configured LDAP Admin Sync `https://docs.gitlab.com/ee/administration/auth/ldap/#administrator-sync-starter-only`?
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.ldap_admin_sync_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.ldap_group_sync_enabled`
+
+Has the instance configured LDAP Group Sync `https://docs.gitlab.com/ee/administration/auth/ldap/#group-sync-starter-only`?
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.ldap_group_sync_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.ldap_keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.ldap_keys`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.ldap_servers`
+
+Number of LDAP servers configured for the instance `https://docs.gitlab.com/ee/administration/auth/ldap/#multiple-ldap-servers-starter-only`
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.ldap_servers`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.ldap_users`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.ldap_users`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.omniauth_providers`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.omniauth_providers`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.bitbucket`
+
+Count of projects imported from Bitbucket
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.bitbucket`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.bitbucket_server`
+
+Count of projects imported from Bitbucket Server
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.bitbucket_server`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.git`
+
+Count of projects imported by URL
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.git`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.gitea`
+
+Count of projects imported from Gitea
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.gitea`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.github`
+
+Count of projects imported from GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.github`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.gitlab`
+
+Count of projects imported from GitLab.com
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.gitlab`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.gitlab_migration`
+
+Count of projects imported using GitLab Migration
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.gitlab_migration`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.gitlab_project`
+
+Count of projects imported using Project Import/Export
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.gitlab_project`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.project_imports.manifest`
+
+Count of projects imported using manifst file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.project_imports.manifest`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.bitbucket`
+
+Distinct count of users that imported projects from Bitbucket Cloud
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.bitbucket`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.bitbucket_server`
+
+Distinct count of users that imported projects from Bitbucket Server
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.bitbucket_server`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.git`
+
+Distinct count of users that imported projects using Import by URL
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.git`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.gitea`
+
+Distinct count of users that imported projects from Gitea
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.gitea`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.github`
+
+Distinct count of users that imported projects from GitHub
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.github`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.gitlab`
+
+Distinct count of users that imported projects from GitLab.com
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.gitlab`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.gitlab_project`
+
+Distinct count of users that imported projects using Project Import/Export
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.gitlab_project`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.manifest`
+
+Distinct count of users that imported projects using Manifest file
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.manifest`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_imported.total`
+
+Total count of all projects imported with import_source NOT NULL
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_imported.total`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.projects_with_compliance_framework`
+
+Number of projects labeled with a compliance framework label [see](https://gitlab.com/gitlab-org/gitlab/-/issues/118671)
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.projects_with_compliance_framework`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.unique_users_all_imports`
+
+Distinct count of users that triggered any kind of import
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.unique_users_all_imports`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.user_auth_by_provider.google_oauth2`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.user_auth_by_provider.google_oauth2`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.user_auth_by_provider.standard`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.user_auth_by_provider.standard`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.user_auth_by_provider.two-factor`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.user_auth_by_provider.two-factor`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.user_auth_by_provider.two-factor-via-u2f-device`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.user_auth_by_provider.two-factor-via-u2f-device`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.user_auth_by_provider.two-factor-via-webauthn-device`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.user_auth_by_provider.two-factor-via-webauthn-device`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.users_created`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.users_created`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.manage.value_stream_management_customized_group_stages`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.manage.value_stream_management_customized_group_stages`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.clusters`
+
+Total GitLab Managed clusters both enabled and disabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.clusters`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.clusters_applications_prometheus`
+
+Total GitLab Managed clusters with Prometheus enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.clusters_applications_prometheus`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.operations_dashboard_default_dashboard`
+
+Active users with enabled operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.operations_dashboard_default_dashboard`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.operations_dashboard_users_with_projects_added`
+
+Active users with projects on operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.operations_dashboard_users_with_projects_added`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.projects_incident_sla_enabled`
+
+Projects where Incident SLA is enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.projects_incident_sla_enabled`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `error_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.projects_with_alert_incidents`
+
+Count of unique projects with an incident from an alert
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.projects_with_alert_incidents`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.projects_with_error_tracking_enabled`
+
+Projects where error tracking is enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.projects_with_error_tracking_enabled`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `error_tracking` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.projects_with_incidents`
+
+Count of unique projects with an incident
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.projects_with_incidents`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.monitor.projects_with_tracing_enabled`
+
+Projects with tracing enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.monitor.projects_with_tracing_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `tracing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.package.projects_with_packages`
+
+Projects with package registry configured
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.package.projects_with_packages`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.assignee_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.assignee_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.epics`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.epics`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.issues`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.issues`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.label_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.label_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.milestone_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.milestone_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.notes`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.notes`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.projects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.projects`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.projects_jira_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.projects_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.projects_jira_dvcs_cloud_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.projects_jira_dvcs_cloud_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.projects_jira_dvcs_server_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.projects_jira_dvcs_server_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.service_desk_enabled_projects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.service_desk_enabled_projects`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.service_desk_issues`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.service_desk_issues`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.plan.todos`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.plan.todos`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.release.deployments`
+
+Unique users triggering deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.release.deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.release.failed_deployments`
+
+Total failed deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.release.failed_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.release.projects_mirrored_with_pipelines_enabled`
+
+Projects with repository mirroring enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.release.projects_mirrored_with_pipelines_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.release.releases`
+
+Unique users creating release tags
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.release.releases`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.release.successful_deployments`
+
+Total successful deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.release.successful_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.api_fuzzing_scans`
+
+Counts API fuzzing jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.api_fuzzing_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.container_scanning_scans`
+
+Counts container scanning jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.container_scanning_scans`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.coverage_fuzzing_scans`
+
+Counts fuzzing jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.coverage_fuzzing_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.dast_scans`
+
+Counts dast jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.dast_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.dependency_scanning_scans`
+
+Counts dependency scanning jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.dependency_scanning_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.sast_scans`
+
+Counts sast jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.sast_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.secret_detection_scans`
+
+Counts secret detection jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.secret_detection_scans`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_api_fuzzing_dnd_jobs`
+
+Count of API Fuzzing `docker-in-docker` jobs by job name
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_api_fuzzing_dnd_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_api_fuzzing_jobs`
+
+Count of API Fuzzing jobs by job name
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_api_fuzzing_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_container_scanning_jobs`
+
+no idea, Count of Container Scanning jobs run, it implies user but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_container_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_coverage_fuzzing_jobs`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_coverage_fuzzing_jobs`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_dast_jobs`
+
+Count of DAST jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_dast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::dynamic analysis` |
+| `product_category` | `dynamic_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_dependency_scanning_jobs`
+
+no idea, Count of Dependency Scanning jobs run, it implies user but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_dependency_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_license_management_jobs`
+
+no idea, Count of License Scanning jobs run, it implies user but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_license_management_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `license_compliance` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_preferences_group_overview_security_dashboard`
+
+Users who set personal preference to see Details on Group overview page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_preferences_group_overview_security_dashboard`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::threat insights` |
+| `product_category` | `vulnerability_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_sast_jobs`
+
+Count of SAST jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_sast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `static_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_secret_detection_jobs`
+
+Count of Secret Detection Jobs
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_secret_detection_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `secret_detection` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.secure.user_unique_users_all_secure_scanners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.secure.user_unique_users_all_secure_scanners`** |
+| `product_section` | sec |
+| `product_stage` | |
+| `product_group` | `group::secure` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_builds`
+
+Unique builds in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_builds`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_external_pipelines`
+
+Total pipelines in external repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_external_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_internal_pipelines`
+
+Total pipelines in GitLab repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_internal_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_pipeline_config_auto_devops`
+
+Total pipelines from an Auto DevOps template
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_pipeline_config_auto_devops`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_pipeline_config_repository`
+
+Total Pipelines from templates in repository
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_pipeline_config_repository`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_pipeline_schedules`
+
+Pipeline schedules in GitLab
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_pipeline_schedules`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_pipelines`
+
+Distinct Users triggering Total pipelines
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.ci_triggers`
+
+Total configured Triggers in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.ci_triggers`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.clusters_applications_runner`
+
+Total GitLab Managed clusters with Runner enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.clusters_applications_runner`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::runner` |
+| `product_category` | `runner` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage.verify.projects_reporting_ci_cd_back_to_github`
+
+Projects with a GitHub service pipeline enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage.verify.projects_reporting_ci_cd_back_to_github`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | all |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_applications_cert_managers`
+
+Total GitLab Managed clusters with Cert Manager enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_applications_cert_managers`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_applications_helm`
+
+Total GitLab Managed clusters with Helm enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_applications_helm`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_applications_ingress`
+
+Total GitLab Managed clusters with Ingress enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_applications_ingress`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_applications_knative`
+
+Total GitLab Managed clusters with Knative enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_applications_knative`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_disabled`
+
+Total GitLab Managed disabled clusters
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_enabled`
+
+Total GitLab Managed clusters currently enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_management_project`
+
+Total GitLab Managed clusters with defined cluster management project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_management_project`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_platforms_eks`
+
+Total GitLab Managed clusters provisioned with GitLab on AWS EKS
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_platforms_eks`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_platforms_gke`
+
+Total GitLab Managed clusters provisioned with GitLab on GCE GKE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_platforms_gke`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.clusters_platforms_user`
+
+Total GitLab Managed clusters that are user provisioned
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.clusters_platforms_user`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.group_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.group_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.group_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to groups
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.group_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.instance_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.instance_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.instance_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to the instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.instance_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.project_clusters_disabled`
+
+Total GitLab Managed disabled clusters attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.project_clusters_disabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.project_clusters_enabled`
+
+Total GitLab Managed enabled clusters attached to projects
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.project_clusters_enabled`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `kubernetes_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.projects_slack_notifications_active`
+
+Unique projects with Slack webhook enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.projects_slack_notifications_active`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `chatops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.projects_slack_slash_active`
+
+Unique projects with Slack ‘/’ commands enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.projects_slack_slash_active`** |
+| `product_section` | ops |
+| `product_stage` | configure |
+| `product_group` | `group::configure` |
+| `product_category` | `chatops` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.configure.projects_with_prometheus_alerts`
+
+Projects with Prometheus alerting enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.configure.projects_with_prometheus_alerts`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_design_management`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_design_management`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `design_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_git_write`
+
+Aggregated value for wiki, design and project repo actions
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_git_write`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_ide_edit`
+
+Count unique edit actions when users used an IDE, no matter which one
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_ide_edit`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_project_repo`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_project_repo`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_sfe_edit`
+
+Count unique edit actions using the single file editor
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_sfe_edit`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_snippet_editor_edit`
+
+Count unique edit actions using the snippet editor
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_snippet_editor_edit`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_sse_edit`
+
+Count unique edit actions using the static site editor
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_sse_edit`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_web_ide_edit`
+
+Count unique edit actions using the web IDE
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_web_ide_edit`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `web_ide` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.action_monthly_active_users_wiki_repo`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.action_monthly_active_users_wiki_repo`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::knowledge` |
+| `product_category` | `wiki` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.approval_project_rules`
+
+Number of project approval rules
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.approval_project_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.approval_project_rules_with_exact_required_approvers`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.approval_project_rules_with_exact_required_approvers`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.approval_project_rules_with_less_approvers_than_required`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.approval_project_rules_with_less_approvers_than_required`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.approval_project_rules_with_more_approvers_than_required`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.approval_project_rules_with_more_approvers_than_required`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.approval_project_rules_with_target_branch`
+
+Number of project approval rules with not default target branch
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.approval_project_rules_with_target_branch`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.deploy_keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.deploy_keys`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.keys`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests_users`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests_users`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests_with_added_rules`
+
+Merge Requests with added rules
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests_with_added_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests_with_optional_codeowners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests_with_optional_codeowners`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests_with_overridden_project_rules`
+
+Number of merge requests that have local rules that have overwritten a project rule
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests_with_overridden_project_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.merge_requests_with_required_codeowners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.merge_requests_with_required_codeowners`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_enforcing_code_owner_approval`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_enforcing_code_owner_approval`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_imported_from_github`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_imported_from_github`** |
+| `product_section` | dev |
+| `product_stage` | manage |
+| `product_group` | `group::import` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_with_disable_overriding_approvers_per_merge_request`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_with_disable_overriding_approvers_per_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_with_repositories_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_with_repositories_enabled`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_with_sectional_code_owner_rules`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_with_sectional_code_owner_rules`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.projects_without_disable_overriding_approvers_per_merge_request`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.projects_without_disable_overriding_approvers_per_merge_request`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.protected_branches`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.protected_branches`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.remote_mirrors`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.remote_mirrors`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.snippets`
+
+Monthly Snippets
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.snippets`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::editor` |
+| `product_category` | `snippets` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.suggestions`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.suggestions`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::code review` |
+| `product_category` | `code_review` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.total_number_of_locked_files`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.total_number_of_locked_files`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.total_number_of_path_locks`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.total_number_of_path_locks`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.users_using_lfs_locks`
+
+Number of users that have used default branch locks through the UI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.users_using_lfs_locks`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.create.users_using_path_locks`
+
+Number of users that have used exclusive file locks through the CLI
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.create.users_using_path_locks`** |
+| `product_section` | dev |
+| `product_stage` | create |
+| `product_group` | `group::source code` |
+| `product_category` | `source_code_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.bulk_imports.gitlab`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.bulk_imports.gitlab`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.bulk_imports.gitlab_v1`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.bulk_imports.gitlab_v1`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.events`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.events`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.group_imports.gitlab_migration`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.group_imports.gitlab_migration`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.group_imports.group_import`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.group_imports.group_import`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.group_saml_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.group_saml_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.groups`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.groups`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.groups_imported`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.groups_imported`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issue_imports.csv`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issue_imports.csv`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issue_imports.fogbugz`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issue_imports.fogbugz`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issue_imports.jira`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issue_imports.jira`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issue_imports.phabricator`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issue_imports.phabricator`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issues_imported.csv`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issues_imported.csv`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issues_imported.fogbugz`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issues_imported.fogbugz`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issues_imported.jira`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issues_imported.jira`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.issues_imported.phabricator`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.issues_imported.phabricator`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.ldap_admin_sync_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.ldap_admin_sync_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.ldap_group_sync_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.ldap_group_sync_enabled`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | boolean |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.ldap_keys`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.ldap_keys`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.ldap_servers`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.ldap_servers`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.ldap_users`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.ldap_users`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.omniauth_providers`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.omniauth_providers`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.bitbucket`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.bitbucket`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.bitbucket_server`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.bitbucket_server`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.git`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.git`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.gitea`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.gitea`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.github`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.github`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.gitlab`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.gitlab`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.gitlab_migration`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.gitlab_migration`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.gitlab_project`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.gitlab_project`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.project_imports.manifest`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.project_imports.manifest`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.bitbucket`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.bitbucket`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.bitbucket_server`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.bitbucket_server`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.git`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.git`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.gitea`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.gitea`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.github`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.github`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.gitlab`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.gitlab`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.gitlab_project`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.gitlab_project`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.manifest`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.manifest`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_imported.total`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_imported.total`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.projects_with_compliance_framework`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.projects_with_compliance_framework`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.unique_users_all_imports`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.unique_users_all_imports`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.user_auth_by_provider.google_oauth2`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.user_auth_by_provider.google_oauth2`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.user_auth_by_provider.standard`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.user_auth_by_provider.standard`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor-via-u2f-device`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor-via-u2f-device`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor-via-webauthn-device`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.user_auth_by_provider.two-factor-via-webauthn-device`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.users_created`
+
+Number of users created in the month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.users_created`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.manage.value_stream_management_customized_group_stages`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.manage.value_stream_management_customized_group_stages`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::manage` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
| `tier` | |
| `skip_validation` | true |
+## `usage_activity_by_stage_monthly.monitor.clusters`
+
+Total GitLab Managed clusters both enabled and disabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.clusters`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.clusters_applications_prometheus`
+
+Total GitLab Managed clusters with Prometheus enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.clusters_applications_prometheus`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | `metrics` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.operations_dashboard_default_dashboard`
+
+Active users with enabled operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.operations_dashboard_default_dashboard`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.operations_dashboard_users_with_projects_added`
+
+Active users with projects on operations dashboard
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.operations_dashboard_users_with_projects_added`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.projects_incident_sla_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.projects_incident_sla_enabled`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.projects_with_alert_incidents`
+
+Count of unique projects with an incident from an alert created in the last month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.projects_with_alert_incidents`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.projects_with_error_tracking_enabled`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.projects_with_error_tracking_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.projects_with_incidents`
+
+Count of unique projects with an incident created in the last month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.projects_with_incidents`** |
+| `product_section` | ops |
+| `product_stage` | monitor |
+| `product_group` | `group::health` |
+| `product_category` | `incident_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.monitor.projects_with_tracing_enabled`
+
+Projects with tracing enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.monitor.projects_with_tracing_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::monitor` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.package.projects_with_packages`
+
+Incident confidential status changed event
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.package.projects_with_packages`** |
+| `product_section` | ops |
+| `product_stage` | package |
+| `product_group` | `group::package` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.assignee_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.assignee_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.epics`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.epics`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.issues`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.issues`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.label_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.label_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.milestone_lists`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.milestone_lists`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.notes`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.notes`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.projects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.projects`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.projects_jira_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.projects_jira_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.projects_jira_dvcs_cloud_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.projects_jira_dvcs_cloud_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.projects_jira_dvcs_server_active`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.projects_jira_dvcs_server_active`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.service_desk_enabled_projects`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.service_desk_enabled_projects`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.service_desk_issues`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.service_desk_issues`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.plan.todos`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.plan.todos`** |
+| `product_section` | dev |
+| `product_stage` | |
+| `product_group` | `group::plan` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.release.deployments`
+
+Unique users triggering deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.release.deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.release.failed_deployments`
+
+Total failed deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.release.failed_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.release.projects_mirrored_with_pipelines_enabled`
+
+Projects with repository mirroring enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.release.projects_mirrored_with_pipelines_enabled`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.release.releases`
+
+Unique users creating release tags
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.release.releases`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.release.successful_deployments`
+
+Total successful deployments
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.release.successful_deployments`** |
+| `product_section` | ops |
+| `product_stage` | |
+| `product_group` | `group::release` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.api_fuzzing_pipeline`
+
+Counts of Pipelines that have at least 1 API Fuzzing Testing job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.api_fuzzing_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | `fuzz-testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.api_fuzzing_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.api_fuzzing_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.container_scanning_pipeline`
+
+no idea, what is this when did it get added? guess pipelines containing a CS job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.container_scanning_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.container_scanning_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.container_scanning_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.coverage_fuzzing_pipeline`
+
+Counts of Pipelines that have at least 1 coverage-guided Fuzz Testing job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.coverage_fuzzing_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | `fuzz-testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.coverage_fuzzing_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.coverage_fuzzing_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.dast_pipeline`
+
+Count of pipelines that have at least 1 DAST job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.dast_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::dynamic analysis` |
+| `product_category` | `dynamic_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.dast_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.dast_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.dependency_scanning_pipeline`
+
+no idea, what is this when did it get added? guess pipelines containing a DS job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.dependency_scanning_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.dependency_scanning_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.dependency_scanning_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.sast_pipeline`
+
+Counts of Pipelines that have at least 1 SAST job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.sast_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `static_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.sast_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.sast_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.secret_detection_pipeline`
+
+Counts of Pipelines that have at least 1 Secret Detection job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.secret_detection_pipeline`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `secret_detection` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.secret_detection_scans`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.secret_detection_scans`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_api_fuzzing_dnd_jobs`
+
+Count of API Fuzzing `docker-in-docker` jobs by job names
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_api_fuzzing_dnd_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_api_fuzzing_jobs`
+
+Count of API Fuzzing jobs by job name
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_api_fuzzing_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::fuzz testing` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_container_scanning_jobs`
+
+no idea, Count of Container Scanning jobs run, it implies user and monthly, but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_container_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | protect |
+| `product_group` | `group::container security` |
+| `product_category` | `container_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_coverage_fuzzing_jobs`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_coverage_fuzzing_jobs`** |
+| `product_section` | |
+| `product_stage` | |
+| `product_group` | |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_dast_jobs`
+
+Users who run a DAST job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_dast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::dynamic analysis` |
+| `product_category` | `dynamic_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_dependency_scanning_jobs`
+
+no idea, Count of Dependency Scanning jobs run, it implies user and monthly, but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_dependency_scanning_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `dependency_scanning` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_license_management_jobs`
+
+no idea, Count of License Scanning jobs run, it implies user and monthly, but AFAIK we don't track per user
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_license_management_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::composition analysis` |
+| `product_category` | `license_compliance` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_preferences_group_overview_security_dashboard`
+
+Users who set personal preference to see Security Dashboard on Group overview page
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_preferences_group_overview_security_dashboard`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::threat insights` |
+| `product_category` | `vulnerability_management` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_sast_jobs`
+
+Users who run a SAST job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_sast_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `static_application_security_testing` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_secret_detection_jobs`
+
+Users who run a Secret Detection job
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_secret_detection_jobs`** |
+| `product_section` | sec |
+| `product_stage` | secure |
+| `product_group` | `group::static analysis` |
+| `product_category` | `secret_detection` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.secure.user_unique_users_all_secure_scanners`
+
+Missing description
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.secure.user_unique_users_all_secure_scanners`** |
+| `product_section` | sec |
+| `product_stage` | |
+| `product_group` | `group::secure` |
+| `product_category` | |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_builds`
+
+Unique builds in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_builds`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_external_pipelines`
+
+Total pipelines in external repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_external_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_internal_pipelines`
+
+Total pipelines in GitLab repositories
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_internal_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_pipeline_config_auto_devops`
+
+Total pipelines from an Auto DevOps template
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_pipeline_config_auto_devops`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_pipeline_config_repository`
+
+Total Pipelines from templates in repository
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_pipeline_config_repository`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_pipeline_schedules`
+
+Pipeline schedules in GitLab
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_pipeline_schedules`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_pipelines`
+
+ Distinct users triggering pipelines in a month
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_pipelines`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.ci_triggers`
+
+Total configured Triggers in project
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.ci_triggers`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.clusters_applications_runner`
+
+Total GitLab Managed clusters with Runner enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.clusters_applications_runner`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::runner` |
+| `product_category` | `runner` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
+## `usage_activity_by_stage_monthly.verify.projects_reporting_ci_cd_back_to_github`
+
+Projects with a GitHub service pipeline enabled
+
+| field | value |
+| --- | --- |
+| `key_path` | **`usage_activity_by_stage_monthly.verify.projects_reporting_ci_cd_back_to_github`** |
+| `product_section` | ops |
+| `product_stage` | verify |
+| `product_group` | `group::continuous integration` |
+| `product_category` | `continuous_integration` |
+| `value_type` | number |
+| `status` | data_available |
+| `time_frame` | 28d |
+| `data_source` | |
+| `distribution` | ee |
+| `tier` | premium, ultimate |
+| `skip_validation` | true |
+
## `uuid`
GitLab instance unique identifier
@@ -857,7 +26819,7 @@ GitLab instance unique identifier
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | string |
| `status` | data_available |
| `milestone` | 9.1 |
@@ -867,6 +26829,25 @@ GitLab instance unique identifier
| `distribution` | ee, ce |
| `tier` | free, premium, ultimate |
+## `version`
+
+Version of GitLab instance
+
+| field | value |
+| --- | --- |
+| `key_path` | **`version`** |
+| `product_section` | enablement |
+| `product_stage` | enablement |
+| `product_group` | `group::distribution` |
+| `product_category` | `collection` |
+| `value_type` | string |
+| `status` | data_available |
+| `time_frame` | none |
+| `data_source` | |
+| `distribution` | ce, ee |
+| `tier` | free, premium, ultimate |
+| `skip_validation` | true |
+
## `web_ide_clientside_preview_enabled`
Whether web ide clientside preview is enabled
@@ -877,11 +26858,11 @@ Whether web ide clientside preview is enabled
| `product_section` | growth |
| `product_stage` | growth |
| `product_group` | `group::product intelligence` |
-| `product_category` | collection |
+| `product_category` | `collection` |
| `value_type` | boolean |
| `status` | data_available |
| `time_frame` | none |
| `data_source` | |
-| `distribution` | |
-| `tier` | |
+| `distribution` | ce |
+| `tier` | free |
| `skip_validation` | true |
diff --git a/doc/development/usage_ping/metrics_dictionary.md b/doc/development/usage_ping/metrics_dictionary.md
index 406a223b204..db40ce0af27 100644
--- a/doc/development/usage_ping/metrics_dictionary.md
+++ b/doc/development/usage_ping/metrics_dictionary.md
@@ -50,18 +50,19 @@ instance unique identifier.
```yaml
key_path: uuid
description: GitLab instance unique identifier
-value_type: string
product_category: collection
+product_section: growth
product_stage: growth
+product_group: group::product intelligence
+value_type: string
status: data_available
milestone: 9.1
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/1521
-product_group: group::product intelligence
time_frame: none
data_source: database
distribution:
-- ee
- ce
+- ee
tier:
- free
- premium
diff --git a/doc/development/wikis.md b/doc/development/wikis.md
index 7995afb1e17..f47c87137ae 100644
--- a/doc/development/wikis.md
+++ b/doc/development/wikis.md
@@ -6,7 +6,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
description: "GitLab's development guidelines for Wikis"
---
-# Wikis development guide
+# Wikis development guide **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/227027) in GitLab 13.5.
diff --git a/doc/gitlab-basics/index.md b/doc/gitlab-basics/index.md
index 8052fd27bb3..001806c0a59 100644
--- a/doc/gitlab-basics/index.md
+++ b/doc/gitlab-basics/index.md
@@ -23,7 +23,7 @@ The following are guides to basic GitLab functionality:
- [Create and add your SSH public key](../ssh/README.md), for enabling Git over SSH.
- [Create a project](../user/project/working_with_projects.md#create-a-project), to start using GitLab.
-- [Create a group](../user/group/index.md#create-a-new-group), to combine and administer
+- [Create a group](../user/group/index.md#create-a-group), to combine and administer
projects together.
- [Create a branch](create-branch.md), to make changes to files stored in a project's repository.
- [Feature branch workflow](feature_branch_workflow.md).
diff --git a/doc/install/index.md b/doc/install/index.md
index 948365ce548..d7c562ac77b 100644
--- a/doc/install/index.md
+++ b/doc/install/index.md
@@ -52,11 +52,11 @@ GitLab as described in our [reference architecture documentation](../administrat
[**> Install GitLab using the Omnibus GitLab package.**](https://about.gitlab.com/install/)
-### GitLab Environment Toolkit (alpha)
+### GitLab Environment Toolkit (GET)
-The [GitLab Environment Toolkit](https://gitlab.com/gitlab-org/quality/gitlab-environment-toolkit) provides a set of automation tools to easily deploy a [reference architecture](../administration/reference_architectures/index.md) on most major cloud providers.
+The [GitLab Environment Toolkit](https://gitlab.com/gitlab-org/quality/gitlab-environment-toolkit) (GET) provides a set of automation tools to easily deploy a [reference architecture](../administration/reference_architectures/index.md) on most major cloud providers.
-It is currently in alpha, and is not recommended for production use.
+It is currently in beta, and is not yet recommended for production use.
[**> Install a GitLab reference architecture using the GitLab Environment Toolkit.**](https://gitlab.com/gitlab-org/quality/gitlab-environment-toolkit#documentation)
diff --git a/doc/integration/README.md b/doc/integration/README.md
index 7d38dd6222a..9ae75019efb 100644
--- a/doc/integration/README.md
+++ b/doc/integration/README.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
comments: false
---
-# GitLab integrations
+# GitLab integrations **(FREE)**
GitLab can be integrated with external services for enhanced functionality.
diff --git a/doc/integration/akismet.md b/doc/integration/akismet.md
index a2720c82fe7..d2e20b225cc 100644
--- a/doc/integration/akismet.md
+++ b/doc/integration/akismet.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Akismet
+# Akismet **(FREE)**
GitLab leverages [Akismet](https://akismet.com/) to protect against spam.
GitLab uses Akismet to prevent the creation of spam issues on public projects. Issues
diff --git a/doc/integration/auth0.md b/doc/integration/auth0.md
index 7e531682faf..ecf54613ec6 100644
--- a/doc/integration/auth0.md
+++ b/doc/integration/auth0.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Auth0 OmniAuth Provider
+# Auth0 OmniAuth Provider **(FREE)**
To enable the Auth0 OmniAuth provider, you must create an Auth0 account, and an
application.
diff --git a/doc/integration/azure.md b/doc/integration/azure.md
index c83ef650f54..61a8290e664 100644
--- a/doc/integration/azure.md
+++ b/doc/integration/azure.md
@@ -4,11 +4,12 @@ group: Ecosystem
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
---
-# Microsoft Azure OAuth2 OmniAuth Provider
+# Microsoft Azure OAuth2 OmniAuth Provider **(FREE)**
NOTE:
Per Microsoft, this provider uses the [older Azure Active Directory v1.0 endpoint](https://docs.microsoft.com/en-us/azure/active-directory/azuread-dev/v1-protocols-oauth-code).
Microsoft documentation suggests that you should use the [OpenID Connect protocol to use the v2 endpoints](../administration/auth/oidc.md#microsoft-azure) for new projects.
+To use v2 endpoints via OmniAuth, please follow [Microsoft Azure OAuth2 OmniAuth Provider v2 instructions](#microsoft-azure-oauth2-omniauth-provider-v2).
To enable the Microsoft Azure OAuth2 OmniAuth provider, you must register your application with Azure. Azure generates a client ID and secret key for you to use.
@@ -94,3 +95,106 @@ sign in and authorize the GitLab application. If successful, you are returned to
Read [Enable OmniAuth for an Existing User](omniauth.md#enable-omniauth-for-an-existing-user)
for information on how existing GitLab users can connect to their newly-available Azure AD accounts.
+
+## Microsoft Azure OAuth2 OmniAuth Provider v2
+
+In order to use v2 endpoints provided by Microsoft Azure Active Directory you must to configure it via Azure OAuth2 OmniAuth Provider v2.
+
+### Registering an Azure application
+
+To enable the Microsoft Azure OAuth2 OmniAuth provider, you must register your application with Azure. Azure generates a client ID and secret key for you to use.
+
+Sign in to the [Azure Portal](https://portal.azure.com), and follow the instructions in
+the [Microsoft Quickstart documentation](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app).
+
+As you go through the Microsoft procedure, keep the following in mind:
+
+- If you have multiple instances of Azure Active Directory, you can switch to the desired tenant.
+- You're setting up a Web application.
+- The redirect URI requires the URL of the Azure OAuth callback of your GitLab
+ installation. For example, `https://gitlab.example.com/users/auth/azure_activedirectory_v2/callback`.
+ The type dropdown should be set to **Web**.
+- The `client ID` and `client secret` are terms associated with OAuth 2. In some Microsoft documentation,
+ the terms may be listed as `Application ID` and `Application Secret`.
+- If you need to generate a new client secret, follow the Microsoft documentation
+ for [creating a new application secret](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal#create-a-new-application-secret).
+- Save the client ID and client secret for your new app, as the client secret is only
+ displayed one time.
+
+### Adding API permissions (scopes)
+
+Once you have created an application, follow the [Microsoft Quickstart documentation to expose a web API](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-configure-app-expose-web-apis). Be sure to add the following delegated permissions under the Microsoft Graph API:
+
+- `email`
+- `openid`
+- `profile`
+
+### Configuring GitLab
+
+1. On your GitLab server, open the configuration file.
+
+ For Omnibus GitLab:
+
+ ```shell
+ sudo editor /etc/gitlab/gitlab.rb
+ ```
+
+ For installations from source:
+
+ ```shell
+ cd /home/git/gitlab
+
+ sudo -u git -H editor config/gitlab.yml
+ ```
+
+1. Refer to [Initial OmniAuth Configuration](omniauth.md#initial-omniauth-configuration)
+ for initial settings.
+
+1. Add the provider configuration:
+
+ For Omnibus GitLab:
+
+ ```ruby
+ gitlab_rails['omniauth_providers'] = [
+ {
+ "name" => "azure_activedirectory_v2",
+ "args" => {
+ "client_id" => "CLIENT ID",
+ "client_secret" => "CLIENT SECRET",
+ "tenant_id" => "TENANT ID",
+ }
+ }
+ ]
+ ```
+
+ For installations from source:
+
+ ```yaml
+ - { name: 'azure_activedirectory_v2',
+ args: { client_id: "CLIENT ID",
+ client_secret: "CLIENT SECRET",
+ tenant_id: "TENANT ID" } }
+ ```
+
+ The `base_azure_url` is optional and can be added for different locales;
+ such as `base_azure_url: "https://login.microsoftonline.de"`.
+
+ The `scope` parameter is optional and can be added to `args`. Default `scope` is: `openid profile email`.
+
+1. Replace `CLIENT ID`, `CLIENT SECRET`, and `TENANT ID` with the values you got above.
+
+1. Save the configuration file.
+
+1. Reconfigure or restart GitLab, depending on your installation method:
+
+ - *If you installed from Omnibus GitLab,*
+ [reconfigure](../administration/restart_gitlab.md#omnibus-gitlab-reconfigure) GitLab.
+ - *If you installed from source,*
+ [restart GitLab](../administration/restart_gitlab.md#installations-from-source).
+
+On the sign-in page, you should now see a Microsoft icon below the regular sign-in form.
+Select the icon to begin the authentication process. Microsoft then asks you to
+sign in and authorize the GitLab application. If successful, you are returned to GitLab and signed in.
+
+Read [Enable OmniAuth for an Existing User](omniauth.md#enable-omniauth-for-an-existing-user)
+for information on how existing GitLab users can connect to their newly available Azure AD accounts.
diff --git a/doc/integration/bitbucket.md b/doc/integration/bitbucket.md
index 8999f4da9a2..54bcaee7cab 100644
--- a/doc/integration/bitbucket.md
+++ b/doc/integration/bitbucket.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Integrate your GitLab server with Bitbucket Cloud
+# Integrate your GitLab server with Bitbucket Cloud **(FREE)**
NOTE:
Starting from GitLab 11.4, OmniAuth is enabled by default. If you're using an
diff --git a/doc/integration/cas.md b/doc/integration/cas.md
index b444143b03e..59f41ab4368 100644
--- a/doc/integration/cas.md
+++ b/doc/integration/cas.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# CAS OmniAuth Provider
+# CAS OmniAuth Provider **(FREE)**
To enable the CAS OmniAuth provider you must register your application with your CAS instance. This requires the service URL GitLab supplies to CAS. It should be something like: `https://gitlab.example.com:443/users/auth/cas3/callback?url`. By default handling for SLO is enabled, you only need to configure CAS for back-channel logout.
diff --git a/doc/integration/elasticsearch.md b/doc/integration/elasticsearch.md
index 389c7aabdf5..9e2ecdeeb5e 100644
--- a/doc/integration/elasticsearch.md
+++ b/doc/integration/elasticsearch.md
@@ -218,7 +218,7 @@ The following Elasticsearch settings are available:
| `Elasticsearch indexing` | Enables or disables Elasticsearch indexing and creates an empty index if one does not already exist. You may want to enable indexing but disable search in order to give the index time to be fully completed, for example. Also, keep in mind that this option doesn't have any impact on existing data, this only enables/disables the background indexer which tracks data changes and ensures new data is indexed. |
| `Pause Elasticsearch indexing` | Enables or disables temporary indexing pause. This is useful for cluster migration/reindexing. All changes are still tracked, but they are not committed to the Elasticsearch index until resumed. |
| `Search with Elasticsearch enabled` | Enables or disables using Elasticsearch in search. |
-| `URL` | The URL to use for connecting to Elasticsearch. Use a comma-separated list to support clustering (e.g., `http://host1, https://host2:9200`). If your Elasticsearch instance is password protected, pass the `username:password` in the URL (e.g., `http://<username>:<password>@<elastic_host>:9200/`). |
+| `URL` | The URL to use for connecting to Elasticsearch. Use a comma-separated list to support clustering (e.g., `http://host1, https://host2:9200`). If your Elasticsearch instance is password protected, pass the `username:password` in the URL (e.g., `http://<username>:<password>@<elastic_host>:9200/`). Special characters in the username or password should use [percentage encoding](https://en.wikipedia.org/wiki/Percent-encoding). |
| `Number of Elasticsearch shards` | Elasticsearch indexes are split into multiple shards for performance reasons. In general, larger indexes need to have more shards. Changes to this value do not take effect until the index is recreated. You can read more about tradeoffs in the [Elasticsearch documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/scalability.html). |
| `Number of Elasticsearch replicas` | Each Elasticsearch shard can have a number of replicas. These are a complete copy of the shard, and can provide increased query performance or resilience against hardware failure. Increasing this value will greatly increase total disk space required by the index. |
| `Limit namespaces and projects that can be indexed` | Enabling this will allow you to select namespaces and projects to index. All other namespaces and projects will use database search instead. Please note that if you enable this option but do not select any namespaces or projects, none will be indexed. [Read more below](#limiting-namespaces-and-projects).
@@ -232,6 +232,12 @@ The following Elasticsearch settings are available:
| `Bulk request concurrency` | The Bulk request concurrency indicates how many of the GitLab Golang-based indexer processes (or threads) can run in parallel to collect data to subsequently submit to Elasticsearch’s Bulk API. This increases indexing performance, but fills the Elasticsearch bulk requests queue faster. This setting should be used together with the Maximum bulk request size setting (see above) and needs to accommodate the resource constraints of both the Elasticsearch host(s) and the host(s) running the GitLab Golang-based indexer either from the `gitlab-rake` command or the Sidekiq tasks. |
| `Client request timeout` | Elasticsearch HTTP client request timeout value in seconds. `0` means using the system default timeout value, which depends on the libraries that GitLab application is built upon. |
+WARNING:
+Increasing the values of `Maximum bulk request size (MiB)` and `Bulk request concurrency` can negatively impact
+Sidekiq performance. Return them to their default values if you see increased `scheduling_latency_s` durations
+in your Sidekiq logs. For more information, see
+[issue 322147](https://gitlab.com/gitlab-org/gitlab/-/issues/322147).
+
### Limiting namespaces and projects
If you select `Limit namespaces and projects that can be indexed`, more options will become available.
@@ -416,6 +422,7 @@ The following are some available Rake tasks:
| [`sudo gitlab-rake gitlab:elastic:projects_not_indexed`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/lib/tasks/gitlab/elastic.rake) | Displays which projects are not indexed. |
| [`sudo gitlab-rake gitlab:elastic:reindex_cluster`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/lib/tasks/gitlab/elastic.rake) | Schedules a zero-downtime cluster reindexing task. This feature should be used with an index that was created after GitLab 13.0. |
| [`sudo gitlab-rake gitlab:elastic:mark_reindex_failed`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/lib/tasks/gitlab/elastic.rake)`] | Mark the most recent re-index job as failed. |
+| [`sudo gitlab-rake gitlab:elastic:list_pending_migrations`](https://gitlab.com/gitlab-org/gitlab/blob/master/ee/lib/tasks/gitlab/elastic.rake)`] | List pending migrations. Pending migrations include those that have not yet started, have started but not finished, and those that are halted. |
### Environment variables
diff --git a/doc/integration/external-issue-tracker.md b/doc/integration/external-issue-tracker.md
index b1eb9d0d2fe..4e00057c4b7 100644
--- a/doc/integration/external-issue-tracker.md
+++ b/doc/integration/external-issue-tracker.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# External issue tracker
+# External issue tracker **(FREE)**
GitLab has a great [issue tracker](../user/project/issues/index.md) but you can also use an external
one. External issue trackers are configurable per GitLab project.
diff --git a/doc/integration/facebook.md b/doc/integration/facebook.md
index b86958726a7..c901fdfdd10 100644
--- a/doc/integration/facebook.md
+++ b/doc/integration/facebook.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Facebook OAuth2 OmniAuth Provider
+# Facebook OAuth2 OmniAuth Provider **(FREE)**
To enable the Facebook OmniAuth provider you must register your application with Facebook. Facebook generates an app ID and secret key for you to use.
diff --git a/doc/integration/github.md b/doc/integration/github.md
index 0239ba0e818..4258b1c3c76 100644
--- a/doc/integration/github.md
+++ b/doc/integration/github.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Integrate your GitLab instance with GitHub
+# Integrate your GitLab instance with GitHub **(FREE)**
You can integrate your GitLab instance with GitHub.com and GitHub Enterprise. This integration
enables users to import projects from GitHub, or sign in to your GitLab instance
@@ -12,7 +12,7 @@ with their GitHub account.
## Enabling GitHub OAuth
-To enable the GitHub OmniAuth provider, you need an OAuth 2 Client ID and Client Secret from GitHub. To get these credentials, sign into GitHub and follow their procedure for [Creating an OAuth App](https://docs.github.com/apps/building-oauth-apps/creating-an-oauth-app/).
+To enable the GitHub OmniAuth provider, you need an OAuth 2 Client ID and Client Secret from GitHub. To get these credentials, sign into GitHub and follow their procedure for [Creating an OAuth App](https://docs.github.com/en/developers/apps/creating-an-oauth-app).
When you create an OAuth 2 app in GitHub, you need the following information:
diff --git a/doc/integration/gitlab.md b/doc/integration/gitlab.md
index 97c5332c438..7e21685fd54 100644
--- a/doc/integration/gitlab.md
+++ b/doc/integration/gitlab.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Integrate your server with GitLab.com
+# Integrate your server with GitLab.com **(FREE)**
Import projects from GitLab.com and login to your GitLab instance with your GitLab.com account.
diff --git a/doc/integration/gitpod.md b/doc/integration/gitpod.md
index 7dc710615fb..e62e3de29c2 100644
--- a/doc/integration/gitpod.md
+++ b/doc/integration/gitpod.md
@@ -5,7 +5,7 @@ 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"
---
-# Gitpod Integration
+# Gitpod Integration **(FREE)**
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/228893) in GitLab 13.4.
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/258206) in GitLab 13.8
@@ -34,9 +34,8 @@ To learn more about Gitpod, see their [features](https://www.gitpod.io/features/
With the Gitpod integration enabled for your GitLab instance, to enable it for yourself:
1. In the top-right corner, select your avatar.
-1. Select **Edit profile**.
-1. In the left sidebar, select **Account**.
-1. Under **Integrations**, locate the **Gitpod** section.
+1. Select **Preferences**.
+1. Under **Preferences**, locate the **Integrations** section.
1. Check the **Enable Gitpod integration** checkbox and select the **Save changes** button.
## Configure a self-managed instance **(FREE SELF)**
diff --git a/doc/integration/gmail_action_buttons_for_gitlab.md b/doc/integration/gmail_action_buttons_for_gitlab.md
index af9972e825e..fa0e79d4c0b 100644
--- a/doc/integration/gmail_action_buttons_for_gitlab.md
+++ b/doc/integration/gmail_action_buttons_for_gitlab.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Gmail actions buttons for GitLab
+# Gmail actions buttons for GitLab **(FREE)**
GitLab supports [Google actions in email](https://developers.google.com/gmail/markup/actions/actions-overview).
diff --git a/doc/integration/google.md b/doc/integration/google.md
index cd00c854fea..0e4c9b78b5f 100644
--- a/doc/integration/google.md
+++ b/doc/integration/google.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Google OAuth2 OmniAuth Provider
+# Google OAuth2 OmniAuth Provider **(FREE)**
To enable the Google OAuth2 OmniAuth provider you must register your application
with Google. Google generates a client ID and secret key for you to use.
diff --git a/doc/integration/jenkins_deprecated.md b/doc/integration/jenkins_deprecated.md
index 2ed87456ea1..61d1deace4f 100644
--- a/doc/integration/jenkins_deprecated.md
+++ b/doc/integration/jenkins_deprecated.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Jenkins CI (deprecated) service
+# Jenkins CI (deprecated) service **(FREE)**
NOTE:
In GitLab 8.3, Jenkins integration using the
@@ -42,7 +42,7 @@ In GitLab, perform the following steps.
Jenkins needs read access to the GitLab repository. We already specified a
private key to use in Jenkins, now we need to add a public one to the GitLab
project. For that case we need a Deploy key. Read the documentation on
-[how to set up a Deploy key](../ssh/README.md#deploy-keys).
+[how to set up a Deploy key](../user/project/deploy_keys/index.md).
### Jenkins service
diff --git a/doc/integration/oauth2_generic.md b/doc/integration/oauth2_generic.md
index 41656bd2216..84490757c16 100644
--- a/doc/integration/oauth2_generic.md
+++ b/doc/integration/oauth2_generic.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Sign into GitLab with (almost) any OAuth2 provider
+# Sign into GitLab with (almost) any OAuth2 provider **(FREE)**
The `omniauth-oauth2-generic` gem allows Single Sign-On between GitLab and your own OAuth2 provider
(or any OAuth2 provider compatible with this gem)
diff --git a/doc/integration/omniauth.md b/doc/integration/omniauth.md
index cf033018e17..9fd2e7a69e9 100644
--- a/doc/integration/omniauth.md
+++ b/doc/integration/omniauth.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# OmniAuth
+# OmniAuth **(FREE)**
GitLab leverages OmniAuth to allow users to sign in using Twitter, GitHub, and
other popular services. [OmniAuth](https://rubygems.org/gems/omniauth/) is
diff --git a/doc/integration/openid_connect_provider.md b/doc/integration/openid_connect_provider.md
index 4455ace3e1f..b37c5064063 100644
--- a/doc/integration/openid_connect_provider.md
+++ b/doc/integration/openid_connect_provider.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# GitLab as OpenID Connect identity provider
+# GitLab as OpenID Connect identity provider **(FREE)**
This document is about using GitLab as an OpenID Connect identity provider
to sign in to other services.
diff --git a/doc/integration/recaptcha.md b/doc/integration/recaptcha.md
index 8f090dfc588..9ffc89e2c13 100644
--- a/doc/integration/recaptcha.md
+++ b/doc/integration/recaptcha.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# reCAPTCHA
+# reCAPTCHA **(FREE)**
GitLab leverages [Google's reCAPTCHA](https://www.google.com/recaptcha/about/)
to protect against spam and abuse. GitLab displays the CAPTCHA form on the sign-up page
diff --git a/doc/integration/salesforce.md b/doc/integration/salesforce.md
index 156109518a6..102b89298a1 100644
--- a/doc/integration/salesforce.md
+++ b/doc/integration/salesforce.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Salesforce OmniAuth Provider
+# Salesforce OmniAuth Provider **(FREE)**
You can integrate your GitLab instance with [Salesforce](https://www.salesforce.com/) to enable users to log in to your GitLab instance with their Salesforce account.
diff --git a/doc/integration/saml.md b/doc/integration/saml.md
index 9b6ad3f2755..d68cf8e2f34 100644
--- a/doc/integration/saml.md
+++ b/doc/integration/saml.md
@@ -13,15 +13,15 @@ You should also reference the [OmniAuth documentation](omniauth.md) for general
## Common SAML Terms
-| Term | Description |
-|------|-------------|
-| Identity Provider (IdP) | The service which manages your user identities such as ADFS, Okta, Onelogin, or Ping Identity. |
-| Service Provider (SP) | SAML considers GitLab to be a service provider. |
-| Assertion | A piece of information about a user's identity, such as their name or role. Also known as claims or attributes. |
-| SSO | Single Sign-On. |
+| Term | Description |
+|--------------------------------|-------------|
+| Identity Provider (IdP) | The service which manages your user identities, such as ADFS, Okta, OneLogin, or Ping Identity. |
+| Service Provider (SP) | SAML considers GitLab to be a service provider. |
+| Assertion | A piece of information about a user's identity, such as their name or role. Also known as claims or attributes. |
+| SSO | Single Sign-On. |
| Assertion consumer service URL | The callback on GitLab where users will be redirected after successfully authenticating with the identity provider. |
-| Issuer | How GitLab identifies itself to the identity provider. Also known as a "Relying party trust identifier". |
-| Certificate fingerprint | Used to confirm that communications over SAML are secure by checking that the server is signing communications with the correct certificate. Also known as a certificate thumbprint. |
+| Issuer | How GitLab identifies itself to the identity provider. Also known as a "Relying party trust identifier". |
+| Certificate fingerprint | Used to confirm that communications over SAML are secure by checking that the server is signing communications with the correct certificate. Also known as a certificate thumbprint. |
## General Setup
@@ -265,7 +265,7 @@ considered admin users.
### Auditor groups **(PREMIUM SELF)**
-> Introduced in [GitLab Starter](https://about.gitlab.com/pricing/) 11.4.
+> Introduced in GitLab 11.4.
The requirements are the same as the previous settings, your IdP needs to pass Group information to GitLab, you need to tell
GitLab where to look for the groups in the SAML response, and which group(s) should be
@@ -454,8 +454,6 @@ args: {
### `uid_attribute`
-> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/17734) in GitLab 10.7.
-
By default, the `uid` is set as the `name_id` in the SAML response. If you'd like to designate a unique attribute for the `uid`, you can set the `uid_attribute`. In the example below, the value of `uid` attribute in the SAML response is set as the `uid_attribute`.
```yaml
diff --git a/doc/integration/shibboleth.md b/doc/integration/shibboleth.md
index 3b92f2858ac..c4cf19747be 100644
--- a/doc/integration/shibboleth.md
+++ b/doc/integration/shibboleth.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Shibboleth OmniAuth Provider
+# Shibboleth OmniAuth Provider **(FREE)**
NOTE:
The preferred approach for integrating a Shibboleth authentication system
diff --git a/doc/integration/slash_commands.md b/doc/integration/slash_commands.md
index 0dcf86cc46d..2c133c1de76 100644
--- a/doc/integration/slash_commands.md
+++ b/doc/integration/slash_commands.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Slash Commands
+# Slash Commands **(FREE)**
> - [Moved](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/24780) to GitLab Free in 11.9.
diff --git a/doc/integration/trello_power_up.md b/doc/integration/trello_power_up.md
index 1a1b6cd101f..e8956271508 100644
--- a/doc/integration/trello_power_up.md
+++ b/doc/integration/trello_power_up.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Trello Power-Up
+# Trello Power-Up **(FREE)**
The GitLab Trello Power-Up enables you to seamlessly attach
GitLab **merge requests** to Trello cards.
diff --git a/doc/integration/twitter.md b/doc/integration/twitter.md
index 8404352d0e9..58e111be73c 100644
--- a/doc/integration/twitter.md
+++ b/doc/integration/twitter.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Twitter OAuth2 OmniAuth Provider
+# Twitter OAuth2 OmniAuth Provider **(FREE)**
To enable the Twitter OmniAuth provider you must register your application with Twitter. Twitter generates a client ID and secret key for you to use.
diff --git a/doc/intro/index.md b/doc/intro/index.md
index 1ab7553d3a8..a40293955a9 100644
--- a/doc/intro/index.md
+++ b/doc/intro/index.md
@@ -12,7 +12,7 @@ comments: false
Create projects and groups.
- [Create a new project](../user/project/working_with_projects.md#create-a-project)
-- [Create a new group](../user/group/index.md#create-a-new-group)
+- [Create a new group](../user/group/index.md#create-a-group)
## Prioritize
diff --git a/doc/operations/feature_flags.md b/doc/operations/feature_flags.md
index f23880554a6..de6b2985786 100644
--- a/doc/operations/feature_flags.md
+++ b/doc/operations/feature_flags.md
@@ -79,8 +79,8 @@ is 200. For GitLab SaaS, the maximum number is determined by [tier](https://abou
You can apply a feature flag strategy across multiple environments, without defining
the strategy multiple times.
-GitLab Feature Flags use [Unleash](https://unleash.github.io) as the feature flag
-engine. In Unleash, there are [strategies](https://unleash.github.io/docs/activation_strategy)
+GitLab Feature Flags use [Unleash](https://docs.getunleash.ai/) as the feature flag
+engine. In Unleash, there are [strategies](https://docs.getunleash.ai/docs/activation_strategy)
for granular feature flag controls. GitLab Feature Flags can have multiple strategies,
and the supported strategies are:
@@ -95,7 +95,7 @@ and clicking **{pencil}** (edit).
### All users
-Enables the feature for all users. It uses the [`default`](https://unleash.github.io/docs/activation_strategy#default)
+Enables the feature for all users. It uses the [`default`](https://docs.getunleash.ai/docs/activation_strategy#default)
Unleash activation strategy.
### Percent Rollout
diff --git a/doc/operations/incident_management/incidents.md b/doc/operations/incident_management/incidents.md
index f0bb9a8e950..317797376fc 100644
--- a/doc/operations/incident_management/incidents.md
+++ b/doc/operations/incident_management/incidents.md
@@ -54,7 +54,7 @@ With Maintainer or higher [permissions](../../user/permissions.md), you can enab
1. Navigate to **Settings > Operations > Incidents** and expand **Incidents**.
1. Check the **Create an incident** checkbox.
1. To customize the incident, select an
- [issue template](../../user/project/description_templates.md#creating-issue-templates).
+ [issue template](../../user/project/description_templates.md#create-an-issue-template).
1. To send [an email notification](paging.md#email-notifications) to users
with [Developer permissions](../../user/permissions.md), select
**Send a separate email notification to Developers**. Email notifications are
diff --git a/doc/ssh/README.md b/doc/ssh/README.md
index 815d8c13c43..7814b1dbda1 100644
--- a/doc/ssh/README.md
+++ b/doc/ssh/README.md
@@ -7,19 +7,12 @@ type: howto, reference
# GitLab and SSH keys
-Git is a distributed version control system, which means you can work locally.
-In addition, you can also share or "push" your changes to other servers.
-GitLab supports secure communication between Git and its servers using SSH keys.
+Git is a distributed version control system, which means you can work locally,
+then share or "push" your changes to a server. In this case, the server is GitLab.
-The SSH protocol provides this security and allows you to authenticate to the
-GitLab remote server without supplying your username or password each time.
-
-This page can help you configure secure SSH keys which you can use to help secure
-connections to GitLab repositories.
-
-- If you need information on creating SSH keys, start with our [options for SSH keys](#supported-ssh-key-types).
-- If you have SSH keys dedicated for your GitLab account, you may be interested in [Working with non-default SSH key pair paths](#working-with-non-default-ssh-key-pair-paths).
-- If you already have an SSH key pair, you can go to how you can [add an SSH key to your GitLab account](#add-an-ssh-key-to-your-gitlab-account).
+GitLab uses the SSH protocol to securely communicate with Git.
+When you use SSH keys to authenticate to the GitLab remote server,
+you don't need to supply your username and password each time.
## Prerequisites
@@ -31,7 +24,7 @@ To use SSH to communicate with GitLab, you need:
To view the version of SSH installed on your system, run `ssh -V`.
GitLab does [not support installation on Microsoft Windows](../install/requirements.md#microsoft-windows),
-but you can set up SSH keys on the Windows [client](#options-for-microsoft-windows).
+but you can set up SSH keys on the Windows [client](#use-ssh-on-microsoft-windows).
## Supported SSH key types
@@ -84,7 +77,7 @@ If you do not have an existing SSH key pair, generate a new one.
1. Type `ssh-keygen -t` followed by the key type and an optional comment.
This comment is included in the `.pub` file that's created.
You may want to use an email address for the comment.
-
+
For example, for ED25519:
```shell
@@ -104,10 +97,10 @@ If you do not have an existing SSH key pair, generate a new one.
Enter file in which to save the key (/home/user/.ssh/id_ed25519):
```
-1. Accept the suggested filename and directory, unless you are generating a [deploy key](#deploy-keys)
+1. Accept the suggested filename and directory, unless you are generating a [deploy key](../user/project/deploy_keys/index.md)
or want to save in a specific directory where you store other keys.
- You can also dedicate the SSH key pair to a [specific host](#working-with-non-default-ssh-key-pair-paths).
+ You can also dedicate the SSH key pair to a [specific host](#configure-ssh-to-point-to-a-different-directory).
1. Specify a [passphrase](https://www.ssh.com/ssh/passphrase/):
@@ -118,15 +111,47 @@ If you do not have an existing SSH key pair, generate a new one.
1. A confirmation is displayed, including information about where your files are stored.
-A public and private key are generated.
+A public and private key are generated.
[Add the public SSH key to your GitLab account](#add-an-ssh-key-to-your-gitlab-account) and keep
the private key secure.
+### Configure SSH to point to a different directory
+
+If you did not save your SSH key pair in the default directory,
+configure your SSH client to point to the directory where the private key is stored.
+
+1. Open a terminal and run this command:
+
+ ```shell
+ eval $(ssh-agent -s)
+ ssh-add <directory to private SSH key>
+ ```
+
+1. Save these settings in the `~/.ssh/config` file. For example:
+
+ ```conf
+ # GitLab.com
+ Host gitlab.com
+ PreferredAuthentications publickey
+ IdentityFile ~/.ssh/gitlab_com_rsa
+
+ # Private GitLab instance
+ Host gitlab.company.com
+ PreferredAuthentications publickey
+ IdentityFile ~/.ssh/example_com_rsa
+ ```
+
+ For more information on these settings, see the [`man ssh_config`](https://man.openbsd.org/ssh_config) page in the SSH configuration manual.
+
+Public SSH keys must be unique to GitLab because they bind to your account.
+Your SSH key is the only identifier you have when you push code with SSH.
+It must uniquely map to a single user.
+
### Update your SSH key passphrase
You can update the passphrase for your SSH key.
-1. Open a terminal and type this command:
+1. Open a terminal and run this command:
```shell
ssh-keygen -p -f /path/to/ssh_key
@@ -140,7 +165,7 @@ If your version of OpenSSH is between 6.5 and 7.8,
you can save your private RSA SSH keys in a more secure
OpenSSH format.
-1. Open a terminal and type this command:
+1. Open a terminal and run this command:
```shell
ssh-keygen -o -f ~/.ssh/id_rsa
@@ -155,11 +180,10 @@ OpenSSH format.
## Add an SSH key to your GitLab account
-Now you can copy the SSH key you created to your GitLab account.
+To use SSH with GitLab, copy your public key to your GitLab account.
-1. Copy your **public** SSH key to a location that saves information in text format.
- The following options saves information for ED25519 keys to the clipboard
- for the noted operating system:
+1. Copy the contents of your public key file. You can do this manually or use a script.
+ For example, to copy an ED25519 key to the clipboard:
**macOS:**
@@ -167,7 +191,7 @@ Now you can copy the SSH key you created to your GitLab account.
pbcopy < ~/.ssh/id_ed25519.pub
```
- **Linux (requires the `xclip` package):**
+ **Linux** (requires the `xclip` package):
```shell
xclip -sel clip < ~/.ssh/id_ed25519.pub
@@ -179,128 +203,83 @@ Now you can copy the SSH key you created to your GitLab account.
cat ~/.ssh/id_ed25519.pub | clip
```
- If you're using an RSA key, substitute accordingly.
+ Replace `id_ed25519.pub` with your filename. For example, use `id_rsa.pub` for RSA.
-1. Navigate to `https://gitlab.com` or your local GitLab instance URL and sign in.
-1. In the top-right corner, select your avatar.
-1. Select **Edit profile**.
-1. In the left sidebar, select **SSH Keys**.
-1. Paste the public key that you copied into the **Key** text box.
-1. Make sure your key includes a descriptive name in the **Title** text box, such as _Work Laptop_ or
+1. Sign in to GitLab.
+1. In the top right corner, select your avatar.
+1. Select **Settings**.
+1. From the left sidebar, select **SSH Keys**.
+1. In the **Key** box, paste the contents of your public key.
+ If you manually copied the key, make sure you copy the entire key,
+ which starts with `ssh-ed25519` or `ssh-rsa`, and may end with a comment.
+1. In the **Title** text box, type a description, like _Work Laptop_ or
_Home Workstation_.
-1. Include an (optional) expiry date for the key under "Expires at" section. (Introduced in [GitLab 12.9](https://gitlab.com/gitlab-org/gitlab/-/issues/36243).)
-1. Click the **Add key** button.
-
-SSH keys that have "expired" using this procedure are valid in GitLab workflows.
-As the GitLab-configured expiration date is not included in the SSH key itself,
-you can still export public SSH keys as needed.
-
-NOTE:
-If you manually copied your public SSH key make sure you copied the entire
-key starting with `ssh-ed25519` (or `ssh-rsa`) and ending with your email address.
+1. Optional. In the **Expires at** box, select an expiration date. (Introduced in [GitLab 12.9](https://gitlab.com/gitlab-org/gitlab/-/issues/36243).)
+ The expiration date is informational only, and does not prevent you from using
+ the key. However, administrators can view expiration dates and
+ use them for guidance when [deleting keys](../user/admin_area/credentials_inventory.md#delete-a-users-ssh-key).
+1. Select **Add key**.
-## Two-factor Authentication (2FA)
+## Verify that you can connect
-You can set up two-factor authentication (2FA) for
-[Git over SSH](../security/two_factor_authentication.md#two-factor-authentication-2fa-for-git-over-ssh-operations).
+Verify that your SSH key was added correctly.
-## Testing that everything is set up correctly
+1. For GitLab.com, to ensure you're connecting to the correct server, confirm the
+ [SSH host keys fingerprints](../user/gitlab_com/index.md#ssh-host-keys-fingerprints).
+1. Open a terminal and run this command, replacing `gitlab.example.com` with your GitLab instance URL:
-To test whether your SSH key was added correctly, run the following
-command in your terminal (replace `gitlab.com` with the domain of
-your GitLab instance):
-
-```shell
-ssh -T git@gitlab.com
-```
-
-The first time you connect to GitLab via SSH, you should verify the
-authenticity of the GitLab host that you're connecting to.
-For example, when connecting to GitLab.com, answer `yes` to add GitLab.com to
-the list of trusted hosts:
-
-```plaintext
-The authenticity of host 'gitlab.com (35.231.145.151)' can't be established.
-ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
-Are you sure you want to continue connecting (yes/no)? yes
-Warning: Permanently added 'gitlab.com' (ECDSA) to the list of known hosts.
-```
-
-NOTE:
-For GitLab.com, consult the
-[SSH host keys fingerprints](../user/gitlab_com/index.md#ssh-host-keys-fingerprints),
-section to make sure you're connecting to the correct server. For example, you can see
-the ECDSA key fingerprint shown above in the linked section.
-
-Once added to the list of known hosts, you should validate the
-authenticity of the GitLab host, once again. Run the above command
-again, and you should receive a _Welcome to GitLab, `@username`!_ message.
+ ```shell
+ ssh -T git@gitlab.example.com
+ ```
-If the welcome message doesn't appear, you can troubleshoot the problem by running `ssh`
-in verbose mode with the following command:
+1. If this is the first time you connect, you should verify the
+ authenticity of the GitLab host. If you see a message like:
-```shell
-ssh -Tvvv git@gitlab.com
-```
+ ```plaintext
+ The authenticity of host 'gitlab.example.com (35.231.145.151)' can't be established.
+ ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
+ Are you sure you want to continue connecting (yes/no)? yes
+ Warning: Permanently added 'gitlab.example.com' (ECDSA) to the list of known hosts.
+ ```
-## Working with non-default SSH key pair paths
+ Type `yes` and press Enter.
-If you used a non-default file path for your GitLab SSH key pair,
-configure your SSH client to point to your GitLab private SSH key.
+1. Run the `ssh -T git@gitlab.example.com` command again. You should receive a _Welcome to GitLab, `@username`!_ message.
-To make these changes, run the following commands:
+If the welcome message doesn't appear, you can troubleshoot by running `ssh`
+in verbose mode:
```shell
-eval $(ssh-agent -s)
-ssh-add <path to private SSH key>
-```
-
-Now save these settings to the `~/.ssh/config` file. Two examples
-for SSH keys dedicated to GitLab are shown here:
-
-```conf
-# GitLab.com
-Host gitlab.com
- Preferredauthentications publickey
- IdentityFile ~/.ssh/gitlab_com_rsa
-
-# Private GitLab instance
-Host gitlab.company.com
- Preferredauthentications publickey
- IdentityFile ~/.ssh/example_com_rsa
+ssh -Tvvv git@gitlab.example.com
```
-Public SSH keys need to be unique to GitLab, as they bind to your account.
-Your SSH key is the only identifier you have when pushing code via SSH,
-that's why it needs to uniquely map to a single user.
+## Use different keys for different repositories
-## Per-repository SSH keys
+You can use a different key for each repository.
-If you want to use different keys depending on the repository you are working
-on, you can issue the following command while inside your repository:
+Open a terminal and run this command:
```shell
git config core.sshCommand "ssh -o IdentitiesOnly=yes -i ~/.ssh/private-key-filename-for-this-repository -F /dev/null"
```
-This does not use the SSH Agent and requires at least Git 2.10.
+This command does not use the SSH Agent and requires Git 2.10 or later. For more information
+on `ssh` command options, see the `man` pages for both `ssh` and `ssh_config`.
-## Multiple accounts on a single GitLab instance
+## Use different accounts on a single GitLab instance
-The [per-repository](#per-repository-ssh-keys) method also works for using
-multiple accounts within a single GitLab instance.
+You can use multiple accounts to connect to a single instance of GitLab.
+You can do this by using the command in the [previous topic](#use-different-keys-for-different-repositories).
+However, even if you set `IdentitiesOnly` to `yes`, you cannot sign in if an `IdentityFile` exists
+outside of a `Host` block.
-Alternatively, it is possible to directly assign aliases to hosts in
-`~.ssh/config`. SSH and, by extension, Git fails to log in if there is
-an `IdentityFile` set outside of a `Host` block in `.ssh/config`. This is
-due to how SSH assembles `IdentityFile` entries and is not changed by
-setting `IdentitiesOnly` to `yes`. `IdentityFile` entries should point to
-the private key of an SSH key pair.
+Instead, you can assign aliases to hosts in the `~.ssh/config` file.
-NOTE:
-Private and public keys should be readable by the user only. Accomplish this
-on Linux and macOS by running: `chmod 0400 ~/.ssh/<example_ssh_key>` and
-`chmod 0400 ~/.ssh/<example_sh_key.pub>`.
+- For the `Host`, use an alias like `user_1.gitlab.com` and
+ `user_2.gitlab.com`. Advanced configurations
+ are more difficult to maintain, and these strings are easier to
+ understand when you use tools like `git remote`.
+- For the `IdentityFile`, use the path the private key.
```conf
# User1 Account Identity
@@ -316,59 +295,60 @@ Host <user_2.gitlab.com>
IdentityFile ~/.ssh/<example_ssh_key2>
```
-NOTE:
-The example `Host` aliases are defined as `user_1.gitlab.com` and
-`user_2.gitlab.com` for efficiency and transparency. Advanced configurations
-are more difficult to maintain; using this type of alias makes it easier to
-understand when using other tools such as `git remote` sub-commands. SSH
-would understand any string as a `Host` alias thus `Tanuki1` and `Tanuki2`,
-despite giving very little context as to where they point, would also work.
-
-Cloning the `gitlab` repository normally looks like this:
-
-```shell
-git clone git@gitlab.com:gitlab-org/gitlab.git
-```
-
-To clone it for `user_1`, replace `gitlab.com` with the SSH alias `user_1.gitlab.com`:
+Now, to clone a repository for `user_1`, use `user_1.gitlab.com` in the `git clone` command:
```shell
git clone git@<user_1.gitlab.com>:gitlab-org/gitlab.git
```
-Fix a previously cloned repository using the `git remote` command.
-
-The example below assumes the remote repository is aliased as `origin`.
+To update a previously-cloned repository that is aliased as `origin`:
```shell
git remote set-url origin git@<user_1.gitlab.com>:gitlab-org/gitlab.git
```
-## Deploy keys
+NOTE:
+Private and public keys contain sensitive data. Ensure the permissions
+on the files make them readable to you but not accessible to others.
-Read the [documentation on deploy keys](../user/project/deploy_keys/index.md).
+## Configure two-factor authentication (2FA)
-## Applications
+You can set up two-factor authentication (2FA) for
+[Git over SSH](../security/two_factor_authentication.md#two-factor-authentication-2fa-for-git-over-ssh-operations).
-### Eclipse
+## Use EGit on Eclipse
If you are using [EGit](https://www.eclipse.org/egit/), you can [add your SSH key to Eclipse](https://wiki.eclipse.org/EGit/User_Guide#Eclipse_SSH_Configuration).
-## SSH on the GitLab server
+## Use SSH on Microsoft Windows
+
+If you're running Windows 10, you can use the [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install-win10)
+with [WSL 2](https://docs.microsoft.com/en-us/windows/wsl/install-win10#update-to-wsl-2).
+You can use WSL to install Linux distributions, which include the Git and SSH clients.
-GitLab integrates with the system-installed SSH daemon, designating a user
+For other versions of Windows, you can install the Git and SSH clients by using
+[Git for Windows](https://gitforwindows.org).
+
+Alternative tools include:
+
+- [Cygwin](https://www.cygwin.com)
+- [PuttyGen](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
+
+## Overriding SSH settings on the GitLab server
+
+GitLab integrates with the system-installed SSH daemon and designates a user
(typically named `git`) through which all access requests are handled. Users
-connecting to the GitLab server over SSH are identified by their SSH key instead
+who connect to the GitLab server over SSH are identified by their SSH key instead
of their username.
SSH *client* operations performed on the GitLab server are executed as this
-user. Although it is possible to modify the SSH configuration for this user to,
-e.g., provide a private SSH key to authenticate these requests by, this practice
+user. You can modify this SSH configuration. For example, you can specify
+a private SSH key for this user to use for authentication requests. However, this practice
is **not supported** and is strongly discouraged as it presents significant
security risks.
-The GitLab check process includes a check for this condition, and directs you
-to this section if your server is configured like this, for example:
+GitLab checks for this condition, and directs you
+to this section if your server is configured this way. For example:
```shell
$ gitlab-rake gitlab:check
@@ -383,30 +363,16 @@ Git user has default SSH configuration? ... no
Please fix the error above and rerun the checks.
```
-Remove the custom configuration as soon as you're able to. These customizations
-are *explicitly not supported* and may stop working at any time.
-
-### Options for Microsoft Windows
-
-If you're running Windows 10, the [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install-win10), and its latest [WSL 2](https://docs.microsoft.com/en-us/windows/wsl/install-win10#update-to-wsl-2) version,
-support the installation of different Linux distributions, which include the Git and SSH clients.
-
-For current versions of Windows, you can also install the Git and SSH clients with
-[Git for Windows](https://gitforwindows.org).
-
-Alternative tools include:
-
-- [Cygwin](https://www.cygwin.com)
-- [PuttyGen](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
+Remove the custom configuration as soon as you can. These customizations
+are **explicitly not supported** and may stop working at any time.
-## Troubleshooting
+## Troubleshooting SSH connections
-If on Git clone you are prompted for a password like `git@gitlab.com's password:`
-something is wrong with your SSH setup.
+When you run `git clone`, you may be prompted for a password, like `git@gitlab.example.com's password:`.
+This indicates that something is wrong with your SSH setup.
- Ensure that you generated your SSH key pair correctly and added the public SSH
- key to your GitLab profile
-- Try manually registering your private SSH key using `ssh-agent` as documented
- earlier in this document
-- Try to debug the connection by running `ssh -Tv git@example.com`
- (replacing `example.com` with your GitLab domain)
+ key to your GitLab profile.
+- Try to manually register your private SSH key by using `ssh-agent`.
+- Try to debug the connection by running `ssh -Tv git@example.com`.
+ Replace `example.com` with your GitLab URL.
diff --git a/doc/subscriptions/bronze_starter.md b/doc/subscriptions/bronze_starter.md
index 8b223953007..a43bb4498de 100644
--- a/doc/subscriptions/bronze_starter.md
+++ b/doc/subscriptions/bronze_starter.md
@@ -20,7 +20,7 @@ the tiers are no longer mentioned in GitLab documentation:
[per-group charts](../user/project/milestones/index.md#group-burndown-charts)
- [Code owners](../user/project/code_owners.md)
- Description templates:
- - [Setting a default template for merge requests and issues](../user/project/description_templates.md#setting-a-default-template-for-merge-requests-and-issues)
+ - [Setting a default template for merge requests and issues](../user/project/description_templates.md#set-a-default-template-for-merge-requests-and-issues)
- [Email from GitLab](../tools/email.md)
- Groups:
- [Creating group memberships via CN](../user/group/index.md#creating-group-links-via-cn)
diff --git a/doc/topics/autodevops/customize.md b/doc/topics/autodevops/customize.md
index b7f2a0768ef..56d84657534 100644
--- a/doc/topics/autodevops/customize.md
+++ b/doc/topics/autodevops/customize.md
@@ -17,7 +17,7 @@ staging and canary deployments,
## Custom buildpacks
If the automatic buildpack detection fails for your project, or if you want to
-use a custom buildpack, you can override the buildpack using a project variable
+use a custom buildpack, you can override the buildpack using a project CI/CD variable
or a `.buildpacks` file in your project:
- **Project variable** - Create a project variable `BUILDPACK_URL` with the URL
@@ -43,7 +43,7 @@ can't use the `.buildpacks` file. The buildpack
in the backend to parse the `.buildpacks` file, does not provide the necessary commands
`bin/test-compile` and `bin/test`.
-If your goal is to use only a single custom buildpack, you should provide the project variable
+If your goal is to use only a single custom buildpack, you should provide the project CI/CD variable
`BUILDPACK_URL` instead.
## Custom `Dockerfile`
@@ -55,13 +55,13 @@ builds a Docker image based on the Dockerfile, rather than using buildpacks.
This can be much faster and result in smaller images, especially if your
Dockerfile is based on [Alpine](https://hub.docker.com/_/alpine/).
-If you set the `DOCKERFILE_PATH` CI variable, Auto Build looks for a Dockerfile there
+If you set the `DOCKERFILE_PATH` CI/CD variable, Auto Build looks for a Dockerfile there
instead.
## Passing arguments to `docker build`
Arguments can be passed to the `docker build` command using the
-`AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS` project variable. For example, to build a
+`AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS` project CI/CD variable. For example, to build a
Docker image based on based on the `ruby:alpine` instead of the default `ruby:latest`:
1. Set `AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS` to `--build-arg=RUBY_VERSION=alpine`.
@@ -93,12 +93,12 @@ You can extend and manage your Auto DevOps configuration with GitLab APIs:
- [Editing groups](../../api/groups.md#update-group).
- [Editing projects](../../api/projects.md#edit-project).
-## Forward CI variables to the build environment
+## Forward CI/CD variables to the build environment
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/25514) in GitLab 12.3, but available in versions 11.9 and above.
-CI variables can be forwarded into the build environment using the
-`AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES` CI variable.
+CI/CD variables can be forwarded into the build environment using the
+`AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES` CI/CD variable.
The forwarded variables should be specified by name in a comma-separated
list. For example, to forward the variables `CI_COMMIT_SHA` and
`CI_ENVIRONMENT_NAME`, set `AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES`
@@ -130,7 +130,7 @@ feature to use the `--secret` flag.
Auto DevOps uses [Helm](https://helm.sh/) to deploy your application to Kubernetes.
You can override the Helm chart used by bundling up a chart into your project
-repository or by specifying a project variable:
+repository or by specifying a project CI/CD variable:
- **Bundled chart** - If your project has a `./chart` directory with a `Chart.yaml`
file in it, Auto DevOps detects the chart and uses it instead of the
@@ -151,17 +151,17 @@ You can override the default values in the `values.yaml` file in the
- Adding a file named `.gitlab/auto-deploy-values.yaml` to your repository, which is
automatically used, if found.
- Adding a file with a different name or path to the repository, and setting the
- `HELM_UPGRADE_VALUES_FILE` [environment variable](#environment-variables) with
+ `HELM_UPGRADE_VALUES_FILE` [CI/CD variable](#cicd-variables) with
the path and name.
NOTE:
-For GitLab 12.5 and earlier, use the `HELM_UPGRADE_EXTRA_ARGS` environment variable
+For GitLab 12.5 and earlier, use the `HELM_UPGRADE_EXTRA_ARGS` variable
to override the default chart values by setting `HELM_UPGRADE_EXTRA_ARGS` to `--values <my-values.yaml>`.
## Customize the `helm upgrade` command
You can customize the `helm upgrade` command used in the [auto-deploy-image](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image)
-by passing options to the command with the `HELM_UPGRADE_EXTRA_ARGS` variable.
+by passing options to the command with the `HELM_UPGRADE_EXTRA_ARGS` CI/CD variable.
For example, set the value of `HELM_UPGRADE_EXTRA_ARGS` to `--no-hooks` to disable
pre-upgrade and post-upgrade hooks when the command is executed.
@@ -170,7 +170,7 @@ list of options.
## Custom Helm chart per environment
-You can specify the use of a custom Helm chart per environment by scoping the environment variable
+You can specify the use of a custom Helm chart per environment by scoping the CI/CD variable
to the desired environment. See [Limiting environment scopes of variables](../../ci/variables/README.md#limit-the-environment-scopes-of-cicd-variables).
## Customizing `.gitlab-ci.yml`
@@ -260,7 +260,7 @@ the [GitLab 12.10 based templates](https://gitlab.com/gitlab-org/auto-devops-v12
To support applications requiring a database,
[PostgreSQL](https://www.postgresql.org/) is provisioned by default. The credentials to access
the database are preconfigured, but can be customized by setting the associated
-[variables](#environment-variables). You can use these credentials to define a `DATABASE_URL`:
+[CI/CD variables](#cicd-variables). You can use these credentials to define a `DATABASE_URL`:
```yaml
postgres://user:password@postgres-host:postgres-port/postgres-database
@@ -269,7 +269,7 @@ postgres://user:password@postgres-host:postgres-port/postgres-database
### Upgrading PostgresSQL
WARNING:
-The variable `AUTO_DEVOPS_POSTGRES_CHANNEL` that controls default provisioned
+The CI/CD variable `AUTO_DEVOPS_POSTGRES_CHANNEL` that controls default provisioned
PostgreSQL was changed to `2` in [GitLab 13.0](https://gitlab.com/gitlab-org/gitlab/-/issues/210499).
To keep using the old PostgreSQL, set the `AUTO_DEVOPS_POSTGRES_CHANNEL` variable to
`1`.
@@ -290,17 +290,17 @@ production environments, for some use cases, it may not be sufficiently secure o
resilient, and you may want to use an external managed provider (such as
AWS Relational Database Service) for PostgreSQL.
-You must define environment-scoped variables for `POSTGRES_ENABLED` and
+You must define environment-scoped CI/CD variables for `POSTGRES_ENABLED` and
`DATABASE_URL` in your project's CI/CD settings:
1. Disable the built-in PostgreSQL installation for the required environments using
- scoped [environment variables](../../ci/environments/index.md#scoping-environments-with-specs).
+ environment-scoped [CI/CD variables](../../ci/environments/index.md#scoping-environments-with-specs).
For this use case, it's likely that only `production` must be added to this
list. The built-in PostgreSQL setup for Review Apps and staging is sufficient.
![Auto Metrics](img/disable_postgres.png)
-1. Define the `DATABASE_URL` CI variable as a scoped environment variable that is
+1. Define the `DATABASE_URL` variable as an environment-scoped variable that is
available to your application. This should be a URL in the following format:
```yaml
@@ -310,7 +310,7 @@ You must define environment-scoped variables for `POSTGRES_ENABLED` and
You must ensure that your Kubernetes cluster has network access to wherever
PostgreSQL is hosted.
-## Environment variables
+## CI/CD variables
The following variables can be used for setting up the Auto DevOps domain,
providing a custom Helm chart, or scaling your application. PostgreSQL can
@@ -318,10 +318,10 @@ also be customized, and you can use a [custom buildpack](#custom-buildpacks).
### Build and deployment
-The following table lists variables related to building and deploying
+The following table lists CI/CD variables related to building and deploying
applications.
-| **Variable** | **Description** |
+| **CI/CD Variable** | **Description** |
|-----------------------------------------|------------------------------------|
| `ADDITIONAL_HOSTS` | Fully qualified domain names specified as a comma-separated list that are added to the Ingress hosts. |
| `<ENVIRONMENT>_ADDITIONAL_HOSTS` | For a specific environment, the fully qualified domain names specified as a comma-separated list that are added to the Ingress hosts. This takes precedence over `ADDITIONAL_HOSTS`. |
@@ -329,7 +329,7 @@ applications.
| `AUTO_DEVOPS_BUILD_IMAGE_CNB_ENABLED` | When set to a non-empty value and no `Dockerfile` is present, Auto Build builds your application using Cloud Native Buildpacks instead of Herokuish. [More details](stages.md#auto-build-using-cloud-native-buildpacks-beta). |
| `AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDER` | The builder used when building with Cloud Native Buildpacks. The default builder is `heroku/buildpacks:18`. [More details](stages.md#auto-build-using-cloud-native-buildpacks-beta). |
| `AUTO_DEVOPS_BUILD_IMAGE_EXTRA_ARGS` | Extra arguments to be passed to the `docker build` command. Note that using quotes doesn't prevent word splitting. [More details](#passing-arguments-to-docker-build). |
-| `AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES` | A [comma-separated list of CI variable names](#forward-ci-variables-to-the-build-environment) to be forwarded to the build environment (the buildpack builder or `docker build`). |
+| `AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES` | A [comma-separated list of CI/CD variable names](#forward-cicd-variables-to-the-build-environment) to be forwarded to the build environment (the buildpack builder or `docker build`). |
| `AUTO_DEVOPS_CHART` | Helm Chart used to deploy your apps. Defaults to the one [provided by GitLab](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image/-/tree/master/assets/auto-deploy-app). |
| `AUTO_DEVOPS_CHART_REPOSITORY` | Helm Chart repository used to search for charts. Defaults to `https://charts.gitlab.io`. |
| `AUTO_DEVOPS_CHART_REPOSITORY_NAME` | From GitLab 11.11, used to set the name of the Helm repository. Defaults to `gitlab`. |
@@ -367,9 +367,9 @@ Auto DevOps can undo your changes.
### Database
-The following table lists variables related to the database.
+The following table lists CI/CD variables related to the database.
-| **Variable** | **Description** |
+| **CI/CD Variable** | **Description** |
|-----------------------------------------|------------------------------------|
| `DB_INITIALIZE` | From GitLab 11.4, used to specify the command to run to initialize the application's PostgreSQL database. Runs inside the application pod. |
| `DB_MIGRATE` | From GitLab 11.4, used to specify the command to run to migrate the application's PostgreSQL database. Runs inside the application pod. |
@@ -383,7 +383,7 @@ The following table lists variables related to the database.
The following table lists variables used to disable jobs.
-| **Job Name** | **Variable** | **GitLab version** | **Description** |
+| **Job Name** | **CI/CDVariable** | **GitLab version** | **Description** |
|----------------------------------------|---------------------------------|-----------------------|-----------------|
| `.fuzz_base` | `COVFUZZ_DISABLED` | [From GitLab 13.2](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/34984) | [Read more](../../user/application_security/coverage_fuzzing/) about how `.fuzz_base` provide capability for your own jobs. If the variable is present, your jobs aren't created. |
| `apifuzzer_fuzz` | `API_FUZZING_DISABLED` | [From GitLab 13.3](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39135) | If the variable is present, the job isn't created. |
@@ -433,7 +433,7 @@ The following table lists variables used to disable jobs.
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/49056) in GitLab 11.7.
Some applications need to define secret variables that are accessible by the deployed
-application. Auto DevOps detects variables starting with `K8S_SECRET_`, and makes
+application. Auto DevOps detects CI/CD variables starting with `K8S_SECRET_`, and makes
these prefixed variables available to the deployed application as environment variables.
To configure your application variables:
@@ -545,7 +545,7 @@ The normal behavior of Auto DevOps is to use continuous deployment, pushing
automatically to the `production` environment every time a new pipeline is run
on the default branch. However, there are cases where you might want to use a
staging environment, and deploy to production manually. For this scenario, the
-`STAGING_ENABLED` environment variable was introduced.
+`STAGING_ENABLED` CI/CD variable was introduced.
If you define `STAGING_ENABLED` with a non-empty value, then GitLab automatically deploys the application
to a `staging` environment, and creates a `production_manual` job for
@@ -584,7 +584,7 @@ are created:
1. `rollout 50%`
1. `rollout 100%`
-The percentage is based on the `REPLICAS` variable, and defines the number of
+The percentage is based on the `REPLICAS` CI/CD variable, and defines the number of
pods you want to have for your deployment. If the value is `10`, and you run the
`10%` rollout job, there is `1` new pod and `9` old ones.
@@ -616,8 +616,8 @@ With `INCREMENTAL_ROLLOUT_MODE` set to `manual` and with `STAGING_ENABLED`
![Rollout and staging enabled](img/rollout_staging_enabled.png)
WARNING:
-Before GitLab 11.4, the presence of the `INCREMENTAL_ROLLOUT_ENABLED` environment
-variable enabled this feature. This configuration is deprecated, and is scheduled to be
+Before GitLab 11.4, the presence of the `INCREMENTAL_ROLLOUT_ENABLED` CI/CD variable
+enabled this feature. This configuration is deprecated, and is scheduled to be
removed in the future.
### Timed incremental rollout to production **(PREMIUM)**
@@ -632,7 +632,7 @@ This configuration is based on
Everything behaves the same way, except:
-- To enable it, set the `INCREMENTAL_ROLLOUT_MODE` variable to `timed`.
+- To enable it, set the `INCREMENTAL_ROLLOUT_MODE` CI/CD variable to `timed`.
- Instead of the standard `production` job, the following jobs are created with
a 5 minute delay between each:
diff --git a/doc/topics/autodevops/img/alexj_autodevops_min_v13_8.png b/doc/topics/autodevops/img/alexj_autodevops_min_v13_8.png
deleted file mode 100644
index 7dc37737835..00000000000
--- a/doc/topics/autodevops/img/alexj_autodevops_min_v13_8.png
+++ /dev/null
Binary files differ
diff --git a/doc/topics/autodevops/img/kai_autodevops_min_v13_8.png b/doc/topics/autodevops/img/kai_autodevops_min_v13_8.png
deleted file mode 100644
index fa3ab4c1820..00000000000
--- a/doc/topics/autodevops/img/kai_autodevops_min_v13_8.png
+++ /dev/null
Binary files differ
diff --git a/doc/topics/autodevops/index.md b/doc/topics/autodevops/index.md
index d95e5568e0b..44072147fde 100644
--- a/doc/topics/autodevops/index.md
+++ b/doc/topics/autodevops/index.md
@@ -6,50 +6,36 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# Auto DevOps **(FREE)**
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/37115) in GitLab 10.0.
> - Generally available on GitLab 11.0.
-Auto DevOps are default CI/CD templates that auto-discover the source code you have. They
-enable GitLab to automatically detect, build, test, deploy, and monitor your applications.
-Leveraging [CI/CD best practices](../../ci/pipelines/pipeline_efficiency.md) and tools,
-Auto DevOps aims to simplify the setup and execution of a mature and modern software
-development lifecycle.
+GitLab Auto DevOps helps to reduce the complexity of software delivery by
+setting up pipelines and integrations for you. Instead of requiring you to
+manually configure your entire GitLab environment, Auto DevOps configures
+many of these areas for you, including security auditing and vulnerability
+testing.
-## Overview
+Using Auto DevOps, you can:
-You can spend a lot of effort to set up the workflow and processes required to
-build, deploy, and monitor your project. It gets worse when your company has
-hundreds, if not thousands, of projects to maintain. With new projects
-constantly starting up, the entire software development process becomes
-impossibly complex to manage.
+- Detect the language of your code.
+- Automatically build, test, and measure code quality.
+- Scan for potential vulnerabilities, security flaws, and licensing issues.
+- Monitor in real-time.
+- Deploy your application.
-Auto DevOps provides you a seamless software development process by
-automatically detecting all dependencies and language technologies required to
-test, build, package, deploy, and monitor every project with minimal
-configuration. Automation enables consistency across your projects, seamless
-management of processes, and faster creation of new projects: push your code,
-and GitLab does the rest, improving your productivity and efficiency.
+The functionality of Auto DevOps is based on default CI/CD templates that
+auto-discover your source code. These templates enable GitLab to provide
+consistency across your projects, seamless management of processes, and faster
+creation of new projects. Leveraging [CI/CD best practices](../../ci/pipelines/pipeline_efficiency.md)
+and tools, Auto DevOps lets you push your code, with GitLab doing the rest,
+improving your productivity and efficiency.
<i class="fa fa-youtube-play youtube" aria-hidden="true"></i>
-For an introduction to Auto DevOps, watch [AutoDevOps in GitLab 11.0](https://youtu.be/0Tc0YYBxqi4).
+For an introduction to Auto DevOps, watch [AutoDevOps in GitLab 11.0](https://youtu.be/0Tc0YYBxqi4) or see this [overview](https://about.gitlab.com/stages-devops-lifecycle/auto-devops/).
For requirements, read [Requirements for Auto DevOps](requirements.md) for more information.
For a developer's guide, read [Auto DevOps development guide](../../development/auto_devops.md).
-### Share your feedback
-
-As Auto DevOps continues to gain popularity, and lowers the barrier to entry for
-getting started with DevOps and CI/CD, see what our wider community is saying:
-
-From [AlexJonesax](https://twitter.com/AlexJonesax) and [KaiPMDH](https://twitter.com/KaiPMDH) on Twitter:
-
-![Alex on Twitter: Auto DevOps in GitLab doesn't just lower the bar to entry, it removes the bar and holds your hand.](img/alexj_autodevops_min_v13_8.png)
-
-![Kai on Twitter: When I saw this on the Auto DevOps stuff, my mind was blown...](img/kai_autodevops_min_v13_8.png)
-
-We welcome everyone to [share your experience by tagging GitLab on Twitter](https://twitter.com/gitlab).
-
## Enabled by default
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/41729) in GitLab 11.3.
@@ -162,7 +148,7 @@ any of the following places:
[groups](../../user/group/clusters/index.md#base-domain)
- or at the project level as a variable: `KUBE_INGRESS_BASE_DOMAIN`
- or at the group level as a variable: `KUBE_INGRESS_BASE_DOMAIN`
-- or as an instance-wide fallback in **Admin Area > Settings** under the
+- or as an instance-wide fallback in **Admin Area > Settings > CI/CD** under the
**Continuous Integration and Delivery** section
The base domain variable `KUBE_INGRESS_BASE_DOMAIN` follows the same order of precedence
@@ -238,7 +224,7 @@ To enable or disable Auto DevOps at the group level:
Even when disabled at the instance level, group owners and project maintainers can still enable
Auto DevOps at the group and project level, respectively.
-1. Go to **Admin Area > Settings > Continuous Integration and Deployment**.
+1. Go to **Admin Area > Settings > CI/CD > Continuous Integration and Deployment**.
1. Select **Default to Auto DevOps pipeline for all projects** to enable it.
1. (Optional) You can set up the Auto DevOps [base domain](#auto-devops-base-domain),
for Auto Deploy and Auto Review Apps to use.
@@ -348,246 +334,3 @@ spec:
- name: https_proxy
value: "PUT_YOUR_HTTPS_PROXY_HERE"
```
-
-## Troubleshooting
-
-### Unable to select a buildpack
-
-Auto Build and Auto Test may fail to detect your language or framework with the
-following error:
-
-```plaintext
-Step 5/11 : RUN /bin/herokuish buildpack build
- ---> Running in eb468cd46085
- -----> Unable to select a buildpack
-The command '/bin/sh -c /bin/herokuish buildpack build' returned a non-zero code: 1
-```
-
-The following are possible reasons:
-
-- Your application may be missing the key files the buildpack is looking for.
- Ruby applications require a `Gemfile` to be properly detected,
- even though it's possible to write a Ruby app without a `Gemfile`.
-- No buildpack may exist for your application. Try specifying a
- [custom buildpack](customize.md#custom-buildpacks).
-
-### Pipeline that extends Auto DevOps with only / except fails
-
-If your pipeline fails with the following message:
-
-```plaintext
-Found errors in your .gitlab-ci.yml:
-
- jobs:test config key may not be used with `rules`: only
-```
-
-This error appears when the included job’s rules configuration has been overridden with the `only` or `except` syntax.
-To fix this issue, you must either:
-
-- Transition your `only/except` syntax to rules.
-- (Temporarily) Pin your templates to the [GitLab 12.10 based templates](https://gitlab.com/gitlab-org/auto-devops-v12-10).
-
-### Failure to create a Kubernetes namespace
-
-Auto Deploy fails if GitLab can't create a Kubernetes namespace and
-service account for your project. For help debugging this issue, see
-[Troubleshooting failed deployment jobs](../../user/project/clusters/index.md#troubleshooting).
-
-### Detected an existing PostgreSQL database
-
-After upgrading to GitLab 13.0, you may encounter this message when deploying
-with Auto DevOps:
-
-```plaintext
-Detected an existing PostgreSQL database installed on the
-deprecated channel 1, but the current channel is set to 2. The default
-channel changed to 2 in of GitLab 13.0.
-[...]
-```
-
-Auto DevOps, by default, installs an in-cluster PostgreSQL database alongside
-your application. The default installation method changed in GitLab 13.0, and
-upgrading existing databases requires user involvement. The two installation
-methods are:
-
-- **channel 1 (deprecated):** Pulls in the database as a dependency of the associated
- Helm chart. Only supports Kubernetes versions up to version 1.15.
-- **channel 2 (current):** Installs the database as an independent Helm chart. Required
- for using the in-cluster database feature with Kubernetes versions 1.16 and greater.
-
-If you receive this error, you can do one of the following actions:
-
-- You can *safely* ignore the warning and continue using the channel 1 PostgreSQL
- database by setting `AUTO_DEVOPS_POSTGRES_CHANNEL` to `1` and redeploying.
-
-- You can delete the channel 1 PostgreSQL database and install a fresh channel 2
- database by setting `AUTO_DEVOPS_POSTGRES_DELETE_V1` to a non-empty value and
- redeploying.
-
- WARNING:
- Deleting the channel 1 PostgreSQL database permanently deletes the existing
- channel 1 database and all its data. See
- [Upgrading PostgreSQL](upgrading_postgresql.md)
- for more information on backing up and upgrading your database.
-
-- If you are not using the in-cluster database, you can set
- `POSTGRES_ENABLED` to `false` and re-deploy. This option is especially relevant to
- users of *custom charts without the in-chart PostgreSQL dependency*.
- Database auto-detection is based on the `postgresql.enabled` Helm value for
- your release. This value is set based on the `POSTGRES_ENABLED` CI variable
- and persisted by Helm, regardless of whether or not your chart uses the
- variable.
-
-WARNING:
-Setting `POSTGRES_ENABLED` to `false` permanently deletes any existing
-channel 1 database for your environment.
-
-### Error: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
-
-After upgrading your Kubernetes cluster to [v1.16+](stages.md#kubernetes-116),
-you may encounter this message when deploying with Auto DevOps:
-
-```plaintext
-UPGRADE FAILED
-Error: failed decoding reader into objects: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
-```
-
-This can occur if your current deployments on the environment namespace were deployed with a
-deprecated/removed API that doesn't exist in Kubernetes v1.16+. For example,
-if [your in-cluster PostgreSQL was installed in a legacy way](#detected-an-existing-postgresql-database),
-the resource was created via the `extensions/v1beta1` API. However, the deployment resource
-was moved to the `app/v1` API in v1.16.
-
-To recover such outdated resources, you must convert the current deployments by mapping legacy APIs
-to newer APIs. There is a helper tool called [`mapkubeapis`](https://github.com/hickeyma/helm-mapkubeapis)
-that works for this problem. Follow these steps to use the tool in Auto DevOps:
-
-1. Modify your `.gitlab-ci.yml` with:
-
- ```yaml
- include:
- - template: Auto-DevOps.gitlab-ci.yml
- - remote: https://gitlab.com/shinya.maeda/ci-templates/-/raw/master/map-deprecated-api.gitlab-ci.yml
-
- variables:
- HELM_VERSION_FOR_MAPKUBEAPIS: "v2" # If you're using auto-depoy-image v2 or above, please specify "v3".
- ```
-
-1. Run the job `<environment-name>:map-deprecated-api`. Ensure that this job succeeds before moving
- to the next step. You should see something like the following output:
-
- ```shell
- 2020/10/06 07:20:49 Found deprecated or removed Kubernetes API:
- "apiVersion: extensions/v1beta1
- kind: Deployment"
- Supported API equivalent:
- "apiVersion: apps/v1
- kind: Deployment"
- ```
-
-1. Revert your `.gitlab-ci.yml` to the previous version. You no longer need to include the
- supplemental template `map-deprecated-api`.
-
-1. Continue the deployments as usual.
-
-### Error: error initializing: Looks like "https://kubernetes-charts.storage.googleapis.com" is not a valid chart repository or cannot be reached
-
-As [announced in the official CNCF blog post](https://www.cncf.io/blog/2020/10/07/important-reminder-for-all-helm-users-stable-incubator-repos-are-deprecated-and-all-images-are-changing-location/),
-the stable Helm chart repository was deprecated and removed on November 13th, 2020.
-You may encounter this error after that date.
-
-Some GitLab features had dependencies on the stable chart. To mitigate the impact, we changed them
-to use new official repositories or the [Helm Stable Archive repository maintained by GitLab](https://gitlab.com/gitlab-org/cluster-integration/helm-stable-archive).
-Auto Deploy contains [an example fix](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image/-/merge_requests/127).
-
-In Auto Deploy, `v1.0.6+` of `auto-deploy-image` no longer adds the deprecated stable repository to
-the `helm` command. If you use a custom chart and it relies on the deprecated stable repository,
-specify an older `auto-deploy-image` like this example:
-
-```yaml
-include:
- - template: Auto-DevOps.gitlab-ci.yml
-
-.auto-deploy:
- image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.5"
-```
-
-Keep in mind that this approach stops working when the stable repository is removed,
-so you must eventually fix your custom chart.
-
-To fix your custom chart:
-
-1. In your chart directory, update the `repository` value in your `requirements.yaml` file from :
-
- ```yaml
- repository: "https://kubernetes-charts.storage.googleapis.com/"
- ```
-
- to:
-
- ```yaml
- repository: "https://charts.helm.sh/stable"
- ```
-
-1. In your chart directory, run `helm dep update .` using the same Helm major version as Auto DevOps.
-1. Commit the changes for the `requirements.yaml` file.
-1. If you previously had a `requirements.lock` file, commit the changes to the file.
- If you did not previously have a `requirements.lock` file in your chart,
- you do not need to commit the new one. This file is optional, but when present,
- it's used to verify the integrity of the downloaded dependencies.
-
-You can find more information in
-[issue #263778, "Migrate PostgreSQL from stable Helm repository"](https://gitlab.com/gitlab-org/gitlab/-/issues/263778).
-
-### Error: release .... failed: timed out waiting for the condition
-
-When getting started with Auto DevOps, you may encounter this error when first
-deploying your application:
-
-```plaintext
-INSTALL FAILED
-PURGING CHART
-Error: release staging failed: timed out waiting for the condition
-```
-
-This is most likely caused by a failed liveness (or readiness) probe attempted
-during the deployment process. By default, these probes are run against the root
-page of the deployed application on port 5000. If your application isn't configured
-to serve anything at the root page, or is configured to run on a specific port
-*other* than 5000, this check fails.
-
-If it fails, you should see these failures in the events for the relevant
-Kubernetes namespace. These events look like the following example:
-
-```plaintext
-LAST SEEN TYPE REASON OBJECT MESSAGE
-3m20s Warning Unhealthy pod/staging-85db88dcb6-rxd6g Readiness probe failed: Get http://10.192.0.6:5000/: dial tcp 10.192.0.6:5000: connect: connection refused
-3m32s Warning Unhealthy pod/staging-85db88dcb6-rxd6g Liveness probe failed: Get http://10.192.0.6:5000/: dial tcp 10.192.0.6:5000: connect: connection refused
-```
-
-To change the port used for the liveness checks, pass
-[custom values to the Helm chart](customize.md#customize-values-for-helm-chart)
-used by Auto DevOps:
-
-1. Create a directory and file at the root of your repository named `.gitlab/auto-deploy-values.yaml`.
-
-1. Populate the file with the following content, replacing the port values with
- the actual port number your application is configured to use:
-
- ```yaml
- service:
- internalPort: <port_value>
- externalPort: <port_value>
- ```
-
-1. Commit your changes.
-
-After committing your changes, subsequent probes should use the newly-defined ports.
-The page that's probed can also be changed by overriding the `livenessProbe.path`
-and `readinessProbe.path` values (shown in the
-[default `values.yaml`](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image/-/blob/master/assets/auto-deploy-app/values.yaml)
-file) in the same fashion.
-
-## Development guides
-
-[Development guide for Auto DevOps](../../development/auto_devops.md)
diff --git a/doc/topics/autodevops/quick_start_guide.md b/doc/topics/autodevops/quick_start_guide.md
index cd951e53bd1..541f4ab57ab 100644
--- a/doc/topics/autodevops/quick_start_guide.md
+++ b/doc/topics/autodevops/quick_start_guide.md
@@ -234,8 +234,8 @@ takes you to the pod's logs page.
NOTE:
The example shows only one pod hosting the application at the moment, but you can add
-more pods by defining the [`REPLICAS` variable](customize.md#environment-variables)
-in **Settings > CI/CD > Environment variables**.
+more pods by defining the [`REPLICAS` CI/CD variable](customize.md#cicd-variables)
+in **Settings > CI / CD > Variables**.
### Work with branches
@@ -307,7 +307,7 @@ and customized to fit your workflow. Here are some helpful resources for further
1. [Auto DevOps](index.md)
1. [Multiple Kubernetes clusters](index.md#using-multiple-kubernetes-clusters)
1. [Incremental rollout to production](customize.md#incremental-rollout-to-production) **(PREMIUM)**
-1. [Disable jobs you don't need with environment variables](customize.md#environment-variables)
+1. [Disable jobs you don't need with CI/CD variables](customize.md#cicd-variables)
1. [Use a static IP for your cluster](../../user/clusters/applications.md#using-a-static-ip)
1. [Use your own buildpacks to build your application](customize.md#custom-buildpacks)
1. [Prometheus monitoring](../../user/project/integrations/prometheus.md)
diff --git a/doc/topics/autodevops/requirements.md b/doc/topics/autodevops/requirements.md
index 930938b7571..e27686ec239 100644
--- a/doc/topics/autodevops/requirements.md
+++ b/doc/topics/autodevops/requirements.md
@@ -109,8 +109,8 @@ After all requirements are met, you can [enable Auto DevOps](index.md#enablingdi
You can choose to target [AWS ECS](../../ci/cloud_deployment/index.md) as a deployment platform instead of using Kubernetes.
-To get started on Auto DevOps to AWS ECS, you must add a specific Environment
-Variable. To do so, follow these steps:
+To get started on Auto DevOps to AWS ECS, you must add a specific CI/CD variable.
+To do so, follow these steps:
1. In your project, go to **Settings > CI / CD** and expand the **Variables**
section.
@@ -121,7 +121,7 @@ Variable. To do so, follow these steps:
- `ECS` if you're not enforcing any launch type check when deploying to ECS.
When you trigger a pipeline, if you have Auto DevOps enabled and if you have correctly
-[entered AWS credentials as environment variables](../../ci/cloud_deployment/index.md#deploy-your-application-to-the-aws-elastic-container-service-ecs),
+[entered AWS credentials as variables](../../ci/cloud_deployment/index.md#deploy-your-application-to-the-aws-elastic-container-service-ecs),
your application is deployed to AWS ECS.
[GitLab Managed Apps](../../user/clusters/applications.md) are not available when deploying to AWS ECS.
@@ -145,7 +145,7 @@ own pipeline, as the override stops working when the name changes.
You can target [AWS EC2](../../ci/cloud_deployment/index.md)
as a deployment platform instead of Kubernetes. To use Auto DevOps with AWS EC2, you must add a
-specific environment variable.
+specific CI/CD variable.
For more details, see [Custom build job for Auto DevOps](../../ci/cloud_deployment/index.md#custom-build-job-for-auto-devops)
for deployments to AWS EC2.
diff --git a/doc/topics/autodevops/stages.md b/doc/topics/autodevops/stages.md
index f1244a1ad1b..9051f6926bf 100644
--- a/doc/topics/autodevops/stages.md
+++ b/doc/topics/autodevops/stages.md
@@ -53,7 +53,7 @@ For the requirements of other languages and frameworks, read the
NOTE:
If Auto Build fails despite the project meeting the buildpack requirements, set
-a project variable `TRACE=true` to enable verbose logging, which may help you
+a project CI/CD variable `TRACE=true` to enable verbose logging, which may help you
troubleshoot.
### Auto Build using Cloud Native Buildpacks (beta)
@@ -62,9 +62,9 @@ troubleshoot.
Auto Build supports building your application using [Cloud Native Buildpacks](https://buildpacks.io)
through the [`pack` command](https://github.com/buildpacks/pack). To use Cloud Native Buildpacks,
-set the CI variable `AUTO_DEVOPS_BUILD_IMAGE_CNB_ENABLED` to a non-empty
+set the CI/CD variable `AUTO_DEVOPS_BUILD_IMAGE_CNB_ENABLED` to a non-empty
value. The default builder is `heroku/buildpacks:18` but a different builder
-can be selected using the CI variable `AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDER`.
+can be selected using the CI/CD variable `AUTO_DEVOPS_BUILD_IMAGE_CNB_BUILDER`.
Cloud Native Buildpacks (CNBs) are an evolution of Heroku buildpacks, and
GitLab expects them to eventually supersede Herokuish-based builds within Auto DevOps. For more
@@ -103,7 +103,9 @@ NOTE:
Not all buildpacks supported by [Auto Build](#auto-build) are supported by Auto Test.
Auto Test uses [Herokuish](https://gitlab.com/gitlab-org/gitlab/-/issues/212689), *not*
Cloud Native Buildpacks, and only buildpacks that implement the
+<!-- vale gitlab.Spelling = NO -->
[Testpack API](https://devcenter.heroku.com/articles/testpack-api) are supported.
+<!-- vale gitlab.Spelling = YES -->
### Currently supported languages
@@ -284,7 +286,7 @@ see the documentation.
### Overriding the DAST target
To use a custom target instead of the auto-deployed review apps,
-set a `DAST_WEBSITE` environment variable to the URL for DAST to scan.
+set a `DAST_WEBSITE` CI/CD variable to the URL for DAST to scan.
WARNING:
If [DAST Full Scan](../../user/application_security/dast/index.md#full-scan) is
@@ -297,10 +299,10 @@ data loss or corruption.
You can disable DAST:
-- On all branches by setting the `DAST_DISABLED` environment variable to `"true"`.
+- On all branches by setting the `DAST_DISABLED` CI/CD variable to `"true"`.
- Only on the default branch by setting the `DAST_DISABLED_FOR_DEFAULT_BRANCH`
- environment variable to `"true"`.
-- Only on feature branches by setting `REVIEW_DISABLED` environment variable to
+ variable to `"true"`.
+- Only on feature branches by setting `REVIEW_DISABLED` variable to
`"true"`. This also disables the Review App.
## Auto Browser Performance Testing **(PREMIUM)**
@@ -336,7 +338,7 @@ uploads the report as an artifact.
Some initial setup is required. A [k6](https://k6.io/) test needs to be
written that's tailored to your specific application. The test also needs to be
-configured so it can pick up the environment's dynamic URL via an environment variable.
+configured so it can pick up the environment's dynamic URL via a CI/CD variable.
Any load performance test result differences between the source and target branches are also
[shown in the merge request widget](../../user/project/merge_requests/load_performance_testing.md).
@@ -356,7 +358,7 @@ default, but the
[Auto DevOps template](https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml)
contains job definitions for these tasks if you want to enable them.
-You can use [environment variables](customize.md#environment-variables) to automatically
+You can use [CI/CD variables](customize.md#cicd-variables) to automatically
scale your pod replicas, and to apply custom arguments to the Auto DevOps `helm upgrade`
commands. This is an easy way to
[customize the Auto Deploy Helm chart](customize.md#custom-helm-chart).
@@ -440,7 +442,7 @@ On GitLab 12.9 and 12.10, opting into
`AUTO_DEVOPS_POSTGRES_CHANNEL` version `2` deletes the version `1` PostgreSQL
database. Follow the [guide to upgrading PostgreSQL](upgrading_postgresql.md)
to back up and restore your database before opting into version `2` (On
-GitLab 13.0, an additional variable is required to trigger the database
+GitLab 13.0, an additional CI/CD variable is required to trigger the database
deletion).
### Migrations
@@ -448,7 +450,7 @@ deletion).
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/21955) in GitLab 11.4
You can configure database initialization and migrations for PostgreSQL to run
-within the application pod by setting the project variables `DB_INITIALIZE` and
+within the application pod by setting the project CI/CD variables `DB_INITIALIZE` and
`DB_MIGRATE` respectively.
If present, `DB_INITIALIZE` is run as a shell command within an application pod
@@ -500,7 +502,7 @@ access to a Redis instance. Auto DevOps doesn't deploy this instance for you, so
you must:
- Maintain your own Redis instance.
-- Set a CI variable `K8S_SECRET_REDIS_URL`, which is the URL of this instance,
+- Set a CI/CD variable `K8S_SECRET_REDIS_URL`, which is the URL of this instance,
to ensure it's passed into your deployments.
After configuring your worker to respond to health checks, run a Sidekiq
@@ -686,5 +688,5 @@ You can follow the [code intelligence epic](https://gitlab.com/groups/gitlab-org
for updates.
This stage is enabled by default. You can disable it by adding the
-`CODE_INTELLIGENCE_DISABLED` environment variable. Read more about
+`CODE_INTELLIGENCE_DISABLED` CI/CD variable. Read more about
[disabling Auto DevOps jobs](../../topics/autodevops/customize.md#disable-jobs).
diff --git a/doc/topics/autodevops/troubleshooting.md b/doc/topics/autodevops/troubleshooting.md
new file mode 100644
index 00000000000..e4d3a557995
--- /dev/null
+++ b/doc/topics/autodevops/troubleshooting.md
@@ -0,0 +1,247 @@
+---
+stage: Configure
+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
+---
+
+# Troubleshooting Auto DevOps **(FREE)**
+
+The information in this documentation page describes common errors when using
+Auto DevOps, and any available workarounds.
+
+## Unable to select a buildpack
+
+Auto Build and Auto Test may fail to detect your language or framework with the
+following error:
+
+```plaintext
+Step 5/11 : RUN /bin/herokuish buildpack build
+ ---> Running in eb468cd46085
+ -----> Unable to select a buildpack
+The command '/bin/sh -c /bin/herokuish buildpack build' returned a non-zero code: 1
+```
+
+The following are possible reasons:
+
+- Your application may be missing the key files the buildpack is looking for.
+ Ruby applications require a `Gemfile` to be properly detected,
+ even though it's possible to write a Ruby app without a `Gemfile`.
+- No buildpack may exist for your application. Try specifying a
+ [custom buildpack](customize.md#custom-buildpacks).
+
+## Pipeline that extends Auto DevOps with only / except fails
+
+If your pipeline fails with the following message:
+
+```plaintext
+Found errors in your .gitlab-ci.yml:
+
+ jobs:test config key may not be used with `rules`: only
+```
+
+This error appears when the included job’s rules configuration has been overridden with the `only` or `except` syntax.
+To fix this issue, you must either:
+
+- Transition your `only/except` syntax to rules.
+- (Temporarily) Pin your templates to the [GitLab 12.10 based templates](https://gitlab.com/gitlab-org/auto-devops-v12-10).
+
+## Failure to create a Kubernetes namespace
+
+Auto Deploy fails if GitLab can't create a Kubernetes namespace and
+service account for your project. For help debugging this issue, see
+[Troubleshooting failed deployment jobs](../../user/project/clusters/index.md#troubleshooting).
+
+## Detected an existing PostgreSQL database
+
+After upgrading to GitLab 13.0, you may encounter this message when deploying
+with Auto DevOps:
+
+```plaintext
+Detected an existing PostgreSQL database installed on the
+deprecated channel 1, but the current channel is set to 2. The default
+channel changed to 2 in of GitLab 13.0.
+[...]
+```
+
+Auto DevOps, by default, installs an in-cluster PostgreSQL database alongside
+your application. The default installation method changed in GitLab 13.0, and
+upgrading existing databases requires user involvement. The two installation
+methods are:
+
+- **channel 1 (deprecated):** Pulls in the database as a dependency of the associated
+ Helm chart. Only supports Kubernetes versions up to version 1.15.
+- **channel 2 (current):** Installs the database as an independent Helm chart. Required
+ for using the in-cluster database feature with Kubernetes versions 1.16 and greater.
+
+If you receive this error, you can do one of the following actions:
+
+- You can *safely* ignore the warning and continue using the channel 1 PostgreSQL
+ database by setting `AUTO_DEVOPS_POSTGRES_CHANNEL` to `1` and redeploying.
+
+- You can delete the channel 1 PostgreSQL database and install a fresh channel 2
+ database by setting `AUTO_DEVOPS_POSTGRES_DELETE_V1` to a non-empty value and
+ redeploying.
+
+ WARNING:
+ Deleting the channel 1 PostgreSQL database permanently deletes the existing
+ channel 1 database and all its data. See
+ [Upgrading PostgreSQL](upgrading_postgresql.md)
+ for more information on backing up and upgrading your database.
+
+- If you are not using the in-cluster database, you can set
+ `POSTGRES_ENABLED` to `false` and re-deploy. This option is especially relevant to
+ users of *custom charts without the in-chart PostgreSQL dependency*.
+ Database auto-detection is based on the `postgresql.enabled` Helm value for
+ your release. This value is set based on the `POSTGRES_ENABLED` CI variable
+ and persisted by Helm, regardless of whether or not your chart uses the
+ variable.
+
+WARNING:
+Setting `POSTGRES_ENABLED` to `false` permanently deletes any existing
+channel 1 database for your environment.
+
+## Error: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
+
+After upgrading your Kubernetes cluster to [v1.16+](stages.md#kubernetes-116),
+you may encounter this message when deploying with Auto DevOps:
+
+```plaintext
+UPGRADE FAILED
+Error: failed decoding reader into objects: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
+```
+
+This can occur if your current deployments on the environment namespace were deployed with a
+deprecated/removed API that doesn't exist in Kubernetes v1.16+. For example,
+if [your in-cluster PostgreSQL was installed in a legacy way](#detected-an-existing-postgresql-database),
+the resource was created via the `extensions/v1beta1` API. However, the deployment resource
+was moved to the `app/v1` API in v1.16.
+
+To recover such outdated resources, you must convert the current deployments by mapping legacy APIs
+to newer APIs. There is a helper tool called [`mapkubeapis`](https://github.com/hickeyma/helm-mapkubeapis)
+that works for this problem. Follow these steps to use the tool in Auto DevOps:
+
+1. Modify your `.gitlab-ci.yml` with:
+
+ ```yaml
+ include:
+ - template: Auto-DevOps.gitlab-ci.yml
+ - remote: https://gitlab.com/shinya.maeda/ci-templates/-/raw/master/map-deprecated-api.gitlab-ci.yml
+
+ variables:
+ HELM_VERSION_FOR_MAPKUBEAPIS: "v2" # If you're using auto-depoy-image v2 or above, please specify "v3".
+ ```
+
+1. Run the job `<environment-name>:map-deprecated-api`. Ensure that this job succeeds before moving
+ to the next step. You should see something like the following output:
+
+ ```shell
+ 2020/10/06 07:20:49 Found deprecated or removed Kubernetes API:
+ "apiVersion: extensions/v1beta1
+ kind: Deployment"
+ Supported API equivalent:
+ "apiVersion: apps/v1
+ kind: Deployment"
+ ```
+
+1. Revert your `.gitlab-ci.yml` to the previous version. You no longer need to include the
+ supplemental template `map-deprecated-api`.
+
+1. Continue the deployments as usual.
+
+## Error: error initializing: Looks like "https://kubernetes-charts.storage.googleapis.com" is not a valid chart repository or cannot be reached
+
+As [announced in the official CNCF blog post](https://www.cncf.io/blog/2020/10/07/important-reminder-for-all-helm-users-stable-incubator-repos-are-deprecated-and-all-images-are-changing-location/),
+the stable Helm chart repository was deprecated and removed on November 13th, 2020.
+You may encounter this error after that date.
+
+Some GitLab features had dependencies on the stable chart. To mitigate the impact, we changed them
+to use new official repositories or the [Helm Stable Archive repository maintained by GitLab](https://gitlab.com/gitlab-org/cluster-integration/helm-stable-archive).
+Auto Deploy contains [an example fix](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image/-/merge_requests/127).
+
+In Auto Deploy, `v1.0.6+` of `auto-deploy-image` no longer adds the deprecated stable repository to
+the `helm` command. If you use a custom chart and it relies on the deprecated stable repository,
+specify an older `auto-deploy-image` like this example:
+
+```yaml
+include:
+ - template: Auto-DevOps.gitlab-ci.yml
+
+.auto-deploy:
+ image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.5"
+```
+
+Keep in mind that this approach stops working when the stable repository is removed,
+so you must eventually fix your custom chart.
+
+To fix your custom chart:
+
+1. In your chart directory, update the `repository` value in your `requirements.yaml` file from :
+
+ ```yaml
+ repository: "https://kubernetes-charts.storage.googleapis.com/"
+ ```
+
+ to:
+
+ ```yaml
+ repository: "https://charts.helm.sh/stable"
+ ```
+
+1. In your chart directory, run `helm dep update .` using the same Helm major version as Auto DevOps.
+1. Commit the changes for the `requirements.yaml` file.
+1. If you previously had a `requirements.lock` file, commit the changes to the file.
+ If you did not previously have a `requirements.lock` file in your chart,
+ you do not need to commit the new one. This file is optional, but when present,
+ it's used to verify the integrity of the downloaded dependencies.
+
+You can find more information in
+[issue #263778, "Migrate PostgreSQL from stable Helm repository"](https://gitlab.com/gitlab-org/gitlab/-/issues/263778).
+
+## Error: release .... failed: timed out waiting for the condition
+
+When getting started with Auto DevOps, you may encounter this error when first
+deploying your application:
+
+```plaintext
+INSTALL FAILED
+PURGING CHART
+Error: release staging failed: timed out waiting for the condition
+```
+
+This is most likely caused by a failed liveness (or readiness) probe attempted
+during the deployment process. By default, these probes are run against the root
+page of the deployed application on port 5000. If your application isn't configured
+to serve anything at the root page, or is configured to run on a specific port
+*other* than 5000, this check fails.
+
+If it fails, you should see these failures in the events for the relevant
+Kubernetes namespace. These events look like the following example:
+
+```plaintext
+LAST SEEN TYPE REASON OBJECT MESSAGE
+3m20s Warning Unhealthy pod/staging-85db88dcb6-rxd6g Readiness probe failed: Get http://10.192.0.6:5000/: dial tcp 10.192.0.6:5000: connect: connection refused
+3m32s Warning Unhealthy pod/staging-85db88dcb6-rxd6g Liveness probe failed: Get http://10.192.0.6:5000/: dial tcp 10.192.0.6:5000: connect: connection refused
+```
+
+To change the port used for the liveness checks, pass
+[custom values to the Helm chart](customize.md#customize-values-for-helm-chart)
+used by Auto DevOps:
+
+1. Create a directory and file at the root of your repository named `.gitlab/auto-deploy-values.yaml`.
+
+1. Populate the file with the following content, replacing the port values with
+ the actual port number your application is configured to use:
+
+ ```yaml
+ service:
+ internalPort: <port_value>
+ externalPort: <port_value>
+ ```
+
+1. Commit your changes.
+
+After committing your changes, subsequent probes should use the newly-defined ports.
+The page that's probed can also be changed by overriding the `livenessProbe.path`
+and `readinessProbe.path` values (shown in the
+[default `values.yaml`](https://gitlab.com/gitlab-org/cluster-integration/auto-deploy-image/-/blob/master/assets/auto-deploy-app/values.yaml)
+file) in the same fashion.
diff --git a/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md b/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
index 5f8dfcdfc05..1fff935880c 100644
--- a/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
+++ b/doc/topics/autodevops/upgrading_auto_deploy_dependencies.md
@@ -114,7 +114,7 @@ If your Auto DevOps project has an active environment that was deployed with the
job saves a backup for 1 week in a job artifact called `helm-2-release-backups`.
The backup is in a Kubernetes manifest file that can be restored using
`kubectl apply -f $backup`.
-1. Remove the `MIGRATE_HELM_2TO3` variable.
+1. Remove the `MIGRATE_HELM_2TO3` CI/CD variable.
#### In-Cluster PostgreSQL Channel 2
@@ -145,11 +145,11 @@ steps to upgrade to v2:
them to `production` first to delete the unstable tracks.
1. Verify your project is [using the v2 `auto-deploy-image`](#verify-dependency-versions).
If not, [specify the version](#use-a-specific-version-of-auto-deploy-dependencies).
-1. Add an `AUTO_DEVOPS_FORCE_DEPLOY_V2` environment variable with a value of `true`
+1. Add an `AUTO_DEVOPS_FORCE_DEPLOY_V2` CI/CD variable with a value of `true`
in the GitLab CI/CD settings.
1. Create a new pipeline and run the `production` job to renew the resource architecture
with the v2 `auto-deploy-app chart`.
-1. Remove the `AUTO_DEVOPS_FORCE_DEPLOY_V2` environment variable.
+1. Remove the `AUTO_DEVOPS_FORCE_DEPLOY_V2` variable.
### Use a specific version of Auto Deploy dependencies
@@ -167,7 +167,7 @@ include:
### Ignore warnings and continue deploying
If you are certain that the new chart version is safe to be deployed, you can add
-the `AUTO_DEVOPS_FORCE_DEPLOY_V<major-version-number>` [environment variable](customize.md#build-and-deployment)
+the `AUTO_DEVOPS_FORCE_DEPLOY_V<major-version-number>` [CI/CD variable](customize.md#build-and-deployment)
to force the deployment to continue.
For example, if you want to deploy the `v2.0.0` chart on a deployment that previously
diff --git a/doc/topics/autodevops/upgrading_postgresql.md b/doc/topics/autodevops/upgrading_postgresql.md
index a0c4a41f90d..9a15475703a 100644
--- a/doc/topics/autodevops/upgrading_postgresql.md
+++ b/doc/topics/autodevops/upgrading_postgresql.md
@@ -34,7 +34,7 @@ involves:
so that the in-cluster database does not get modified after the database dump is created.
1. Ensure you have not set `POSTGRES_ENABLED` to `false`, as this setting deletes
any existing channel 1 database. For more information, see
- [Detected an existing PostgreSQL database](index.md#detected-an-existing-postgresql-database).
+ [Detected an existing PostgreSQL database](troubleshooting.md#detected-an-existing-postgresql-database).
NOTE:
If you have configured Auto DevOps to have staging,
diff --git a/doc/topics/git/index.md b/doc/topics/git/index.md
index 52e8a42de76..d6e1dcf0998 100644
--- a/doc/topics/git/index.md
+++ b/doc/topics/git/index.md
@@ -14,7 +14,7 @@ large projects with speed and efficiency.
[GitLab](https://about.gitlab.com) is a Git-based fully integrated platform for
software development. Besides Git's functionalities, GitLab has a lot of
powerful [features](https://about.gitlab.com/features/) to enhance your
-[workflow](https://about.gitlab.com/blog/2016/10/25/gitlab-workflow-an-overview/).
+[workflow](https://about.gitlab.com/topics/version-control/what-is-gitlab-workflow/).
We've gathered some resources to help you to get the best from Git with GitLab.
@@ -42,7 +42,7 @@ The following resources will help you get started with Git:
- [Git stash](../../university/training/topics/stash.md)
- [Git file blame](../../user/project/repository/git_blame.md)
- [Git file history](../../user/project/repository/git_history.md)
-- [Git tags](../../university/training/user_training.md#tags)
+- [Git tags](tags.md)
### Concepts
diff --git a/doc/topics/git/numerous_undo_possibilities_in_git/index.md b/doc/topics/git/numerous_undo_possibilities_in_git/index.md
index c263609125f..76fc9bc92b0 100644
--- a/doc/topics/git/numerous_undo_possibilities_in_git/index.md
+++ b/doc/topics/git/numerous_undo_possibilities_in_git/index.md
@@ -64,7 +64,7 @@ To avoid chaos with
development workflows have to be followed. It depends on your internal
workflow how certain changes or commits can be undone or changed.
-[GitLab Flow](https://about.gitlab.com/blog/2014/09/29/gitlab-flow/) provides a good
+[GitLab Flow](https://about.gitlab.com/topics/version-control/what-is-gitlab-flow/) provides a good
balance between developers clashing with each other while
developing the same feature and cooperating seamlessly. However, it does not enable
joined development of the same feature by multiple developers by default.
diff --git a/doc/topics/git/tags.md b/doc/topics/git/tags.md
new file mode 100644
index 00000000000..76e3cff3edc
--- /dev/null
+++ b/doc/topics/git/tags.md
@@ -0,0 +1,41 @@
+---
+stage: Create
+group: Source Code
+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
+---
+
+# Tags
+
+Tags are useful for marking certain deployments and releases for later
+reference. Git supports two types of tags:
+
+- Annotated tags: An unchangeable part of Git history.
+- Lightweight (soft) tags: Tags that can be set and removed as needed.
+
+Many projects combine an annotated release tag with a stable branch. Consider
+setting deployment or release tags automatically.
+
+## Tags sample workflow
+
+1. Create a lightweight tag.
+1. Create an annotated tag.
+1. Push the tags to the remote repository.
+
+```shell
+git checkout master
+
+# Lightweight tag
+git tag my_lightweight_tag
+
+# Annotated tag
+git tag -a v1.0 -m ‘Version 1.0’
+
+# Show list of the existing tags
+git tag
+
+git push origin --tags
+```
+
+## Additional resources
+
+- [Tagging](https://git-scm.com/book/en/v2/Git-Basics-Tagging) Git reference page
diff --git a/doc/topics/git/troubleshooting_git.md b/doc/topics/git/troubleshooting_git.md
index 528a9a4ba00..be4903e2cb9 100644
--- a/doc/topics/git/troubleshooting_git.md
+++ b/doc/topics/git/troubleshooting_git.md
@@ -45,7 +45,7 @@ set to 50MB. The default is 1MB.
**If pushing over SSH**, first check your SSH configuration as 'Broken pipe'
errors can sometimes be caused by underlying issues with SSH (such as
authentication). Make sure that SSH is correctly configured by following the
-instructions in the [SSH troubleshooting](../../ssh/README.md#troubleshooting) documentation.
+instructions in the [SSH troubleshooting](../../ssh/README.md#troubleshooting-ssh-connections) documentation.
If you're a GitLab administrator and have access to the server, you can also prevent
session timeouts by configuring SSH `keep alive` either on the client or on the server.
diff --git a/doc/university/index.md b/doc/university/index.md
index 8b6c2d834f9..0d194c7708d 100644
--- a/doc/university/index.md
+++ b/doc/university/index.md
@@ -55,7 +55,7 @@ The GitLab University curriculum is composed of GitLab videos, screencasts, pres
1. [Creating a Project in GitLab - Video](https://www.youtube.com/watch?v=7p0hrpNaJ14)
1. [How to Create Files and Directories](https://about.gitlab.com/blog/2016/02/10/feature-highlight-create-files-and-directories-from-files-page/)
1. [GitLab To-Do List](https://about.gitlab.com/blog/2016/03/02/gitlab-todos-feature-highlight/)
-1. [GitLab Work in Progress (WIP) Flag](https://about.gitlab.com/blog/2016/01/08/feature-highlight-wip/)
+1. [GitLab Draft Flag](https://about.gitlab.com/blog/2016/01/08/feature-highlight-wip/)
### 1.5. Migrating from other Source Control
@@ -120,7 +120,7 @@ The GitLab University curriculum is composed of GitLab videos, screencasts, pres
1. [GitLab and Docker - Video](https://www.youtube.com/watch?v=ugOrCcbdHko&index=12&list=PLFGfElNsQthbQu_IWlNOxul0TbS_2JH-e)
1. [How we scale GitLab with built in Docker](https://about.gitlab.com/blog/2016/06/21/how-we-scale-gitlab-by-having-docker-built-in/)
1. [Continuous Integration, Delivery, and Deployment with GitLab](https://about.gitlab.com/blog/2016/08/05/continuous-integration-delivery-and-deployment-with-gitlab/)
-1. [Deployments and Environments](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/)
+1. [Deployments and Environments](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/)
1. [Sequential, Parallel or Custom Pipelines](https://about.gitlab.com/blog/2016/07/29/the-basics-of-gitlab-ci/)
1. [Setting up GitLab Runner For Continuous Integration](https://about.gitlab.com/blog/2016/03/01/gitlab-runner-with-docker/)
1. [Setting up GitLab Runner on DigitalOcean](https://about.gitlab.com/blog/2016/04/19/how-to-set-up-gitlab-runner-on-digitalocean/)
@@ -134,7 +134,7 @@ The GitLab University curriculum is composed of GitLab videos, screencasts, pres
1. [GitLab Flow - Video](https://youtu.be/enMumwvLAug?list=PLFGfElNsQthZnwMUFi6rqkyUZkI00OxIV)
1. [GitLab Flow vs Forking in GitLab - Video](https://www.youtube.com/watch?v=UGotqAUACZA)
-1. [GitLab Flow Overview](https://about.gitlab.com/blog/2014/09/29/gitlab-flow/)
+1. [GitLab Flow Overview](https://about.gitlab.com/topics/version-control/what-is-gitlab-flow/)
1. [Always Start with an Issue](https://about.gitlab.com/blog/2016/03/03/start-with-an-issue/)
1. [GitLab Flow Documentation](../topics/gitlab_flow.md)
diff --git a/doc/university/training/index.md b/doc/university/training/index.md
index 13cf4184560..f69bd51b341 100644
--- a/doc/university/training/index.md
+++ b/doc/university/training/index.md
@@ -34,7 +34,6 @@ This section contains the following topics:
- [Merge conflicts](topics/merge_conflicts.md).
- [Rollback commits](topics/rollback_commits.md).
- [Subtree](topics/subtree.md).
-- [Tags](topics/tags.md).
- [Unstage](topics/unstage.md).
## Additional Resources
diff --git a/doc/university/training/topics/tags.md b/doc/university/training/topics/tags.md
index ca438e04a55..bb2e3e9b208 100644
--- a/doc/university/training/topics/tags.md
+++ b/doc/university/training/topics/tags.md
@@ -1,52 +1,8 @@
---
-stage: none
-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
-comments: false
-type: reference
+redirect_to: '../../../topics/git/tags.md'
---
-# Tags
+This document was moved to [another location](../../../topics/git/tags.md).
-- Useful for marking deployments and releases
-- Annotated tags are an unchangeable part of Git history
-- Soft/lightweight tags can be set and removed at will
-- Many projects combine an annotated release tag with a stable branch
-- Consider setting deployment/release tags automatically
-
-## Tags sample workflow
-
-- Create a lightweight tag
-- Create an annotated tag
-- Push the tags to the remote repository
-
-```shell
-git checkout master
-
-# Lightweight tag
-git tag my_lightweight_tag
-
-# Annotated tag
-git tag -a v1.0 -m ‘Version 1.0’
-
-# Show list of the existing tags
-git tag
-
-git push origin --tags
-```
-
-**Additional resources**
-
-<https://git-scm.com/book/en/Git-Basics-Tagging>
-
-<!-- ## Troubleshooting
-
-Include any troubleshooting steps that you can foresee. If you know beforehand what issues
-one might have when setting this up, or when something is changed, or on upgrading, it's
-important to describe those, too. Think of things that may go wrong and include them here.
-This is important to minimize requests for support, and to avoid doc comments with
-questions that you know someone might ask.
-
-Each scenario can be a third-level heading, e.g. `### Getting error message X`.
-If you have none to add when creating a doc, leave this section in place
-but commented out to help encourage others to add to it in the future. -->
+<!-- This redirect file can be deleted after <YYYY-MM-DD>. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page -->
diff --git a/doc/update/index.md b/doc/update/index.md
index a07a6f4b0b7..9871d0aba2c 100644
--- a/doc/update/index.md
+++ b/doc/update/index.md
@@ -138,6 +138,33 @@ pending_job_classes = scheduled_queue.select { |job| job["class"] == "Background
pending_job_classes.each { |job_class| Gitlab::BackgroundMigration.steal(job_class) }
```
+## Checking for pending Elasticsearch migrations
+
+This section is only applicable if you have enabled the [Elasticsearch
+integration](../integration/elasticsearch.md).
+
+Certain major releases might require [Elasticsearch
+migrations](../integration/elasticsearch.md#background-migrations) to be
+finished. You can find pending migrations by running the following command:
+
+**For Omnibus installations**
+
+```shell
+sudo gitlab-rake gitlab:elastic:list_pending_migrations
+```
+
+**For installations from source**
+
+```shell
+cd /home/git/gitlab
+sudo -u git -H bundle exec rake gitlab:elastic:list_pending_migrations
+```
+
+### What do I do if my Elasticsearch migrations are stuck?
+
+See [how to retry a halted
+migration](../integration/elasticsearch.md#retry-a-halted-migration).
+
## Upgrade paths
Although you can generally upgrade through multiple GitLab versions in one go,
@@ -147,7 +174,7 @@ Find where your version sits in the upgrade path below, and upgrade GitLab
accordingly, while also consulting the
[version-specific upgrade instructions](#version-specific-upgrading-instructions):
-`8.11.x` -> `8.12.0` -> `8.17.7` -> `9.5.10` -> `10.8.7` -> `11.11.8` -> `12.0.12` -> `12.1.17` -> `12.10.14` -> `13.0.14` -> `13.1.11` - > `13.x (latest)`
+`8.11.Z` -> `8.12.0` -> `8.17.7` -> `9.5.10` -> `10.8.7` -> `11.11.8` -> `12.0.12` -> `12.1.17` -> `12.10.14` -> `13.0.14` -> `13.1.11` - > [latest `13.Y.Z`](https://about.gitlab.com/releases/categories/releases/)
The following table, while not exhaustive, shows some examples of the supported
upgrade paths.
@@ -174,7 +201,7 @@ Identify a [supported upgrade path](#upgrade-paths).
More significant migrations may occur during major release upgrades. To ensure these are successful:
-1. Increment to the first minor version (`x.0.x`) during the major version jump.
+1. Increment to the first minor version (`X.0.Z`) during the major version jump.
1. Proceed with upgrading to a newer release.
It's also important to ensure that any background migrations have been fully completed
@@ -235,7 +262,7 @@ which is the latest patch release of 9.4. When GitLab 9.5.0 is released this
installation can be safely upgraded to 9.5.0 without requiring downtime if the
requirements mentioned above are met. You can also skip 9.5.0 and upgrade to
9.5.1 after it's released, but you **can not** upgrade straight to 9.6.0; you
-_have_ to first upgrade to a 9.5.x release.
+_have_ to first upgrade to a 9.5.Z release.
**Example 2:** You are running a large GitLab installation using version 9.4.2,
which is the latest patch release of 9.4. GitLab 9.5 includes some background
@@ -243,7 +270,7 @@ migrations, and 10.0 will require these to be completed (processing any
remaining jobs for you). Skipping 9.5 is not possible without downtime, and due
to the background migrations would require potentially hours of downtime
depending on how long it takes for the background migrations to complete. To
-work around this you will have to upgrade to 9.5.x first, then wait at least a
+work around this you will have to upgrade to 9.5.Z first, then wait at least a
week before upgrading to 10.0.
**Example 3:** You use MySQL as the database for GitLab. Any upgrade to a new
@@ -361,9 +388,9 @@ with the older Rails version - which could cause non-GET requests to
fail for [multi-node GitLab installations](https://docs.gitlab.com/omnibus/update/#multi-node--ha-deployment).
So, if you are using multiple Rails servers and specifically upgrading from 13.0,
-all servers must first be upgraded to 13.1.X before upgrading to 13.2.0 or later:
+all servers must first be upgraded to 13.1.Z before upgrading to 13.2.0 or later:
-1. Ensure all GitLab web nodes are on GitLab 13.1.X.
+1. Ensure all GitLab web nodes are on GitLab 13.1.Z.
1. Optionally, enable the `global_csrf_token` feature flag to enable new
method of CSRF token generation:
@@ -383,33 +410,33 @@ any downgrades would result to all sessions being invalidated and users are logg
### 12.1.0
-If you are planning to upgrade from `12.0.x` to `12.10.x`, it is necessary to
-perform an intermediary upgrade to `12.1.x` before upgrading to `12.10.x` to
+If you are planning to upgrade from `12.0.Z` to `12.10.Z`, it is necessary to
+perform an intermediary upgrade to `12.1.Z` before upgrading to `12.10.Z` to
avoid issues like [#215141](https://gitlab.com/gitlab-org/gitlab/-/issues/215141).
### 12.0.0
In 12.0.0 we made various database related changes. These changes require that
-users first upgrade to the latest 11.11 patch release. After upgraded to 11.11.x,
-users can upgrade to 12.0.x. Failure to do so may result in database migrations
+users first upgrade to the latest 11.11 patch release. After upgraded to 11.11.Z,
+users can upgrade to 12.0.Z. Failure to do so may result in database migrations
not being applied, which could lead to application errors.
-It is also required that you upgrade to 12.0.x before moving to a later version
-of 12.x.
+It is also required that you upgrade to 12.0.Z before moving to a later version
+of 12.Y.
Example 1: you are currently using GitLab 11.11.8, which is the latest patch
-release for 11.11.x. You can upgrade as usual to 12.0.x.
+release for 11.11.Z. You can upgrade as usual to 12.0.Z.
-Example 2: you are currently using a version of GitLab 10.x. To upgrade, first
-upgrade to the last 10.x release (10.8.7) then the last 11.x release (11.11.8).
-After upgraded to 11.11.8 you can safely upgrade to 12.0.x.
+Example 2: you are currently using a version of GitLab 10.Y. To upgrade, first
+upgrade to the last 10.Y release (10.8.7) then the last 11.Y release (11.11.8).
+After upgraded to 11.11.8 you can safely upgrade to 12.0.Z.
See our [documentation on upgrade paths](../policy/maintenance.md#upgrade-recommendations)
for more information.
### Upgrades from versions earlier than 8.12
-- `8.11.x` and earlier: you might have to upgrade to `8.12.0` specifically before you can upgrade to `8.17.7`. This was [reported in an issue](https://gitlab.com/gitlab-org/gitlab/-/issues/207259).
+- `8.11.Z` and earlier: you might have to upgrade to `8.12.0` specifically before you can upgrade to `8.17.7`. This was [reported in an issue](https://gitlab.com/gitlab-org/gitlab/-/issues/207259).
- [CI changes prior to version 8.0](https://docs.gitlab.com/omnibus/update/README.html#updating-gitlab-ci-from-prior-540-to-version-714-via-omnibus-gitlab)
when it was merged into GitLab.
diff --git a/doc/user/admin_area/analytics/usage_trends.md b/doc/user/admin_area/analytics/usage_trends.md
index 0c0cae09c16..38cd2dee4e9 100644
--- a/doc/user/admin_area/analytics/usage_trends.md
+++ b/doc/user/admin_area/analytics/usage_trends.md
@@ -40,22 +40,3 @@ in the categories shown in [Total counts](#total-counts).
These charts help you visualize how rapidly these records are being created on your instance.
![Instance Activity Pipelines chart](img/instance_activity_pipelines_chart_v13_6.png)
-
-### Enable or disable Usage Trends
-
-In GitLab version 13.5 only, Usage Trends was under development and not ready for production use.
-It was deployed behind a feature flag that was **disabled by default**.
-[GitLab administrators with access to the GitLab Rails console](../../../administration/feature_flags.md)
-can opt to enable it.
-
-To enable it:
-
-```ruby
-Feature.enable(:instance_statistics)
-```
-
-To disable it:
-
-```ruby
-Feature.disable(:instance_statistics)
-```
diff --git a/doc/user/admin_area/approving_users.md b/doc/user/admin_area/approving_users.md
index af4d4e86e69..9141d7f488d 100644
--- a/doc/user/admin_area/approving_users.md
+++ b/doc/user/admin_area/approving_users.md
@@ -7,30 +7,49 @@ type: howto
# Users pending approval
-> [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/4491) in GitLab 13.5.
+A user in _pending approval_ state requires action by an administrator. A user sign up can be in a
+pending approval state because an administrator has enabled either, or both, of the following
+options:
-When [Require admin approval for new sign-ups](settings/sign_up_restrictions.md#require-administrator-approval-for-new-sign-ups) is enabled, any user that signs up for an account using the registration form is placed under a **Pending approval** state.
+- [Require admin approval for new sign-ups](settings/sign_up_restrictions.md#require-administrator-approval-for-new-sign-ups) setting.
+- [User cap](settings/sign_up_restrictions.md#user-cap).
-A user pending approval is functionally identical to a [blocked](blocking_unblocking_users.md) user.
+When a user registers for an account while this setting is enabled:
+
+- The user is placed in a **Pending approval** state.
+- The user sees a message telling them their account is awaiting approval by an administrator.
A user pending approval:
-- Will not be able to sign in.
-- Cannot access Git repositories or the API.
-- Will not receive any notifications from GitLab.
+- Is functionally identical to a [blocked](blocking_unblocking_users.md) user.
+- Cannot sign in.
+- Cannot access Git repositories or the GitLab API.
+- Does not receive any notifications from GitLab.
- Does not consume a [seat](../../subscriptions/self_managed/index.md#billable-users).
-## Approving a user
+An administrator must [approve their sign up](#approve-or-reject-a-user-sign-up) to allow them to
+sign in.
+
+## View user sign ups pending approval
+
+To view user sign ups pending approval:
+
+1. Go to **Admin Area > Overview > Users**.
+1. Select the **Pending approval** tab.
+
+## Approve or reject a user sign up
+
+A user sign up pending approval can be approved or rejected from the Admin Area.
-A user that is pending approval can be approved from the Admin Area. To do this:
+To approve or reject a user sign up:
-1. Navigate to **Admin Area > Overview > Users**.
-1. Click on the **Pending approval** tab.
-1. Select a user.
-1. Under the **Account** tab, click **Approve user**.
+1. Go to **Admin Area > Overview > Users**.
+1. Select the **Pending approval** tab.
+1. In the user's row select settings (**{settings}**).
+1. Select **Approve** or **Reject**.
Approving a user:
-1. Activates their account.
-1. Changes the user's state to active and it consumes a
-[seat](../../subscriptions/self_managed/index.md#billable-users).
+- Activates their account.
+- Changes the user's state to active.
+- Consumes a subscription [seat](../../subscriptions/self_managed/index.md#billable-users).
diff --git a/doc/user/admin_area/credentials_inventory.md b/doc/user/admin_area/credentials_inventory.md
index 02659276b53..3d8a3a7c8c7 100644
--- a/doc/user/admin_area/credentials_inventory.md
+++ b/doc/user/admin_area/credentials_inventory.md
@@ -31,7 +31,7 @@ The following is an example of the Credentials inventory page:
If you see a **Revoke** button, you can revoke that user's PAT. Whether you see a **Revoke** button depends on the token state, and if an expiration date has been set. For more information, see the following table:
-| Token state | [Token expiry enforced?](settings/account_and_limit_settings.md#optional-enforcement-of-personal-access-token-expiry) | Show Revoke button? | Comments |
+| Token state | [Token expiration enforced?](settings/account_and_limit_settings.md#optional-non-enforcement-of-personal-access-token-expiration) | Show Revoke button? | Comments |
|-------------|------------------------|--------------------|----------------------------------------------------------------------------|
| Active | Yes | Yes | Allows administrators to revoke the PAT, such as for a compromised account |
| Active | No | Yes | Allows administrators to revoke the PAT, such as for a compromised account |
diff --git a/doc/user/admin_area/index.md b/doc/user/admin_area/index.md
index b5e51e8d4c0..14a193322a5 100644
--- a/doc/user/admin_area/index.md
+++ b/doc/user/admin_area/index.md
@@ -33,7 +33,7 @@ The Admin Area is made up of the following sections:
| **{cloud-gear}** Kubernetes | Create and manage instance-level [Kubernetes clusters](../instance/clusters/index.md). |
| **{push-rules}** Push rules **(STARTER ONLY)** | Configure pre-defined Git [push rules](../../push_rules/push_rules.md) for projects. Also, configure [merge requests approvers rules](merge_requests_approvals.md). **(PREMIUM SELF)** |
| **{location-dot}** Geo **(PREMIUM SELF)** | Configure and maintain [Geo nodes](geo_nodes.md). |
-| **{key}** Deploy keys | Create instance-wide [SSH deploy keys](../../ssh/README.md#deploy-keys). |
+| **{key}** Deploy keys | Create instance-wide [SSH deploy keys](../project/deploy_keys/index.md). |
| **{lock}** Credentials **(ULTIMATE SELF)** | View [credentials](credentials_inventory.md) that can be used to access your instance. |
| **{template}** Service Templates | Create [service templates](../project/integrations/services_templates.md) for projects. |
| **{labels}** Labels | Create and maintain [labels](labels.md) for your GitLab instance. |
@@ -157,6 +157,22 @@ All impersonation activities are [captured with audit events](../../administrati
![user impersonation button](img/impersonate_user_button_v13_8.png)
+#### User Permission Export **(PREMIUM SELF)**
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/1772) in GitLab 13.8.
+> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/292436) in GitLab 13.9.
+
+An administrator can export user permissions for all users in the GitLab instance from the Admin Area's Users page.
+The export lists direct membership the users have in groups and projects.
+
+The following data is included in the export:
+
+- Username
+- Email
+- Type
+- Path
+- Access level ([Project](../permissions.md#project-members-permissions) and [Group](../permissions.md#group-members-permissions))
+
#### Users statistics
The **Users statistics** page provides an overview of user accounts by role. These statistics are
@@ -187,7 +203,7 @@ sort order is by **Last created**.
To search for groups by name, enter your criteria in the search field. The group search is case
insensitive, and applies partial matching.
-To [Create a new group](../group/index.md#create-a-new-group) click **New group**.
+To [Create a new group](../group/index.md#create-a-group) click **New group**.
### Administering Jobs
diff --git a/doc/user/admin_area/settings/account_and_limit_settings.md b/doc/user/admin_area/settings/account_and_limit_settings.md
index 70416c224c7..25ab4ec173c 100644
--- a/doc/user/admin_area/settings/account_and_limit_settings.md
+++ b/doc/user/admin_area/settings/account_and_limit_settings.md
@@ -180,24 +180,26 @@ Once a lifetime for personal access tokens is set, GitLab:
allowed lifetime. Three hours is given to allow administrators to change the allowed lifetime,
or remove it, before revocation takes place.
-## Enforcement of SSH key expiration **(ULTIMATE SELF)**
+## Optional enforcement of SSH key expiration **(ULTIMATE SELF)**
-GitLab administrators can choose to enforce the expiration of SSH keys after their expiration dates.
-If you enable this feature, this disables all _expired_ SSH keys.
+> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/250480) in GitLab 13.9.
-To do this:
+By default, expired SSH keys **can still be used**.
+You can prevent the use of expired SSH keys with the following steps:
1. Navigate to **Admin Area > Settings > General**.
1. Expand the **Account and limit** section.
1. Select the **Enforce SSH key expiration** checkbox.
-## Optional enforcement of Personal Access Token expiry **(ULTIMATE SELF)**
+For more information, see the following issue on [SSH key expiration](https://gitlab.com/gitlab-org/gitlab/-/issues/320970).
+
+## Optional non-enforcement of Personal Access Token expiration **(ULTIMATE SELF)**
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/214723) in GitLab Ultimate 13.1.
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/296881) in GitLab 13.9.
-GitLab administrators can choose to prevent personal access tokens from expiring
-automatically. The tokens are usable after the expiry date, unless they are revoked explicitly.
+By default, expired personal access tokens (PATs) cannot be used.
+You can allow the use of expired PATs with the following steps:
To do this:
diff --git a/doc/user/admin_area/settings/index.md b/doc/user/admin_area/settings/index.md
index 3377b1674db..cbdc617d7d9 100644
--- a/doc/user/admin_area/settings/index.md
+++ b/doc/user/admin_area/settings/index.md
@@ -35,7 +35,7 @@ Access the default page for admin area settings by navigating to **Admin Area >
| ------ | ----------- |
| [Elasticsearch](../../../integration/elasticsearch.md#enabling-advanced-search) | Elasticsearch integration. Elasticsearch AWS IAM. |
| [Kroki](../../../administration/integration/kroki.md#enable-kroki-in-gitlab) | Allow rendering of diagrams in AsciiDoc and Markdown documents using [kroki.io](https://kroki.io). |
-| [PlantUML](../../../administration/integration/plantuml.md#gitlab) | Allow rendering of PlantUML diagrams in AsciiDoc and Markdown documents. |
+| [PlantUML](../../../administration/integration/plantuml.md) | Allow rendering of PlantUML diagrams in documents. |
| [Slack application](../../../user/project/integrations/gitlab_slack_application.md#configuration) **(FREE SAAS)** | Slack integration allows you to interact with GitLab via slash commands in a chat window. This option is only available on GitLab.com, though it may be [available for self-managed instances in the future](https://gitlab.com/gitlab-org/gitlab/-/issues/28164). |
| [Third party offers](third_party_offers.md) | Control the display of third party offers. |
| [Snowplow](../../../development/snowplow.md) | Configure the Snowplow integration. |
diff --git a/doc/user/admin_area/settings/project_integration_management.md b/doc/user/admin_area/settings/project_integration_management.md
index 18491f92650..0b9f039880a 100644
--- a/doc/user/admin_area/settings/project_integration_management.md
+++ b/doc/user/admin_area/settings/project_integration_management.md
@@ -4,7 +4,7 @@ group: Ecosystem
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 integration management
+# Project integration management **(FREE)**
Project integrations can be configured and enabled by project administrators. As a GitLab instance
administrator, you can set default configuration parameters for a given integration that all projects
diff --git a/doc/user/admin_area/settings/sign_up_restrictions.md b/doc/user/admin_area/settings/sign_up_restrictions.md
index 0945471b11b..aacea397aaa 100644
--- a/doc/user/admin_area/settings/sign_up_restrictions.md
+++ b/doc/user/admin_area/settings/sign_up_restrictions.md
@@ -30,7 +30,7 @@ To disable sign ups:
> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/4491) in GitLab 13.5.
> - [Enabled by default](https://gitlab.com/gitlab-org/gitlab/-/issues/267568) in GitLab 13.6.
-When this setting is enabled, any user visiting your GitLab domain and signing up for a new account must be explicitly [approved](../approving_users.md#approving-a-user) by an administrator before they can start using their account. This setting is enabled by default for newly created instances. This setting is only applicable if sign ups are enabled.
+When this setting is enabled, any user visiting your GitLab domain and signing up for a new account must be explicitly [approved](../approving_users.md#approve-or-reject-a-user-sign-up) by an administrator before they can start using their account. In GitLab 13.6 and later, this setting is enabled by default for new GitLab instances. It is only applicable if sign ups are enabled.
To require administrator approval for new sign ups:
@@ -56,10 +56,48 @@ To enforce confirmation of the email address used for new sign ups:
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/292600) in GitLab 13.9.
When the number of billable users reaches the user cap, any user who is added or requests access must be
-[approved](../approving_users.md#approving-a-user) by an administrator before they can start using
+[approved](../approving_users.md#approve-or-reject-a-user-sign-up) by an administrator before they can start using
their account.
-If an administrator increases or removes the user cap, the users in pending approval state are
+If an administrator [increases](#set-the-user-cap-number) or [removes](#remove-the-user-cap) the
+user cap, the users in pending approval state are automatically approved in a background job.
+
+### Enable or disable User cap **(FREE SELF)**
+
+User cap is under development but ready for production use.
+It is deployed behind a feature flag that is **enabled by default**.
+[GitLab administrators with access to the GitLab Rails console](../../../administration/feature_flags.md)
+can opt to disable it.
+
+To disable it:
+
+```ruby
+Feature.disable(:admin_new_user_signups_cap)
+```
+
+To enable it:
+
+```ruby
+Feature.enable(:admin_new_user_signups_cap)
+```
+
+### Set the user cap number
+
+1. Go to **Admin Area > Settings > General**.
+1. Expand **Sign-up restrictions**.
+1. Enter a number in **User cap**.
+1. Select **Save changes**.
+
+New user sign ups are subject to the user cap restriction.
+
+## Remove the user cap
+
+1. Go to **Admin Area > Settings > General**.
+1. Expand **Sign-up restrictions**.
+1. Remove the number from **User cap**.
+1. Select **Save changes**.
+
+New users sign ups are not subject to the user cap restriction. Users in pending approval state are
automatically approved in a background job.
## Soft email confirmation
diff --git a/doc/user/analytics/img/mr_mean_time_to_merge_metric_v13_9.png b/doc/user/analytics/img/mr_mean_time_to_merge_metric_v13_9.png
new file mode 100644
index 00000000000..ad108dabf73
--- /dev/null
+++ b/doc/user/analytics/img/mr_mean_time_to_merge_metric_v13_9.png
Binary files differ
diff --git a/doc/user/analytics/merge_request_analytics.md b/doc/user/analytics/merge_request_analytics.md
index 3edbe3e8aa4..909eb7e585f 100644
--- a/doc/user/analytics/merge_request_analytics.md
+++ b/doc/user/analytics/merge_request_analytics.md
@@ -39,6 +39,15 @@ Merge Request Analytics could be used when:
The following visualizations and data are available, representing all merge requests that were merged in the given date range.
+### Mean time to merge
+
+> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/229389) in GitLab 13.9.
+
+The mean time to merge (MTTM) metric shows the average time between when a merge request is created,
+and when it is merged. To view how the MTTM changes over time, compare MTTM across different date ranges.
+
+![Mean time to merge](img/mr_mean_time_to_merge_metric_v13_9.png "Merge Request Analytics - MTTM metric showing the average time it takes from initiating a MR to being merged")
+
### Throughput chart
The throughput chart shows the number of merge requests merged per month.
diff --git a/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_collection_edit_variable.png b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_collection_edit_variable.png
new file mode 100644
index 00000000000..3a2799ecdc1
--- /dev/null
+++ b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_collection_edit_variable.png
Binary files differ
diff --git a/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_environment_edit_variable.png b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_environment_edit_variable.png
new file mode 100644
index 00000000000..656ba7652cd
--- /dev/null
+++ b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_environment_edit_variable.png
Binary files differ
diff --git a/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_request_edit.png b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_request_edit.png
new file mode 100644
index 00000000000..3750af8f455
--- /dev/null
+++ b/doc/user/application_security/api_fuzzing/img/api_fuzzing_postman_request_edit.png
Binary files differ
diff --git a/doc/user/application_security/api_fuzzing/index.md b/doc/user/application_security/api_fuzzing/index.md
index 49311ccc7cd..fcb41b599ae 100644
--- a/doc/user/application_security/api_fuzzing/index.md
+++ b/doc/user/application_security/api_fuzzing/index.md
@@ -25,7 +25,7 @@ you can run fuzz tests as part your CI/CD workflow.
- GraphQL
- Form bodies, JSON, or XML
- One of the following assets to provide APIs to test:
- - OpenAPI v2 API definition
+ - OpenAPI v2 or v3 API definition
- HTTP Archive (HAR) of API requests to test
- Postman Collection v2.0 or v2.1
@@ -54,7 +54,7 @@ changes, other pipelines, or other scanners) during a scan could cause inaccurat
There are three ways to perform scans. See the configuration section for the one you wish to use:
-- [OpenAPI v2 specification](#openapi-specification)
+- [OpenAPI v2 or v3 specification](#openapi-specification)
- [HTTP Archive (HAR)](#http-archive-har)
- [Postman Collection v2.0 or v2.1](#postman-collection)
@@ -64,6 +64,12 @@ Examples of both configurations can be found here:
- [Example HTTP Archive (HAR) project](https://gitlab.com/gitlab-org/security-products/demos/api-fuzzing-example/-/tree/har)
- [Example Postman Collection project](https://gitlab.com/gitlab-org/security-products/demos/api-fuzzing/postman-api-fuzzing-example)
+WARNING:
+GitLab 14.0 will require that you place API fuzzing configuration files (for example,
+`gitlab-api-fuzzing-config.yml`) in your repository's `.gitlab` directory instead of your
+repository's root. You can continue using your existing configuration files as they are, but
+starting in GitLab 14.0, GitLab will not check your repository's root for configuration files.
+
### OpenAPI Specification
The [OpenAPI Specification](https://www.openapis.org/) (formerly the Swagger Specification) is an
@@ -71,6 +77,13 @@ API description format for REST APIs. This section shows you how to configure AP
an OpenAPI specification to provide information about the target API to test. OpenAPI specifications
are provided as a file system resource or URL.
+API fuzzing uses an OpenAPI document to generate the request body. When a request body is required,
+the body generation is limited to these body types:
+
+- `application/x-www-form-urlencoded`
+- `multipart/form-data`
+- `application/json`
+
Follow these steps to configure API fuzzing in GitLab with an OpenAPI specification:
1. To use API fuzzing, you must [include](../../../ci/yaml/README.md#includetemplate)
@@ -100,7 +113,7 @@ Follow these steps to configure API fuzzing in GitLab with an OpenAPI specificat
FUZZAPI_PROFILE: Quick-10
```
-1. Provide the location of the OpenAPI v2 specification. You can provide the specification as a file
+1. Provide the location of the OpenAPI specification. You can provide the specification as a file
or URL. Specify the location by adding the `FUZZAPI_OPENAPI` variable:
```yaml
@@ -327,6 +340,60 @@ WARNING:
the API can, it may also trigger bugs in the API. This includes actions like modifying and deleting
data. Only run fuzzing against a test server.
+#### Postman variables
+
+Postman allows the developer to define placeholders that can be used in different parts of the
+requests. These placeholders are called variables, as explained in [Using variables](https://learning.postman.com/docs/sending-requests/variables/).
+You can use variables to store and reuse values in your requests and scripts. For example, you can
+edit the collection to add variables to the document:
+
+![Edit collection variable tab View](img/api_fuzzing_postman_collection_edit_variable.png)
+
+You can then use the variables in sections such as URL, headers, and others:
+
+![Edit request using variables View](img/api_fuzzing_postman_request_edit.png)
+
+Variables can be defined at different [scopes](https://learning.postman.com/docs/sending-requests/variables/#variable-scopes)
+(for example, Global, Collection, Environment, Local, and Data). In this example, they're defined at
+the Environment scope:
+
+![Edit environment variables View](img/api_fuzzing_postman_environment_edit_variable.png)
+
+When you export a Postman collection, only Postman collection variables are exported into the
+Postman file. For example, Postman does not export environment-scoped variables into the Postman
+file.
+
+By default, the API fuzzer uses the Postman file to resolve Postman variable values. If a JSON file
+is set in a GitLab CI environment variable `FUZZAPI_POSTMAN_COLLECTION_VARIABLES`, then the JSON
+file takes precedence to get Postman variable values.
+
+Although Postman can export environment variables into a JSON file, the format is not compatible
+with the JSON expected by `FUZZAPI_POSTMAN_COLLECTION_VARIABLES`.
+
+Here is an example of using `FUZZAPI_POSTMAN_COLLECTION_VARIABLES`:
+
+```yaml
+include:
+ - template: API-Fuzzing.gitlab-ci.yml
+
+variables:
+ FUZZAPI_PROFILE: Quick-10
+ FUZZAPI_POSTMAN_COLLECTION: postman-collection_serviceA.json
+ FUZZAPI_TARGET_URL: http://test-deployment/
+ FUZZAPI_POSTMAN_COLLECTION_VARIABLES: variable-collection-dictionary.json
+```
+
+The file `variable-collection-dictionary.json` is a JSON document. This JSON is an object with
+key-value pairs for properties. The keys are the variables' names, and the values are the variables'
+values. For example:
+
+ ```json
+ {
+ "base_url": "http://127.0.0.1/",
+ "token": "Token 84816165151"
+ }
+ ```
+
### Authentication
Authentication is handled by providing the authentication token as a header or cookie. You can
@@ -502,6 +569,7 @@ repository's root as `.gitlab-api-fuzzing.yml`.
|[`FUZZAPI_OPENAPI`](#openapi-specification) | OpenAPI specification file or URL. |
|[`FUZZAPI_HAR`](#http-archive-har) | HTTP Archive (HAR) file. |
|[`FUZZAPI_POSTMAN_COLLECTION`](#postman-collection) | Postman Collection file. |
+|[`FUZZAPI_POSTMAN_COLLECTION_VARIABLES`](#postman-variables) | Path to a JSON file to extract postman variable values. |
|[`FUZZAPI_OVERRIDES_FILE`](#overrides) | Path to a JSON file containing overrides. |
|[`FUZZAPI_OVERRIDES_ENV`](#overrides) | JSON string containing headers to override. |
|[`FUZZAPI_OVERRIDES_CMD`](#overrides) | Overrides command. |
@@ -523,11 +591,19 @@ repository's root as `.gitlab-api-fuzzing.yml`.
### Overrides
-API Fuzzing provides a method to add or override headers and cookies for all outbound HTTP requests.
+API Fuzzing provides a method to add or override specific items in your request, for example:
+
+- Headers
+- Cookies
+- Query string
+- Form data
+- JSON nodes
+- XML nodes
+
You can use this to inject semantic version headers, authentication, and so on. The
[authentication section](#authentication) includes examples of using overrides for that purpose.
-Overrides use a JSON document to define the headers and cookies:
+Overrides use a JSON document, where each type of override is represented by a JSON object:
```json
{
@@ -538,6 +614,22 @@ Overrides use a JSON document to define the headers and cookies:
"cookies": {
"cookie1": "value",
"cookie2": "value"
+ },
+ "query": {
+ "query-string1": "value",
+ "query-string2": "value"
+ },
+ "body-form": {
+ "form-param1": "value",
+ "form-param1": "value",
+ },
+ "body-json": {
+ "json-path1": "value",
+ "json-path2": "value",
+ },
+ "body-xml" : {
+ "xpath1": "value",
+ "xpath2": "value",
}
}
```
@@ -565,7 +657,94 @@ Example of setting both a header and cookie:
}
```
-You can provide this JSON document as a file or CI/CD variable. You may also provide a command
+Example usage for setting a `body-form` override:
+
+```json
+{
+ "body-form": {
+ "username": "john.doe"
+ }
+}
+```
+
+The override engine uses `body-form` when the request body has only form-data content.
+
+Example usage for setting a `body-json` override:
+
+```json
+{
+ "body-json": {
+ "$.credentials.access-token": "iddqd!42.$"
+ }
+}
+```
+
+Note that each JSON property name in the object `body-json` is set to a [JSON Path](https://goessner.net/articles/JsonPath/)
+expression. The JSON Path expression `$.credentials.access-token` identifies the node to be
+overridden with the value `iddqd!42.$`. The override engine uses `body-json` when the request body
+has only [JSON](https://www.json.org/json-en.html) content.
+
+For example, if the body is set to the following JSON:
+
+```json
+{
+ "credentials" : {
+ "username" :"john.doe",
+ "access-token" : "non-valid-password"
+ }
+}
+```
+
+It is changed to:
+
+```json
+{
+ "credentials" : {
+ "username" :"john.doe",
+ "access-token" : "iddqd!42.$"
+ }
+}
+```
+
+Here's an example for setting a `body-xml` override. The first entry overrides an XML attribute and
+the second entry overrides an XML element:
+
+```json
+{
+ "body-xml" : {
+ "/credentials/@isEnabled": "true",
+ "/credentials/access-token/text()" : "iddqd!42.$"
+ }
+}
+```
+
+Note that each JSON property name in the object `body-xml` is set to an
+[XPath v2](https://www.w3.org/TR/xpath20/)
+expression. The XPath expression `/credentials/@isEnabled` identifies the attribute node to override
+with the value `true`. The XPath expression `/credentials/access-token/text()` identifies the
+element node to override with the value `iddqd!42.$`. The override engine uses `body-xml` when the
+request body has only [XML](https://www.w3.org/XML/)
+content.
+
+For example, if the body is set to the following XML:
+
+```xml
+<credentials isEnabled="false">
+ <username>john.doe</username>
+ <access-token>non-valid-password</access-token>
+</credentials>
+```
+
+It is changed to:
+
+```xml
+<credentials isEnabled="true">
+ <username>john.doe</username>
+ <access-token>iddqd!42.$</access-token>
+</credentials>
+```
+
+You can provide this JSON document as a file or environment variable. You may also provide a command
to generate the JSON document. The command can run at intervals to support values that expire.
#### Using a file
diff --git a/doc/user/application_security/configuration/index.md b/doc/user/application_security/configuration/index.md
index fe21fdc1f15..c6584054894 100644
--- a/doc/user/application_security/configuration/index.md
+++ b/doc/user/application_security/configuration/index.md
@@ -5,14 +5,22 @@ group: Static Analysis
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
---
-# Security Configuration **(ULTIMATE)**
+# Security Configuration **(FREE)**
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20711) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 12.6.
-> - SAST configuration was [enabled](https://gitlab.com/groups/gitlab-org/-/epics/3659) in 13.3 and [improved](https://gitlab.com/gitlab-org/gitlab/-/issues/232862) in 13.4.
-> - DAST Profiles feature was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40474) in 13.4.
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20711) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 12.6. **(ULTIMATE)**
+> - SAST configuration was [enabled](https://gitlab.com/groups/gitlab-org/-/epics/3659) in 13.3 and [improved](https://gitlab.com/gitlab-org/gitlab/-/issues/232862) in 13.4. **(ULTIMATE)**
+> - DAST Profiles feature was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40474) in 13.4. **(ULTIMATE)**
+> - A simplified version was made [available in all tiers](https://gitlab.com/gitlab-org/gitlab/-/issues/294076) in GitLab 13.9. **(FREE)**
+> - It's [deployed behind a feature flag](../../feature_flags.md), disabled by default.
+> - It's enabled on GitLab.com.
+> - It's recommended for production use.
+> - For GitLab self-managed instances, GitLab administrators can opt to [enable it](#enable-or-disable-security-configuration). **(FREE SELF)**
+> - It can be enabled or disabled for a single project.
+
+WARNING:
+This feature might not be available to you. Check the **version history** note above for details.
-The Security Configuration page displays the configuration state of each security control in the
-current project.
+The Security Configuration page displays what security scans are available, links to documentation and also simple enablement tools for the current project.
To view a project's security configuration, go to the project's home page,
then in the left sidebar go to **Security & Compliance > Configuration**.
@@ -20,10 +28,11 @@ then in the left sidebar go to **Security & Compliance > Configuration**.
For each security control the page displays:
- **Security Control:** Name, description, and a documentation link.
-- **Status:** The security control's status (enabled, not enabled, or available).
- **Manage:** A management option or a documentation link.
-## Status
+## Status **(ULTIMATE)**
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20711) in [GitLab Ultimate](https://about.gitlab.com/pricing/) 12.6.
The status of each security control is determined by the project's latest default branch
[CI pipeline](../../../ci/pipelines/index.md).
@@ -35,7 +44,7 @@ all security features are configured by default.
For SAST, click **View history** to see the `.gitlab-ci.yml` file's history.
-## Manage
+## Manage **(ULTIMATE)**
You can configure the following security controls:
@@ -45,3 +54,25 @@ You can configure the following security controls:
- Click either **Enable** or **Configure** to use SAST for the current project. For more details, see [Configure SAST in the UI](../sast/index.md#configure-sast-in-the-ui).
- DAST Profiles
- Click **Manage** to manage the available DAST profiles used for on-demand scans. For more details, see [DAST on-demand scans](../dast/index.md#on-demand-scans).
+
+### Enable or disable Security Configuration **(FREE SELF)**
+
+Security Configuration is under development but 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 opt to enable it.
+
+NOTE:
+This does not apply to GitLab Ultimate.
+
+To enable it:
+
+```ruby
+Feature.enable(:secure_security_and_compliance_configuration_page_on_ce, Project.find(<project id>))
+```
+
+To disable it:
+
+```ruby
+Feature.disable(:secure_security_and_compliance_configuration_page_on_ce, Project.find(<project id>))
+```
diff --git a/doc/user/application_security/container_scanning/index.md b/doc/user/application_security/container_scanning/index.md
index 6eec1418ef0..98aea2f6642 100644
--- a/doc/user/application_security/container_scanning/index.md
+++ b/doc/user/application_security/container_scanning/index.md
@@ -32,7 +32,7 @@ To integrate security scanners other than Clair and Klar into GitLab, see
You can enable container scanning by doing one of the following:
- [Include the CI job](#configuration) in your existing `.gitlab-ci.yml` file.
-- Implicitly use [Auto Container Scanning](../../../topics/autodevops/stages.md#auto-container-scanning)
+- Implicitly use [Auto Container Scanning](../../../topics/autodevops/stages.md#auto-container-scanning),
provided by [Auto DevOps](../../../topics/autodevops/index.md).
GitLab compares the found vulnerabilities between the source and target branches, and shows the
diff --git a/doc/user/application_security/dast/index.md b/doc/user/application_security/dast/index.md
index 3950c856b40..0cd7cb95f26 100644
--- a/doc/user/application_security/dast/index.md
+++ b/doc/user/application_security/dast/index.md
@@ -24,10 +24,13 @@ organization.
If you're using [GitLab CI/CD](../../../ci/README.md), you can analyze your running web applications
for known vulnerabilities using Dynamic Application Security Testing (DAST).
-You can take advantage of DAST by either [including the CI job](#configuration) in
-your existing `.gitlab-ci.yml` file or by implicitly using
-[Auto DAST](../../../topics/autodevops/stages.md#auto-dast),
-provided by [Auto DevOps](../../../topics/autodevops/index.md).
+You can take advantage of DAST by either:
+
+- [Including the CI job](#configuration) in
+ your existing `.gitlab-ci.yml` file.
+- Implicitly using
+ [Auto DAST](../../../topics/autodevops/stages.md#auto-dast),
+ provided by [Auto DevOps](../../../topics/autodevops/index.md).
GitLab checks the DAST report, compares the found vulnerabilities between the source and target
branches, and shows the information on the merge request.
diff --git a/doc/user/application_security/dependency_scanning/index.md b/doc/user/application_security/dependency_scanning/index.md
index 11d27140e42..eab490d3800 100644
--- a/doc/user/application_security/dependency_scanning/index.md
+++ b/doc/user/application_security/dependency_scanning/index.md
@@ -19,10 +19,13 @@ vulnerable. You can then take action to protect your application.
If you're using [GitLab CI/CD](../../../ci/README.md), you can use dependency scanning to analyze
your dependencies for known vulnerabilities. GitLab scans all dependencies, including transitive
dependencies (also known as nested dependencies). You can take advantage of dependency scanning by
-either [including the dependency scanning template](#configuration)
-in your existing `.gitlab-ci.yml` file, or by implicitly using
-the [auto dependency scanning](../../../topics/autodevops/stages.md#auto-dependency-scanning)
-provided by [Auto DevOps](../../../topics/autodevops/index.md).
+either:
+
+- [Including the dependency scanning template](#configuration)
+ in your existing `.gitlab-ci.yml` file.
+- Implicitly using
+ the [auto dependency scanning](../../../topics/autodevops/stages.md#auto-dependency-scanning)
+ provided by [Auto DevOps](../../../topics/autodevops/index.md).
GitLab checks the dependency scanning report, compares the found vulnerabilities
between the source and target branches, and shows the information on the
diff --git a/doc/user/application_security/sast/index.md b/doc/user/application_security/sast/index.md
index 880edebfeda..5e4ed4770de 100644
--- a/doc/user/application_security/sast/index.md
+++ b/doc/user/application_security/sast/index.md
@@ -83,8 +83,9 @@ You can also [view our language roadmap](https://about.gitlab.com/direction/secu
| Objective-C (iOS) | [MobSF (beta)](https://github.com/MobSF/Mobile-Security-Framework-MobSF) | 13.5 |
| PHP | [phpcs-security-audit](https://github.com/FloeDesignTechnologies/phpcs-security-audit) | 10.8 |
| Python ([pip](https://pip.pypa.io/en/stable/)) | [bandit](https://github.com/PyCQA/bandit) | 10.3 |
-| Python | [semgrep](https://semgrep.dev) | 13.9 |
+| Python | [Semgrep](https://semgrep.dev) | 13.9 |
| React | [ESLint react plugin](https://github.com/yannickcr/eslint-plugin-react) | 12.5 |
+| Ruby | [brakeman](https://brakemanscanner.org) | 13.9 |
| Ruby on Rails | [brakeman](https://brakemanscanner.org) | 10.3 |
| Scala ([Ant](https://ant.apache.org/), [Gradle](https://gradle.org/), [Maven](https://maven.apache.org/), and [SBT](https://www.scala-sbt.org/)) | [SpotBugs](https://spotbugs.github.io/) with the [find-sec-bugs](https://find-sec-bugs.github.io/) plugin | 11.0 (SBT) & 11.9 (Ant, Gradle, Maven) |
| Swift (iOS) | [MobSF (beta)](https://github.com/MobSF/Mobile-Security-Framework-MobSF) | 13.5 |
@@ -149,7 +150,7 @@ The [Security Scanner Integration](../../../development/integrations/secure.md)
To configure SAST for a project you can:
-- Use [Auto SAST](../../../topics/autodevops/stages.md#auto-sast) provided by
+- Use [Auto SAST](../../../topics/autodevops/stages.md#auto-sast), provided by
[Auto DevOps](../../../topics/autodevops/index.md).
- [Configure SAST manually](#configure-sast-manually).
- [Configure SAST using the UI](#configure-sast-in-the-ui) (introduced in GitLab 13.3).
diff --git a/doc/user/application_security/secret_detection/index.md b/doc/user/application_security/secret_detection/index.md
index 98177e804f3..9390a5def18 100644
--- a/doc/user/application_security/secret_detection/index.md
+++ b/doc/user/application_security/secret_detection/index.md
@@ -112,7 +112,7 @@ For example, `https://username:$password@example.com/path/to/repo` isn't detecte
NOTE:
You don't have to configure Secret Detection manually as shown in this section if you're using
-[Auto Secret Detection](../../../topics/autodevops/stages.md#auto-secret-detection)
+[Auto Secret Detection](../../../topics/autodevops/stages.md#auto-secret-detection),
provided by [Auto DevOps](../../../topics/autodevops/index.md).
To enable Secret Detection for GitLab 13.1 and later, you must include the
diff --git a/doc/user/application_security/security_dashboard/img/pipeline_security_dashboard_v13_10.png b/doc/user/application_security/security_dashboard/img/pipeline_security_dashboard_v13_10.png
new file mode 100644
index 00000000000..8adb58b8143
--- /dev/null
+++ b/doc/user/application_security/security_dashboard/img/pipeline_security_dashboard_v13_10.png
Binary files differ
diff --git a/doc/user/application_security/security_dashboard/index.md b/doc/user/application_security/security_dashboard/index.md
index b08c19bee47..96d584737e2 100644
--- a/doc/user/application_security/security_dashboard/index.md
+++ b/doc/user/application_security/security_dashboard/index.md
@@ -52,7 +52,7 @@ To use the security dashboards and vulnerability reports:
At the pipeline level, the Security section displays the vulnerabilities present in the branch of
the project the pipeline ran against.
-![Pipeline Security Dashboard](img/pipeline_security_dashboard_v13_3.png)
+![Pipeline Security Dashboard](img/pipeline_security_dashboard_v13_10.png)
Visit the page for any pipeline that ran any of the [supported reports](#supported-reports). To view
the pipeline's security findings, select the **Security** tab when viewing the pipeline.
@@ -175,7 +175,7 @@ lock files. Python projects can have lock files, but GitLab Secure tools don't s
## Security scans using Auto DevOps
When using [Auto DevOps](../../../topics/autodevops/index.md), use
-[special environment variables](../../../topics/autodevops/customize.md#environment-variables)
+[special environment variables](../../../topics/autodevops/customize.md#cicd-variables)
to configure daily security scans.
<!-- ## Troubleshooting
diff --git a/doc/user/application_security/vulnerabilities/index.md b/doc/user/application_security/vulnerabilities/index.md
index 50f05b687f7..989af509c59 100644
--- a/doc/user/application_security/vulnerabilities/index.md
+++ b/doc/user/application_security/vulnerabilities/index.md
@@ -64,16 +64,18 @@ This feature might not be available to you. Check the **version history** note a
Prerequisites:
-- [Enable Jira integration for vulnerabilities](../../project/integrations/jira.md). Select
- **Enable Jira issues creation from vulnerabilities** when configuring the integration.
+- [Enable Jira integration for vulnerabilities](../../project/integrations/jira.md).
+ Select **Enable Jira issues creation from vulnerabilities** when configuring the integration.
+- A Jira user account with permission to create issues in the target project.
To create a Jira issue for a vulnerability:
1. Go to the vulnerability's page.
1. Select **Create Jira issue**.
+1. If you're not already logged in to Jira, log in.
-An issue is created in the linked Jira project, with the **Summary** and **Description** fields
-pre-populated. The Jira issue is then opened in a new browser tab.
+The Jira issue is created and opened in a new browser tab. The **Summary** and **Description**
+fields are pre-populated from the vulnerability's details.
### Enable or disable Jira integration for vulnerabilities **(ULTIMATE SELF)**
diff --git a/doc/user/application_security/vulnerability_report/index.md b/doc/user/application_security/vulnerability_report/index.md
index 28083e09f1c..ce29962d743 100644
--- a/doc/user/application_security/vulnerability_report/index.md
+++ b/doc/user/application_security/vulnerability_report/index.md
@@ -14,26 +14,6 @@ Critical, High, Medium, Low, Info, Unknown). Below this, a table shows each vuln
![Vulnerability Report](img/group_vulnerability_report_v13_9.png)
-You can filter which vulnerabilities display by:
-
-| Filter | Available Options |
-| --- | --- |
-| Status | Detected, Confirmed, Dismissed, Resolved |
-| Severity | Critical, High, Medium, Low, Info, Unknown |
-| Scanner | [Available Scanners](../index.md#security-scanning-tools) |
-| Project | Projects configured in the Security Center settings, or all projects in the group for the group level report. This filter is not displayed on the project level vulnerability report |
-| Activity | Vulnerabilities with issues and vulnerabilities that are no longer detected in the default branch |
-
-The Activity filter behaves differently from the other Vulnerability Report filters. The other filter options all OR together to show results from any vulnerability matching one of the filter criteria. With the Activity filter, the selected values form mutually exclusive sets to allow for precisely locating the desired vulnerability records. Additionally, not all options can be selected in combination. Selection behavior when using the Activity filter:
-
-| Activity Selection | Results Displayed |
-| --- | --- |
-| All | Vulnerabilities with any Activity status (same as ignoring this filter). Selecting this will deselect any other Activity filter options. |
-| No activity | Only vulnerabilities without either an associated Issue or that are no longer detected. Selecting this will deselect any other Activity filter options. |
-| With issues | Only vulnerabilities with one or more associated issues. Does not include vulnerabilities that also are no longer detected. |
-| No longer detected | Only vulnerabilities that are no longer detected in the latest pipeline scan of the `default` branch. Does not include vulnerabilities with one or more associated issues. |
-| With issues and No longer detected | Only vulnerabilities that have one or more associated issues and also are no longer detected in the latest pipeline scan of the `default` branch. |
-
Clicking any vulnerability in the table takes you to its
[vulnerability details](../vulnerabilities) page to see more information on that vulnerability.
@@ -42,6 +22,32 @@ Hover over an **Activity** entry and select a link go to that issue.
![Display attached issues](img/vulnerability_list_table_v13_9.png)
+## Filter options
+
+You can filter which vulnerabilities display by:
+
+| Filter | Available options |
+|:---------|:------------------|
+| Status | Detected, Confirmed, Dismissed, Resolved |
+| Severity | Critical, High, Medium, Low, Info, Unknown |
+| Scanner | [Available scanners](../index.md#security-scanning-tools). |
+| Project | Projects configured in the Security Center settings, or all projects in the group for the group level report. This filter is not displayed on the project level vulnerability report. |
+| Activity | Vulnerabilities with issues and vulnerabilities that are no longer detected in the default branch. |
+
+### Activity filter
+
+> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/259255) in GitLab 13.9
+
+The Activity filter behaves differently from the other Vulnerability Report filters. The other filter options all OR together to show results from any vulnerability matching one of the filter criteria. With the Activity filter, the selected values form mutually exclusive sets to allow for precisely locating the desired vulnerability records. Additionally, not all options can be selected in combination. Selection behavior when using the Activity filter:
+
+| Activity Selection | Results Displayed |
+|:------------------------------------|:------------------|
+| All | Vulnerabilities with any Activity status (same as ignoring this filter). Selecting this will deselect any other Activity filter options. |
+| No activity | Only vulnerabilities without either an associated Issue or that are no longer detected. Selecting this will deselect any other Activity filter options. |
+| With issues | Only vulnerabilities with one or more associated issues. Does not include vulnerabilities that also are no longer detected. |
+| No longer detected | Only vulnerabilities that are no longer detected in the latest pipeline scan of the `default` branch. Does not include vulnerabilities with one or more associated issues. |
+| With issues and No longer detected | Only vulnerabilities that have one or more associated issues and also are no longer detected in the latest pipeline scan of the `default` branch. |
+
Contents of the unfiltered vulnerability report can be exported using our [export feature](#export-vulnerabilities).
You can also dismiss vulnerabilities in the table:
diff --git a/doc/user/clusters/agent/index.md b/doc/user/clusters/agent/index.md
index 6f3d1e197f5..0f30d09829a 100644
--- a/doc/user/clusters/agent/index.md
+++ b/doc/user/clusters/agent/index.md
@@ -21,6 +21,7 @@ tasks in a secure and cloud-native way. It enables:
- Pull-based GitOps deployments by leveraging the
[GitOps Engine](https://github.com/argoproj/gitops-engine).
- Real-time access to API endpoints in a cluster.
+- Alert generation based on [Container network policy](../../application_security/threat_monitoring/index.md#container-network-policy).
Many more features are planned. Please review [our roadmap](https://gitlab.com/groups/gitlab-org/-/epics/3329)
and [our development documentation](../../../development/agent/index.md).
@@ -36,7 +37,7 @@ sequenceDiagram
participant D as Developer
participant A as Application code repository
participant M as Manifest repository
- participant K as Kubernetes agent
+ participant K as Kubernetes Agent
participant C as Agent configuration repository
K->C: Grab the configuration
D->>+A: Pushing code changes
@@ -49,11 +50,10 @@ sequenceDiagram
There are several components that work in concert for the Agent to accomplish GitOps deployments:
-- A properly-configured Kubernetes cluster.
+- A properly-configured Kubernetes cluster where the Agent is running.
- A configuration repository that contains a `config.yaml` file, which tells the
- Agent which repositories to synchronize with.
-- A manifest repository that contains a `manifest.yaml`, which is tracked by the
- Agent and can be auto-generated. Any changes to `manifest.yaml` are applied to the cluster.
+ Agent which repositories to synchronize with the cluster.
+- A manifest repository that contains manifest files. Any changes to manifest files are applied to the cluster.
These repositories might be the same GitLab project or separate projects.
@@ -74,7 +74,7 @@ The setup process involves a few steps to enable GitOps deployments:
1. [Create an Agent record in GitLab](#create-an-agent-record-in-gitlab).
1. [Generate and copy a Secret token used to connect to the Agent](#create-the-kubernetes-secret).
1. [Install the Agent into the cluster](#install-the-agent-into-the-cluster).
-1. [Create a `manifest.yaml`](#create-a-manifestyaml).
+1. [Create manifest files](#create-manifest-files).
### Upgrades and version compatibility
@@ -388,11 +388,10 @@ subjects:
namespace: gitlab-agent
```
-### Create a `manifest.yaml`
+### Create manifest files
In a previous step, you configured a `config.yaml` to point to the GitLab projects
-the Agent should synchronize. In each of those projects, you must create a `manifest.yaml`
-file for the Agent to monitor. You can auto-generate this `manifest.yaml` with a
+the Agent should synchronize. Agent monitors each of those projects for changes to the manifest files it contains. You can auto-generate manifest files with a
templating engine or other means.
The agent is authorized to download manifests for the configuration
@@ -400,13 +399,13 @@ project, and public projects. Support for other private projects is
planned in the issue [Agent authorization for private manifest
projects](https://gitlab.com/gitlab-org/gitlab/-/issues/220912).
-Each time you commit and push a change to this file, the Agent logs the change:
+Each time you push a change to a monitored manifest repository, the Agent logs the change:
```plaintext
2020-09-15_14:09:04.87946 gitlab-k8s-agent : time="2020-09-15T10:09:04-04:00" level=info msg="Config: new commit" agent_id=1 commit_id=e6a3651f1faa2e928fe6120e254c122451be4eea
```
-#### Example `manifest.yaml` file
+#### Example manifest file
This file creates an NGINX deployment.
@@ -445,6 +444,51 @@ The following example projects can help you get started with the Kubernetes Agen
You can use the Kubernetes Agent to
[deploy GitLab Runner in a Kubernetes cluster](http://docs.gitlab.com/runner/install/kubernetes-agent.html).
+## Kubernetes Network Security Alerts
+
+The GitLab Agent also provides an integration with Cilium. This integration provides a simple way to
+generate network policy-related alerts and to surface those alerts in GitLab.
+
+There are several components that work in concert for the Agent to generate the alerts:
+
+- A working Kubernetes cluster.
+- Cilium integration through either of these options:
+ - Installation through [GitLab Managed Apps](../applications.md#install-cilium-using-gitlab-cicd).
+ - Enablement of [hubble-relay](https://docs.cilium.io/en/v1.8/concepts/overview/#hubble) on an
+ existing installation.
+- One or more network policies through any of these options:
+ - Use the [Container Network Policy editor](../../application_security/threat_monitoring/index.md#container-network-policy-editor) to create and manage policies.
+ - Use an [AutoDevOps](../../application_security/threat_monitoring/index.md#container-network-policy-management) configuration.
+ - Add the required labels and annotations to existing network policies.
+- Use a configuration repository to inform the Agent through a `config.yaml` file, which
+ repositories can synchronize with. This repository might be the same, or a separate GitLab
+ project.
+
+The setup process follows the same steps as [GitOps](#get-started-with-gitops-and-the-gitlab-agent),
+with the following differences:
+
+- When you define a configuration repository, you must do so with [Cilium settings](#define-a-configuration-repository-with-cilium-settings).
+- You do not need to create a `manifest.yaml`.
+
+### Define a configuration repository with Cilium settings
+
+You need a GitLab repository to contain your Agent configuration. The minimal repository layout
+looks like this:
+
+```plaintext
+.gitlab/agents/<agent-name>/config.yaml
+```
+
+Your `config.yaml` file must specify the `host` and `port` of your Hubble Relay service. If your
+Cilium integration was performed through [GitLab Managed Apps](../applications.md#install-cilium-using-gitlab-cicd),
+you can use `hubble-relay.gitlab-managed-apps.svc.cluster.local:80`:
+
+```yaml
+cilium:
+ hubble_relay_address: "<hubble-relay-host>:<hubble-relay-port>"
+ ...
+```
+
## Management interfaces
Users with at least the [Developer](../../permissions.md) can access the user interface
@@ -503,9 +547,9 @@ specified the `kas-address` correctly.
{"level":"info","time":"2020-10-30T08:56:54.329Z","msg":"Synced","project_id":"root/kas-manifest001","resource_key":"apps/Deployment/kas-test001/nginx-deployment","sync_result":"error validating data: [ValidationError(Deployment.metadata): unknown field \"replicas\" in io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta, ValidationError(Deployment.metadata): unknown field \"selector\" in io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta, ValidationError(Deployment.metadata): unknown field \"template\" in io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta]"}
```
-This error is shown if your `manifest.yaml` file is malformed, and Kubernetes can't
-create specified objects. Make sure that your `manifest.yaml` file is valid. You
-may try using it to create objects in Kubernetes directly for more troubleshooting.
+This error is shown if a manifest file is malformed, and Kubernetes can't
+create specified objects. Make sure that your manifest files are valid. You
+may try using them to create objects in Kubernetes directly for more troubleshooting.
### Agent logs - Error while dialing failed to WebSocket dial: failed to send handshake request
diff --git a/doc/user/clusters/applications.md b/doc/user/clusters/applications.md
index ad92cf9b4ed..1d72426a1d4 100644
--- a/doc/user/clusters/applications.md
+++ b/doc/user/clusters/applications.md
@@ -372,7 +372,7 @@ For GitLab Runner to function, you _must_ specify the following:
- `runnerRegistrationToken`: The registration token for adding new runners to GitLab.
This must be [retrieved from your GitLab instance](../../ci/runners/README.md).
-These values can be specified using [CI variables](../../ci/variables/README.md):
+These values can be specified using [CI/CD variables](../../ci/variables/README.md):
- `GITLAB_RUNNER_GITLAB_URL` is used for `gitlabUrl`.
- `GITLAB_RUNNER_REGISTRATION_TOKEN` is used for `runnerRegistrationToken`
@@ -730,7 +730,7 @@ Set:
- "Redirect URI" to `http://<JupyterHub Host>/hub/oauth_callback`.
- "Scope" to `api read_repository write_repository`.
-In addition, the following variables must be specified using [CI variables](../../ci/variables/README.md):
+In addition, the following variables must be specified using [CI/CD variables](../../ci/variables/README.md):
- `JUPYTERHUB_PROXY_SECRET_TOKEN` - Secure string used for signing communications
from the hub. Read [`proxy.secretToken`](https://zero-to-jupyterhub.readthedocs.io/en/stable/reference/reference.html#proxy-secrettoken).
@@ -1655,3 +1655,17 @@ Error: Could not get apiVersions from Kubernetes: unable to retrieve the complet
This is a bug that was introduced in Helm `2.15` and fixed in `3.0.2`. As a workaround,
ensure [`cert-manager`](#cert-manager) is installed successfully prior to installing Prometheus.
+
+### Unable to create a Persistent Volume Claim with DigitalOcean
+
+Trying to create additional block storage volumes might lead to the following error when using DigitalOcean:
+
+```plaintext
+Server requested
+[Warning] pod has unbound immediate PersistentVolumeClaims (repeated 2 times)
+[Normal] pod didn't trigger scale-up (it wouldn't fit if a new node is added):
+Spawn failed: Timeout
+```
+
+This is due to DigitalOcean imposing a few limits with regards to creating additional block storage volumes.
+[Learn more about DigitalOcean Block Storage Volumes limits.](https://www.digitalocean.com/docs/volumes/#limits)
diff --git a/doc/user/compliance/license_compliance/index.md b/doc/user/compliance/license_compliance/index.md
index 74c608fcc38..31d3f7e1db0 100644
--- a/doc/user/compliance/license_compliance/index.md
+++ b/doc/user/compliance/license_compliance/index.md
@@ -14,10 +14,13 @@ project's dependencies for their licenses. You can then decide whether to allow
each license. For example, if your application uses an external (open source) library whose license
is incompatible with yours, then you can deny the use of that license.
-You can take advantage of License Compliance by either [including the job](#configuration)
-in your existing `.gitlab-ci.yml` file or by implicitly using
-[Auto License Compliance](../../../topics/autodevops/stages.md#auto-license-compliance)
-that is provided by [Auto DevOps](../../../topics/autodevops/index.md).
+You can take advantage of License Compliance by either:
+
+- [Including the job](#configuration)
+ in your existing `.gitlab-ci.yml` file.
+- Implicitly using
+ [Auto License Compliance](../../../topics/autodevops/stages.md#auto-license-compliance),
+ provided by [Auto DevOps](../../../topics/autodevops/index.md).
The [License Finder](https://github.com/pivotal/LicenseFinder) scan tool runs as part of the CI/CD
pipeline, and detects the licenses in use. GitLab checks the License Compliance report, compares the
diff --git a/doc/user/discussions/index.md b/doc/user/discussions/index.md
index 9320dbba1b8..0fd4ccfd869 100644
--- a/doc/user/discussions/index.md
+++ b/doc/user/discussions/index.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, howto
---
diff --git a/doc/user/group/img/groups.png b/doc/user/group/img/groups.png
deleted file mode 100644
index 2e27d46b370..00000000000
--- a/doc/user/group/img/groups.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/group/import/index.md b/doc/user/group/import/index.md
index f4d15dce1cd..7f02c7b169f 100644
--- a/doc/user/group/import/index.md
+++ b/doc/user/group/import/index.md
@@ -20,11 +20,23 @@ Using GitLab Group Migration, you can migrate existing top-level groups from Git
The following resources are migrated to the target instance:
-- Groups
+- Groups ([Introduced in 13.7](https://gitlab.com/groups/gitlab-org/-/epics/4374))
- description
- attributes
- subgroups
-- Epics
+- Group Labels ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/292429))
+ - title
+ - description
+ - color
+ - created_at ([Introduced in 13.10](https://gitlab.com/gitlab-org/gitlab/-/issues/300007))
+ - updated_at ([Introduced in 13.10](https://gitlab.com/gitlab-org/gitlab/-/issues/300007))
+- Members ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/299415))
+ Group members are associated with the imported group if:
+ - The user already exists in the target GitLab instance and
+ - The user has a public email in the source GitLab instance that matches a
+ confirmed email in the target GitLab instance
+ confirmed email in the target GitLab instance
+- Epics ([Introduced in 13.7](https://gitlab.com/gitlab-org/gitlab/-/issues/250281))
- title
- description
- state (open / closed)
@@ -32,6 +44,10 @@ The following resources are migrated to the target instance:
- due date
- epic order on boards
- confidentiality
+ - labels ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/297460))
+ - author ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/298745))
+ - parent epic ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/297459))
+ - emoji award ([Introduced in 13.9](https://gitlab.com/gitlab-org/gitlab/-/issues/297466))
Any other items are **not** migrated.
diff --git a/doc/user/group/index.md b/doc/user/group/index.md
index 4c63bae7e44..cdadb73aee5 100644
--- a/doc/user/group/index.md
+++ b/doc/user/group/index.md
@@ -7,54 +7,34 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# Groups
-With GitLab Groups, you can:
+In GitLab, you can put related projects together in a group.
-- Assemble related projects together.
-- Grant members access to several projects at once.
+For example, you might create a group for your company members and a subgroup for each individual team.
+You can name the group `company-team`, and the subgroups `backend-team`, `frontend-team`, and `production-team`.
-For a video introduction to GitLab Groups, see [GitLab University: Repositories, Projects and Groups](https://www.youtube.com/watch?v=4TWfh1aKHHw).
+Then you can:
-Groups can also be nested in [subgroups](subgroups/index.md).
+- Grant members access to multiple projects at once.
+- Add to-do items for all of the group members at once.
+- View the [issues](../project/issues/index.md#issues-list) and
+ [merge requests](../project/merge_requests/reviewing_and_managing_merge_requests.md#view-merge-requests-for-all-projects-in-a-group)
+ for all projects in the group, together in a single list view.
+- [Bulk edit](../group/bulk_editing/index.md) issues, epics, and merge requests.
-Find your groups by clicking **Groups > Your Groups** in the top navigation.
+You can also create [subgroups](subgroups/index.md).
-![GitLab Groups](img/groups.png)
+## View groups
-> The **Groups** dropdown in the top navigation was [introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/36234) in [GitLab 11.1](https://about.gitlab.com/releases/2018/07/22/gitlab-11-1-released/#groups-dropdown-in-navigation).
+To view groups:
-The **Groups** page displays:
+1. In the top menu, select **Groups > Your Groups**. All groups you are a member of are displayed.
+1. To view a list of public groups, select **Explore public groups**.
-- All groups you are a member of, when **Your groups** is selected.
-- A list of public groups, when **Explore public groups** is selected.
+You can also view groups by namespace.
-Each group on the **Groups** page is listed with:
+### Namespaces
-- How many subgroups it has.
-- How many projects it contains.
-- How many members the group has, not including members inherited from parent group(s).
-- The group's visibility.
-- A link to the group's settings, if you have sufficient permissions.
-- A link to leave the group, if you are a member.
-
-## Use cases
-
-You can create groups for numerous reasons. To name a couple:
-
-- Grant access to multiple projects and multiple team members in fewer steps by organizing related projects under the same [namespace](#namespaces) and adding members to the top-level group.
-- Make it easier to `@mention` all of your team at once in issues and merge requests by creating a group and including the appropriate members.
-
-For example, you could create a group for your company members, and create a [subgroup](subgroups/index.md) for each individual team. Let's say you create a group called `company-team`, and you create subgroups in this group for the individual teams `backend-team`, `frontend-team`, and `production-team`.
-
-- When you start a new implementation from an issue, you add a comment:
- _"`@company-team`, let's do it! `@company-team/backend-team` you're good to go!"_
-- When your backend team needs help from frontend, they add a comment:
- _"`@company-team/frontend-team` could you help us here please?"_
-- When the frontend team completes their implementation, they comment:
- _"`@company-team/backend-team`, it's done! Let's ship it `@company-team/production-team`!"_
-
-## Namespaces
-
-In GitLab, a namespace is a unique name to be used as a user name, a group name, or a subgroup name.
+In GitLab, a namespace is a unique name and URL for a user, a group, or subgroup.
- `http://gitlab.example.com/username`
- `http://gitlab.example.com/groupname`
@@ -62,35 +42,19 @@ In GitLab, a namespace is a unique name to be used as a user name, a group name,
For example, consider a user named Alex:
-1. Alex creates an account on GitLab.com with the username `alex`;
- their profile will be accessed under `https://gitlab.example.com/alex`
-1. Alex creates a group for their team with the group name `alex-team`;
- the group and its projects will be accessed under `https://gitlab.example.com/alex-team`
-1. Alex creates a subgroup of `alex-team` with the subgroup name `marketing`;
- this subgroup and its projects will be accessed under `https://gitlab.example.com/alex-team/marketing`
-
-By doing so:
-
-- Any team member mentions Alex with `@alex`
-- Alex mentions everyone from their team with `@alex-team`
-- Alex mentions only the marketing team with `@alex-team/marketing`
+1. Alex creates an account with the username `alex`: `https://gitlab.example.com/alex`
+1. Alex creates a group for their team with the group name `alex-team`.
+ The group and its projects are available at: `https://gitlab.example.com/alex-team`
+1. Alex creates a subgroup of `alex-team` with the subgroup name `marketing`.
+ The subgroup and its projects are available at: `https://gitlab.example.com/alex-team/marketing`
-## Issues and merge requests within a group
+## Create a group
-Issues and merge requests are part of projects. For a given group, you can view all of the
-[issues](../project/issues/index.md#issues-list) and [merge requests](../project/merge_requests/reviewing_and_managing_merge_requests.md#view-merge-requests-for-all-projects-in-a-group) across all projects in that group,
-together in a single list view.
-
-### Bulk editing issues and merge requests
-
-For details, see [bulk editing issues and merge requests](../group/bulk_editing/index.md).
-
-## Create a new group
-
-> For a list of words that are not allowed to be used as group names see the
-> [reserved names](../reserved_names.md).
+NOTE:
+For a list of words that can not be used as group names, see
+[reserved names](../reserved_names.md).
-To create a new Group, either:
+To create a new group, either:
- In the top menu, click **Groups** and then **Your Groups**, and click the green button **New group**.
@@ -166,7 +130,7 @@ If you change your mind before your request is approved, just click the
![Withdraw access request button](img/withdraw_access_request_button.png)
-## Changing the owner of a group
+## Change the owner of a group
Ownership of a group means at least one of its members has
[Owner permission](../permissions.md#group-members-permissions). Groups must have at
@@ -266,6 +230,18 @@ You can sort members by **Account**, **Access granted**, **Max role**, or **Last
![Group members sort](img/group_members_sort_13_7.png)
+## Mention a group in an issue or merge request
+
+When you mention a group in a comment, every member of the group gets a to-do item
+added to their To-do list.
+
+1. Open the MR or issue.
+1. In a comment, type `@` followed by the user, group, or subgroup namespace.
+ For example, `@alex`, `@alex-team`, or `@alex-team/marketing`.
+1. Select **Comment**.
+
+A to-do item is created for all the group and subgroup members.
+
## Changing the default branch protection of a group
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/7583) in GitLab 12.9.
@@ -520,7 +496,7 @@ the group's dashboard, and clicking **Settings**.
### General settings
In addition to editing any settings you previously
-set when [creating the group](#create-a-new-group), you can also
+set when [creating the group](#create-a-group), you can also
access further configurations for your group.
#### Changing a group's path
@@ -641,8 +617,8 @@ request to add a new user to a project through API will not be possible.
> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/215410) to [GitLab Premium](https://about.gitlab.com/pricing/) in 13.1.
NOTE:
-IP Access Restrictions are currently not functioning as expected on GitLab.com. Some users
-may experience blocked Git operations or have difficulties accessing projects. Please
+IP Access Restrictions are currently not functioning as expected on GitLab.com. If enabled,
+users cannot perform Git operations through SSH, or access projects via the UI. Please
review the [following bug report](https://gitlab.com/gitlab-org/gitlab/-/issues/271673) for
more information.
diff --git a/doc/user/group/repositories_analytics/index.md b/doc/user/group/repositories_analytics/index.md
index 1cb7c05bb5f..42522723047 100644
--- a/doc/user/group/repositories_analytics/index.md
+++ b/doc/user/group/repositories_analytics/index.md
@@ -40,6 +40,9 @@ To see the latest code coverage for each project in your group:
1. Go to **Analytics > Repositories** in the group (not from a project).
1. In the **Latest test coverage results** section, use the **Select projects** dropdown to choose the projects you want to check.
+You can download code coverage data for specific projects using
+[code coverage history](../../../ci/pipelines/settings.md#code-coverage-history).
+
## Download historic test coverage data
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/215104) in [GitLab Premium](https://about.gitlab.com/pricing/) 13.4.
diff --git a/doc/user/group/roadmap/index.md b/doc/user/group/roadmap/index.md
index e2c01987e36..9b3ae75b39c 100644
--- a/doc/user/group/roadmap/index.md
+++ b/doc/user/group/roadmap/index.md
@@ -41,7 +41,7 @@ toggle the list of the milestone bars.
> - Filtering roadmaps by milestone is enabled on GitLab.com.
> - Filtering roadmaps by milestone is recommended for production use.
> - For GitLab self-managed instances, GitLab administrators can opt to [disable it](#enable-or-disable-filtering-roadmaps-by-milestone). **(PREMIUM SELF)**
-> - Filtering by epic confidentiality [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/218624) in GitLab 13.8.
+> - Filtering by epic confidentiality [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/218624) in GitLab 13.9.
WARNING:
Filtering roadmaps by milestone might not be available to you. Check the **version history** note above for details.
diff --git a/doc/user/group/saml_sso/index.md b/doc/user/group/saml_sso/index.md
index d1c490b0769..24216188c80 100644
--- a/doc/user/group/saml_sso/index.md
+++ b/doc/user/group/saml_sso/index.md
@@ -87,7 +87,7 @@ Please note that the certificate [fingerprint algorithm](#additional-providers-a
With this option enabled, users must go through your group's GitLab single sign-on URL. They may also be added via SCIM, if configured. Users can't be added manually, and may only access project/group resources via the UI by signing in through the SSO URL.
However, users are not prompted to sign in through SSO on each visit. GitLab checks whether a user
-has authenticated through SSO. If it's been more than 7 days since the last sign-in, GitLab
+has authenticated through SSO. If it's been more than 1 day since the last sign-in, GitLab
prompts the user to sign in again through SSO.
You can see more information about how long a session is valid in our [user profile documentation](../../profile/#why-do-i-keep-getting-signed-out).
diff --git a/doc/user/group/saml_sso/scim_setup.md b/doc/user/group/saml_sso/scim_setup.md
index 3a34a4b0599..41373161a9a 100644
--- a/doc/user/group/saml_sso/scim_setup.md
+++ b/doc/user/group/saml_sso/scim_setup.md
@@ -204,6 +204,10 @@ graph TD
B -->|Yes| D[GitLab removes user from GitLab group]
```
+During the synchronization process, all of your users get GitLab accounts, welcoming them
+to their respective groups, with an invitation email. When implementing SCIM provisioning,
+you may want to warn your security-conscious employees about this email.
+
## Troubleshooting
This section contains possible solutions for problems you might encounter.
diff --git a/doc/user/index.md b/doc/user/index.md
index a678038507f..47a9699543a 100644
--- a/doc/user/index.md
+++ b/doc/user/index.md
@@ -31,10 +31,10 @@ For more information, see [All GitLab Features](https://about.gitlab.com/feature
To get familiar with the concepts needed to develop code on GitLab, read the following articles:
- [Demo: Mastering Code Review With GitLab](https://about.gitlab.com/blog/2017/03/17/demo-mastering-code-review-with-gitlab/).
-- [GitLab Workflow: An Overview](https://about.gitlab.com/blog/2016/10/25/gitlab-workflow-an-overview/#gitlab-workflow-use-case-scenario).
+- [GitLab Workflow: An Overview](https://about.gitlab.com/topics/version-control/what-is-gitlab-workflow/#gitlab-workflow-a-use-case-scenario).
- [Tutorial: It's all connected in GitLab](https://about.gitlab.com/blog/2016/03/08/gitlab-tutorial-its-all-connected/): an overview on code collaboration with GitLab.
- [Trends in Version Control Land: Microservices](https://about.gitlab.com/blog/2016/08/16/trends-in-version-control-land-microservices/).
-- [Trends in Version Control Land: Innersourcing](https://about.gitlab.com/blog/2016/07/07/trends-version-control-innersourcing/).
+- [Trends in Version Control Land: Innersourcing](https://about.gitlab.com/topics/version-control/what-is-innersource/).
## Use cases
diff --git a/doc/user/infrastructure/index.md b/doc/user/infrastructure/index.md
index 6ba5e49d553..b202359847c 100644
--- a/doc/user/infrastructure/index.md
+++ b/doc/user/infrastructure/index.md
@@ -52,9 +52,9 @@ This video from January 2021 walks you through all the GitLab Terraform integrat
## GitLab Managed Terraform state
-[Terraform remote backends](https://www.terraform.io/docs/backends/index.html)
+[Terraform remote backends](https://www.terraform.io/docs/language/settings/backends/index.html)
enable you to store the state file in a remote, shared store. GitLab uses the
-[Terraform HTTP backend](https://www.terraform.io/docs/backends/types/http.html)
+[Terraform HTTP backend](https://www.terraform.io/docs/language/settings/backends/http.html)
to securely store the state files in local storage (the default) or
[the remote store of your choice](../../administration/terraform_state.md).
diff --git a/doc/user/infrastructure/terraform_state.md b/doc/user/infrastructure/terraform_state.md
index ae35ebce0dc..786665ec47c 100644
--- a/doc/user/infrastructure/terraform_state.md
+++ b/doc/user/infrastructure/terraform_state.md
@@ -8,9 +8,9 @@ info: To determine the technical writer assigned to the Stage/Group associated w
> [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/2673) in GitLab 13.0.
-[Terraform remote backends](https://www.terraform.io/docs/backends/index.html)
+[Terraform remote backends](https://www.terraform.io/docs/language/settings/backends/index.html)
enable you to store the state file in a remote, shared store. GitLab uses the
-[Terraform HTTP backend](https://www.terraform.io/docs/backends/types/http.html)
+[Terraform HTTP backend](https://www.terraform.io/docs/language/settings/backends/http.html)
to securely store the state files in local storage (the default) or
[the remote store of your choice](../../administration/terraform_state.md).
@@ -96,7 +96,7 @@ Next, [configure the backend](#configure-the-backend).
After executing the `terraform init` command, you must configure the Terraform backend
and the CI YAML file:
-1. In your Terraform project, define the [HTTP backend](https://www.terraform.io/docs/backends/types/http.html)
+1. In your Terraform project, define the [HTTP backend](https://www.terraform.io/docs/language/settings/backends/http.html)
by adding the following code block in a `.tf` file (such as `backend.tf`) to
define the remote backend:
@@ -203,9 +203,9 @@ See [this reference project](https://gitlab.com/gitlab-org/configure/examples/gi
## Using a GitLab managed Terraform state backend as a remote data source
You can use a GitLab-managed Terraform state as a
-[Terraform data source](https://www.terraform.io/docs/providers/terraform/d/remote_state.html).
+[Terraform data source](https://www.terraform.io/docs/language/state/remote-state-data.html).
To use your existing Terraform state backend as a data source, provide the following details
-as [Terraform input variables](https://www.terraform.io/docs/configuration/variables.html):
+as [Terraform input variables](https://www.terraform.io/docs/language/values/variables.html):
- **address**: The URL of the remote state backend you want to use as a data source.
For example, `https://gitlab.com/api/v4/projects/<TARGET-PROJECT-ID>/terraform/state/<TARGET-STATE-NAME>`.
diff --git a/doc/user/markdown.md b/doc/user/markdown.md
index 5f974d75522..cba7354cd82 100644
--- a/doc/user/markdown.md
+++ b/doc/user/markdown.md
@@ -22,7 +22,7 @@ We encourage you to view this document as [rendered by GitLab itself](https://gi
GitLab uses "GitLab Flavored Markdown" (GFM). It extends the [CommonMark specification](https://spec.commonmark.org/current/)
(which is based on standard Markdown) in several ways to add more features.
-It was inspired by [GitHub Flavored Markdown](https://docs.github.com/en/free-pro-team@latest/github/writing-on-github/basic-writing-and-formatting-syntax).
+It was inspired by [GitHub Flavored Markdown](https://docs.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax).
You can use GFM in the following areas:
diff --git a/doc/user/packages/go_proxy/index.md b/doc/user/packages/go_proxy/index.md
index c9397f8d9f6..1fdc34e820e 100644
--- a/doc/user/packages/go_proxy/index.md
+++ b/doc/user/packages/go_proxy/index.md
@@ -96,7 +96,7 @@ following steps work only if GitLab is configured for HTTPS:
Create a [personal access token](../../profile/personal_access_tokens.md) with
the scope set to `api` or `read_api`.
-Open your [`~/.netrc`](https://ec.haxx.se/usingcurl/usingcurl-netrc) file
+Open your [`~/.netrc`](https://everything.curl.dev/usingcurl/netrc) file
and add the following text. Replace the variables in `< >` with your values.
```plaintext
diff --git a/doc/user/packages/index.md b/doc/user/packages/index.md
index d2bd9ef5646..03738eb0b9e 100644
--- a/doc/user/packages/index.md
+++ b/doc/user/packages/index.md
@@ -43,14 +43,14 @@ guides you through the process.
| CocoaPods | [#36890](https://gitlab.com/gitlab-org/gitlab/-/issues/36890) |
| Conda | [#36891](https://gitlab.com/gitlab-org/gitlab/-/issues/36891) |
| CRAN | [#36892](https://gitlab.com/gitlab-org/gitlab/-/issues/36892) |
-| Debian | [WIP: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/44746) |
+| Debian | [Draft: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/50438) |
| Opkg | [#36894](https://gitlab.com/gitlab-org/gitlab/-/issues/36894) |
| P2 | [#36895](https://gitlab.com/gitlab-org/gitlab/-/issues/36895) |
| Puppet | [#36897](https://gitlab.com/gitlab-org/gitlab/-/issues/36897) |
| RPM | [#5932](https://gitlab.com/gitlab-org/gitlab/-/issues/5932) |
| RubyGems | [#803](https://gitlab.com/gitlab-org/gitlab/-/issues/803) |
| SBT | [#36898](https://gitlab.com/gitlab-org/gitlab/-/issues/36898) |
-| Terraform | [WIP: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18834) |
+| Terraform | [Draft: Merge Request](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/18834) |
| Vagrant | [#36899](https://gitlab.com/gitlab-org/gitlab/-/issues/36899) |
<!-- vale gitlab.Spelling = YES -->
diff --git a/doc/user/packages/npm_registry/index.md b/doc/user/packages/npm_registry/index.md
index b1075e19b7b..68b421ec73b 100644
--- a/doc/user/packages/npm_registry/index.md
+++ b/doc/user/packages/npm_registry/index.md
@@ -86,7 +86,9 @@ A `package.json` file is created.
To use the GitLab endpoint for npm packages, choose an option:
- **Project-level**: Use when you have few npm packages and they are not in
- the same GitLab group.
+ the same GitLab group. The [package naming convention](#package-naming-convention) is not enforced at this level.
+ Instead, you should use a [scope](https://docs.npmjs.com/cli/v6/using-npm/scope) for your package.
+ When you use a scope, the registry URL is [updated](#authenticate-to-the-package-registry) only for that scope.
- **Instance-level**: Use when you have many npm packages in different
GitLab groups or in their own namespace. Be sure to comply with the [package naming convention](#package-naming-convention).
@@ -204,7 +206,7 @@ Then, you can run `npm publish` either locally or by using GitLab CI/CD.
## Package naming convention
-Your npm package name must be in the format of `@scope/package-name`.
+When you use the [instance-level endpoint](#use-the-gitlab-endpoint-for-npm-packages), only the packages with names in the format of `@scope/package-name` are available.
- The `@scope` is the root namespace of the GitLab project. It must match exactly, including the case.
- The `package-name` can be whatever you want.
@@ -302,8 +304,9 @@ the same version more than once, even if it has been deleted.
## Install a package
npm packages are commonly-installed by using the `npm` or `yarn` commands
-in a JavaScript project. You can install a package from the scope of a project, group,
-or instance.
+in a JavaScript project. You can install a package from the scope of a project or instance.
+
+If multiple packages have the same name and version, when you install a package, the most recently-published package is retrieved.
1. Set the URL for scoped packages by running:
diff --git a/doc/user/packages/workflows/monorepo.md b/doc/user/packages/workflows/monorepo.md
deleted file mode 100644
index abba9df6ec2..00000000000
--- a/doc/user/packages/workflows/monorepo.md
+++ /dev/null
@@ -1,9 +0,0 @@
----
-redirect_to: '../npm_registry/index.md'
-disqus_identifier: 'https://docs.gitlab.com/ee/user/packages/workflows/monorepo.html'
----
-
-This document was moved to [another location](../npm_registry/index.md).
-
-<!-- This redirect file can be deleted after <2021-02-14>. -->
-<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/#move-or-rename-a-page -->
diff --git a/doc/user/profile/img/busy_indicator_note_header_v13_9.png b/doc/user/profile/img/busy_indicator_note_header_v13_9.png
new file mode 100644
index 00000000000..e1dade8fabc
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_note_header_v13_9.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_notes_v13_9.png b/doc/user/profile/img/busy_indicator_notes_v13_9.png
new file mode 100644
index 00000000000..ac3e57815cc
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_notes_v13_9.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_profile_page_v13_6.png b/doc/user/profile/img/busy_indicator_profile_page_v13_6.png
new file mode 100644
index 00000000000..4698a0bd45c
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_profile_page_v13_6.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_settings_menu_v13_6.png b/doc/user/profile/img/busy_indicator_settings_menu_v13_6.png
new file mode 100644
index 00000000000..9dc10603a19
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_settings_menu_v13_6.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_sidebar_collapsed_v13_9.png b/doc/user/profile/img/busy_indicator_sidebar_collapsed_v13_9.png
new file mode 100644
index 00000000000..2cecd74542a
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_sidebar_collapsed_v13_9.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_sidebar_v13_9.png b/doc/user/profile/img/busy_indicator_sidebar_v13_9.png
new file mode 100644
index 00000000000..8bbc2e9551b
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_sidebar_v13_9.png
Binary files differ
diff --git a/doc/user/profile/img/busy_indicator_user_popovers_v13_6.png b/doc/user/profile/img/busy_indicator_user_popovers_v13_6.png
new file mode 100644
index 00000000000..7941f098a08
--- /dev/null
+++ b/doc/user/profile/img/busy_indicator_user_popovers_v13_6.png
Binary files differ
diff --git a/doc/user/profile/index.md b/doc/user/profile/index.md
index d2cbf9e4acd..17516adf799 100644
--- a/doc/user/profile/index.md
+++ b/doc/user/profile/index.md
@@ -233,6 +233,26 @@ To set the busy status indicator, either:
1. Select **Edit profile**.
1. Select the **Busy** checkbox.
+ Once selected, you can see the busy status in various locations in the user interface.
+
+ Username:
+
+ | Profile page | Settings menu | User popovers |
+ | --- | --- | --- |
+ | ![Busy status - profile page](img/busy_indicator_profile_page_v13_6.png) | ![Busy status - settings menu](img/busy_indicator_settings_menu_v13_6.png) | ![Busy status - user popovers](img/busy_indicator_user_popovers_v13_6.png) |
+
+ Issue and merge request sidebar:
+
+ | Sidebar| Collapsed sidebar |
+ | --- | --- |
+ | ![Busy status - sidebar](img/busy_indicator_sidebar_v13_9.png) | ![Busy status - sidebar collapsed](img/busy_indicator_sidebar_collapsed_v13_9.png) |
+
+ Notes:
+
+ | Notes | Note headers |
+ | --- | --- |
+ | ![Busy status - notes](img/busy_indicator_notes_v13_9.png) | ![Busy status - note header](img/busy_indicator_note_header_v13_9.png) |
+
### Disable busy status feature
The busy status feature is deployed behind a feature flag and is **enabled by default**.
diff --git a/doc/user/profile/notifications.md b/doc/user/profile/notifications.md
index 703154945db..5e36bb70935 100644
--- a/doc/user/profile/notifications.md
+++ b/doc/user/profile/notifications.md
@@ -206,7 +206,7 @@ epics:
| Failed pipeline | The author of the pipeline |
| Fixed pipeline ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/24309) in GitLab 13.1.) | The author of the pipeline. Enabled by default. |
| Merge merge request | |
-| Merge when pipeline succeeds ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/211961) in GitLab 13.4) | |
+| Merge when pipeline succeeds ([introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/211961) in GitLab 13.4) | Author, Participants, Watchers, Subscribers, and Custom notification level with this event selected. `Note:` Custom notification level is ignored for Author, Watchers and Subscribers |
| New comment | Participants, Watchers, Subscribers, and Custom notification level with this event selected, plus anyone mentioned by `@username` in the comment, with notification level "Mention" or higher |
| New epic | |
| New issue | |
diff --git a/doc/user/profile/personal_access_tokens.md b/doc/user/profile/personal_access_tokens.md
index 99db0c4b898..d32971a7618 100644
--- a/doc/user/profile/personal_access_tokens.md
+++ b/doc/user/profile/personal_access_tokens.md
@@ -21,7 +21,7 @@ Personal access tokens expire on the date you define, at midnight UTC.
- GitLab runs a check at 01:00 AM UTC every day to identify personal access tokens that expire in under seven days. The owners of these tokens are notified by email.
- GitLab runs a check at 02:00 AM UTC every day to identify personal access tokens that expired on the current date. The owners of these tokens are notified by email.
- In GitLab Ultimate, administrators may [limit the lifetime of personal access tokens](../admin_area/settings/account_and_limit_settings.md#limiting-lifetime-of-personal-access-tokens).
-- In GitLab Ultimate, administrators may [toggle enforcement of personal access token expiry](../admin_area/settings/account_and_limit_settings.md#optional-enforcement-of-personal-access-token-expiry).
+- In GitLab Ultimate, administrators may [toggle enforcement of personal access token expiration](../admin_area/settings/account_and_limit_settings.md#optional-non-enforcement-of-personal-access-token-expiration).
For examples of how you can use a personal access token to authenticate with the API, see the following section from our [API Docs](../../api/README.md#personalproject-access-tokens).
diff --git a/doc/user/profile/preferences.md b/doc/user/profile/preferences.md
index 464edf13a7e..c9b17eaaefe 100644
--- a/doc/user/profile/preferences.md
+++ b/doc/user/profile/preferences.md
@@ -58,12 +58,10 @@ Dark mode is available as a navigation theme, for MVC and compatibility reasons.
the future, we plan to make it configurable in its own section along with support for
[different navigation themes](https://gitlab.com/gitlab-org/gitlab/-/issues/219512).
-NOTE:
Dark theme only works with the **Dark** syntax highlighting theme.
## Syntax highlighting theme
-NOTE:
GitLab uses the [rouge Ruby library](http://rouge.jneen.net/ "Rouge website")
for syntax highlighting outside of any Editor context. The WebIDE (like Snippets)
uses [Monaco Editor](https://microsoft.github.io/monaco-editor/) and it's provided
@@ -88,11 +86,7 @@ The default syntax theme is White, and you can choose among 5 different themes:
![Profile preferences syntax highlighting themes](img/profile-preferences-syntax-themes.png)
-[Introduced](https://gitlab.com/groups/gitlab-org/-/epics/2389) in 13.0, the theme
-you choose also applies to the [Web IDE](../project/web_ide/index.md)'s code editor and [Snippets](../snippets.md).
-The themes are available only in the Web IDE file editor, except for the [dark theme](https://gitlab.com/gitlab-org/gitlab/-/issues/209808) and
-the [Solarized dark theme](https://gitlab.com/gitlab-org/gitlab/-/issues/219228),
-which apply to the entire Web IDE screen.
+Introduced in GitLab 13.6, the themes [Solarized](https://gitlab.com/gitlab-org/gitlab/-/issues/221034) and [Monokai](https://gitlab.com/gitlab-org/gitlab/-/issues/221034) also apply to the [Web IDE](../project/web_ide/index.md) and [Snippets](../snippets.md).
## Behavior
diff --git a/doc/user/project/clusters/add_eks_clusters.md b/doc/user/project/clusters/add_eks_clusters.md
index eb6b8302667..141e8267d75 100644
--- a/doc/user/project/clusters/add_eks_clusters.md
+++ b/doc/user/project/clusters/add_eks_clusters.md
@@ -326,7 +326,7 @@ If a default Storage Class doesn't already exist and is desired, follow Amazon's
to create one.
Alternatively, disable PostgreSQL by setting the project variable
-[`POSTGRES_ENABLED`](../../../topics/autodevops/customize.md#environment-variables) to `false`.
+[`POSTGRES_ENABLED`](../../../topics/autodevops/customize.md#cicd-variables) to `false`.
### Deploy the app to EKS
diff --git a/doc/user/project/clusters/index.md b/doc/user/project/clusters/index.md
index d3d434762ab..fd3426f01e2 100644
--- a/doc/user/project/clusters/index.md
+++ b/doc/user/project/clusters/index.md
@@ -58,7 +58,6 @@ Kubernetes version to any supported version at any time:
- 1.17 (support ends on September 22, 2021)
- 1.16 (support ends on July 22, 2021)
- 1.15 (support ends on May 22, 2021)
-- 1.14 (deprecated, support ends on December 22, 2020)
Some GitLab features may support versions outside the range provided here.
diff --git a/doc/user/project/clusters/protect/container_host_security/quick_start_guide.md b/doc/user/project/clusters/protect/container_host_security/quick_start_guide.md
index 0c4ec72ed5b..0383675e38c 100644
--- a/doc/user/project/clusters/protect/container_host_security/quick_start_guide.md
+++ b/doc/user/project/clusters/protect/container_host_security/quick_start_guide.md
@@ -15,7 +15,7 @@ applications through GMAv2 exclusively when using Container Network Security.
The following steps are recommended to install and use Container Host Security through GitLab:
1. [Install at least one runner and connect it to GitLab](https://docs.gitlab.com/runner/).
-1. [Create a group](../../../../group/#create-a-new-group).
+1. [Create a group](../../../../group/#create-a-group).
1. [Connect a Kubernetes cluster to the group](../../add_remove_clusters.md).
1. [Create a cluster management project and associate it with the Kubernetes cluster](../../../../clusters/management_project.md).
diff --git a/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md b/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md
index e530f0dfcda..30f0791a054 100644
--- a/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md
+++ b/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md
@@ -15,7 +15,7 @@ applications through GMAv2 exclusively when using Container Network Security.
The following steps are recommended to install and use Container Network Security through GitLab:
1. [Install at least one runner and connect it to GitLab](https://docs.gitlab.com/runner/).
-1. [Create a group](../../../../group/#create-a-new-group).
+1. [Create a group](../../../../group/#create-a-group).
1. [Connect a Kubernetes cluster to the group](../../add_remove_clusters.md).
1. [Create a cluster management project and associate it with the Kubernetes cluster](../../../../clusters/management_project.md).
diff --git a/doc/user/project/code_intelligence.md b/doc/user/project/code_intelligence.md
index 0e8c1bf8f4d..b290359cc6c 100644
--- a/doc/user/project/code_intelligence.md
+++ b/doc/user/project/code_intelligence.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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
---
@@ -19,6 +19,9 @@ Code Intelligence is built into GitLab and powered by [LSIF](https://lsif.dev/)
(Language Server Index Format), a file format for precomputed code
intelligence data.
+NOTE:
+You can automate this feature in your applications by using [Auto DevOps](../../topics/autodevops/index.md).
+
## Configuration
Enable code intelligence for a project by adding a GitLab CI/CD job to the project's
diff --git a/doc/user/project/deploy_boards.md b/doc/user/project/deploy_boards.md
index 72695580d9d..83e3d0c2c80 100644
--- a/doc/user/project/deploy_boards.md
+++ b/doc/user/project/deploy_boards.md
@@ -16,6 +16,10 @@ of the pods in the deployment. Developers and other teammates can view the
progress and status of a rollout, pod by pod, in the workflow they already use
without any need to access Kubernetes.
+NOTE:
+If you have a Kubernetes cluster, you can Auto Deploy applications to production
+environments by using [Auto DevOps](../../topics/autodevops/index.md).
+
## Overview
With Deploy Boards you can gain more insight into deploys with benefits such as:
diff --git a/doc/user/project/deploy_tokens/index.md b/doc/user/project/deploy_tokens/index.md
index 6f05c40eefc..2eb9bdf0c2a 100644
--- a/doc/user/project/deploy_tokens/index.md
+++ b/doc/user/project/deploy_tokens/index.md
@@ -20,7 +20,7 @@ Deploy tokens can be managed by [maintainers only](../../permissions.md).
Deploy tokens cannot be used with the GitLab API.
-If you have a key pair, you might want to use [deploy keys](../../../ssh/README.md#deploy-keys)
+If you have a key pair, you might want to use [deploy keys](../../project/deploy_keys/index.md)
instead.
## Creating a Deploy Token
@@ -180,7 +180,6 @@ docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY
```
NOTE:
-The special handling for the `gitlab-deploy-token` deploy token is not currently
-implemented for group deploy tokens. For the deploy token to be available for
-CI/CD jobs, it must be created at the project level. For details, see
-[this issue](https://gitlab.com/gitlab-org/gitlab/-/issues/214014).
+The special handling for the `gitlab-deploy-token` deploy token is not
+implemented for group deploy tokens. To make the group-level deploy token available for
+CI/CD jobs, use the workaround in [issue 214014](https://gitlab.com/gitlab-org/gitlab/-/issues/214014).
diff --git a/doc/user/project/description_templates.md b/doc/user/project/description_templates.md
index c56470ee07a..307313ffb49 100644
--- a/doc/user/project/description_templates.md
+++ b/doc/user/project/description_templates.md
@@ -37,10 +37,10 @@ To learn how to create templates for various file types in groups, visit
images guidelines, link to the related issue, reviewer name, and so on.
- You can also create issues and merge request templates for different
stages of your workflow, for example, feature proposal, feature improvement, or a bug report.
-- You can use an [issue description template](#creating-issue-templates) as a
+- You can use an [issue description template](#create-an-issue-template) as a
[Service Desk email template](service_desk.md#new-service-desk-issues).
-## Creating issue templates
+## Create an issue template
Create a new Markdown (`.md`) file inside the `.gitlab/issue_templates/`
directory in your repository. Commit and push to your default branch.
@@ -65,13 +65,13 @@ To create the `.gitlab/issue_templates` directory:
To check if this has worked correctly, [create a new issue](issues/managing_issues.md#create-a-new-issue)
and see if you can choose a description template.
-## Creating merge request templates
+## Create a merge request template
Similarly to issue templates, create a new Markdown (`.md`) file inside the
`.gitlab/merge_request_templates/` directory in your repository. Commit and
push to your default branch.
-## Using the templates
+## Use the templates
Let's take for example that you've created the file `.gitlab/issue_templates/Bug.md`.
This enables the `Bug` dropdown option when creating or editing issues. When
@@ -85,9 +85,45 @@ For example: `https://gitlab.com/gitlab-org/gitlab/-/issues/new?issuable_templat
![Description templates](img/description_templates.png)
-## Setting a default template for merge requests and issues **(PREMIUM)**
+### Set an issue and merge request description template at group level **(PREMIUM)**
-> - Moved to GitLab Premium in 13.9.
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/52360) in GitLab 13.9.
+> - It's [deployed behind a feature flag](../feature_flags.md), disabled by default.
+> - It's disabled by default on GitLab.com.
+> - To use it in GitLab self-managed instances, ask a GitLab administrator to
+ [enable it](#enable-or-disable-issue-and-merge-request-description-templates-at-group-and-instance-level).
+
+Templates can be useful because you can create a template once and use it multiple times.
+To re-use templates [you've created](../project/description_templates.md#create-an-issue-template):
+
+1. Go to the group's **Settings > General > Templates**.
+1. From the dropdown, select your template project as the template repository at group level.
+
+![Group template settings](../group/img/group_file_template_settings.png)
+
+### Set an issue and merge request description template at instance level **(PREMIUM ONLY)**
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/52360) in GitLab 13.9.
+> - It's [deployed behind a feature flag](../feature_flags.md), disabled by default.
+> - It's disabled by default on GitLab.com.
+> - To use it in GitLab self-managed instances, ask a GitLab administrator to
+ [enable it](#enable-or-disable-issue-and-merge-request-description-templates-at-group-and-instance-level).
+
+Similar to group templates, issue and merge request templates can also be set up at the instance level.
+This results in those templates being available in all projects within the instance.
+Only instance administrators can set instance-level templates.
+
+To set the instance-level description template repository:
+
+1. Select the **Admin Area** icon (**{admin}**).
+1. Go to **Settings > Templates**.
+1. From the dropdown, select your template project as the template repository at instance level.
+
+Learn more about [instance template repository](../admin_area/settings/instance_template_repository.md).
+
+![Setting templates in the Admin Area](../admin_area/settings/img/file_template_admin_area.png)
+
+### Set a default template for merge requests and issues **(PREMIUM)**
The visibility of issues or merge requests should be set to either "Everyone
with access" or "Only Project Members" in your project's **Settings / Visibility, project features, permissions** section, otherwise the
@@ -159,3 +195,28 @@ it's very hard to read otherwise.)
/cc @project-manager
/assign @qa-tester
```
+
+## Enable or disable issue and merge request description templates at group and instance level
+
+Setting issue and merge request description templates at group and instance levels
+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:
+
+```ruby
+Feature.enable(:inherited_issuable_templates)
+```
+
+To disable it:
+
+```ruby
+Feature.disable(:inherited_issuable_templates)
+```
+
+The feature flag affects these features:
+
+- Setting a templates project as issue and merge request description templates source at group level.
+- Setting a templates project as issue and merge request description templates source at instance level.
diff --git a/doc/user/project/import/github.md b/doc/user/project/import/github.md
index c135b1be54a..11b7f2445e7 100644
--- a/doc/user/project/import/github.md
+++ b/doc/user/project/import/github.md
@@ -62,7 +62,7 @@ must meet one of the following conditions prior to the import:
- Have previously logged in to a GitLab account using the GitHub icon.
- Have a GitHub account with a publicly visible
- [primary email address](https://docs.github.com/en/free-pro-team@latest/rest/reference/users#get-a-user)
+ [primary email address](https://docs.github.com/en/rest/reference/users#get-a-user)
on their profile that matches their GitLab account's primary or secondary email address.
If a user referenced in the project is not found in the GitLab database, the project creator (typically the user
@@ -91,7 +91,7 @@ Before you begin, ensure that any GitHub users who you want to map to GitLab use
- A GitLab account that has logged in using the GitHub icon
\- or -
-- A GitLab account with an email address that matches the [publicly visible email address](https://docs.github.com/en/free-pro-team@latest/rest/reference/users#get-a-user) in the profile of the GitHub user
+- A GitLab account with an email address that matches the [publicly visible email address](https://docs.github.com/en/rest/reference/users#get-a-user) in the profile of the GitHub user
User-matching attempts occur in that order, and if a user is not identified either way, the activity is associated with
the user account that is performing the import.
diff --git a/doc/user/project/integrations/bamboo.md b/doc/user/project/integrations/bamboo.md
index fb9314f7504..3b012ab4430 100644
--- a/doc/user/project/integrations/bamboo.md
+++ b/doc/user/project/integrations/bamboo.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Atlassian Bamboo CI Service
+# Atlassian Bamboo CI Service **(FREE)**
GitLab provides integration with Atlassian Bamboo for continuous integration.
When configured, pushes to a project trigger a build in Bamboo automatically.
diff --git a/doc/user/project/integrations/bugzilla.md b/doc/user/project/integrations/bugzilla.md
index 4e2ee9b3662..7e14515d98e 100644
--- a/doc/user/project/integrations/bugzilla.md
+++ b/doc/user/project/integrations/bugzilla.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Bugzilla Service
+# Bugzilla Service **(FREE)**
Navigate to the [Integrations page](overview.md#accessing-integrations),
select the **Bugzilla** service and fill in the required details as described
diff --git a/doc/user/project/integrations/custom_issue_tracker.md b/doc/user/project/integrations/custom_issue_tracker.md
index 143f0e2a25d..9cc4e980212 100644
--- a/doc/user/project/integrations/custom_issue_tracker.md
+++ b/doc/user/project/integrations/custom_issue_tracker.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Custom Issue Tracker service
+# Custom Issue Tracker service **(FREE)**
To enable the Custom Issue Tracker integration in a project:
diff --git a/doc/user/project/integrations/discord_notifications.md b/doc/user/project/integrations/discord_notifications.md
index 8e0a167a968..624c0252f23 100644
--- a/doc/user/project/integrations/discord_notifications.md
+++ b/doc/user/project/integrations/discord_notifications.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Discord Notifications service
+# Discord Notifications service **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/22684) in GitLab 11.6.
diff --git a/doc/user/project/integrations/emails_on_push.md b/doc/user/project/integrations/emails_on_push.md
index 2274913d349..4970e20974b 100644
--- a/doc/user/project/integrations/emails_on_push.md
+++ b/doc/user/project/integrations/emails_on_push.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Enabling emails on push
+# Enabling emails on push **(FREE)**
By enabling this service, you receive email notifications for every change
that is pushed to your project.
diff --git a/doc/user/project/integrations/github.md b/doc/user/project/integrations/github.md
index 5ef36ff4074..1c0309cab87 100644
--- a/doc/user/project/integrations/github.md
+++ b/doc/user/project/integrations/github.md
@@ -20,7 +20,7 @@ and is automatically configured on [GitHub import](../../../integration/github.m
### Complete these steps on GitHub
-This integration requires a [GitHub API token](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token)
+This integration requires a [GitHub API token](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token)
with `repo:status` access granted:
1. Go to your "Personal access tokens" page at <https://github.com/settings/tokens>
diff --git a/doc/user/project/integrations/hangouts_chat.md b/doc/user/project/integrations/hangouts_chat.md
index 06dcca6eb44..d0efebd4da7 100644
--- a/doc/user/project/integrations/hangouts_chat.md
+++ b/doc/user/project/integrations/hangouts_chat.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Hangouts Chat service
+# Hangouts Chat service **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/43756) in GitLab 11.2.
diff --git a/doc/user/project/integrations/hipchat.md b/doc/user/project/integrations/hipchat.md
index 7b90d8d7cfd..f66fc0a0f6a 100644
--- a/doc/user/project/integrations/hipchat.md
+++ b/doc/user/project/integrations/hipchat.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Atlassian HipChat
+# Atlassian HipChat **(FREE)**
GitLab provides a way to send HipChat notifications upon a number of events,
such as when a user pushes code, creates a branch or tag, adds a comment, and
diff --git a/doc/user/project/integrations/index.md b/doc/user/project/integrations/index.md
index 0e5163e992a..5628a9bc5e5 100644
--- a/doc/user/project/integrations/index.md
+++ b/doc/user/project/integrations/index.md
@@ -4,7 +4,7 @@ group: Ecosystem
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 integrations
+# Project integrations **(FREE)**
You can find the available integrations under your project's
**Settings > Integrations** page. You need to have at least
diff --git a/doc/user/project/integrations/irker.md b/doc/user/project/integrations/irker.md
index 58f7ea3279f..e75561b3ddb 100644
--- a/doc/user/project/integrations/irker.md
+++ b/doc/user/project/integrations/irker.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Irker IRC Gateway
+# Irker IRC Gateway **(FREE)**
GitLab provides a way to push update messages to an Irker server. When
configured, pushes to a project trigger the service to send data directly
diff --git a/doc/user/project/integrations/jira.md b/doc/user/project/integrations/jira.md
index 5857c3da803..050f4faa5aa 100644
--- a/doc/user/project/integrations/jira.md
+++ b/doc/user/project/integrations/jira.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# GitLab Jira integration
+# GitLab Jira integration **(FREE)**
You can use Jira to track work implemented in GitLab. The Jira integration with GitLab makes the
process of working across these systems more efficient.
@@ -106,8 +106,6 @@ To enable the Jira integration in a project:
1. To include a comment on the Jira issue when the above reference is made in GitLab, select
**Enable comments**.
- 1. Select the **Comment detail**: **Standard** or **All details**.
-
1. Enter the further details on the page as described in the following table.
| Field | Description |
@@ -116,7 +114,6 @@ To enable the Jira integration in a project:
| `Jira API URL` | The base URL to the Jira instance API. Web URL value is used if not set. For example, `https://jira-api.example.com`. Leave this field blank (or use the same value of `Web URL`) if using **Jira on Atlassian cloud**. |
| `Username or Email` | Created in [configure Jira](#configure-jira) step. Use `username` for **Jira Server** or `email` for **Jira on Atlassian cloud**. |
| `Password/API token` | Created in [configure Jira](#configure-jira) step. Use `password` for **Jira Server** or `API token` for **Jira on Atlassian cloud**. |
- | `Jira workflow transition IDs` | Required for closing Jira issues via commits or merge requests. These are the IDs of transitions in Jira that move issues to a particular state. (See [Obtaining a transition ID](#obtaining-a-transition-id).) If you insert multiple transition IDs separated by `,` or `;`, the issue is moved to each state, one after another, using the given order. In GitLab 13.6 and earlier, field was called `Transition ID`. |
1. To enable users to view Jira issues inside the GitLab project, select **Enable Jira issues** and
enter a Jira project key. **(PREMIUM)**
@@ -138,10 +135,19 @@ To enable the Jira integration in a project:
Your GitLab project can now interact with all Jira projects in your instance and the project now
displays a Jira link that opens the Jira project.
-#### Obtaining a transition ID
+#### Automatic issue transitions
+
+When you [close a Jira issues with a trigger word](../issues/managing_issues.md#closing-issues-automatically),
+GitLab by default transitions the issue to the next available status with a category of "Done".
+
+#### Custom issue transitions
+
+For advanced workflows you can specify custom Jira transition IDs. If you insert multiple transition IDs separated by `,` or `;`, the issue is moved to each state, one after another, using the given order.
+
+To see the transition IDs on Jira Cloud, edit a workflow in the **Text** view.
+The transition IDs display in the **Transitions** column.
-In the most recent Jira user interface, you can no longer see transition IDs in the workflow
-administration UI. You can get the ID you need in either of the following ways:
+On Jira Server you can get the transition IDs in either of the following ways:
1. By using the API, with a request like `https://yourcompany.atlassian.net/rest/api/2/issue/ISSUE-123/transitions`
using an issue that is in the appropriate "open" state
diff --git a/doc/user/project/integrations/jira_cloud_configuration.md b/doc/user/project/integrations/jira_cloud_configuration.md
index e9f30f32308..8e25af3f884 100644
--- a/doc/user/project/integrations/jira_cloud_configuration.md
+++ b/doc/user/project/integrations/jira_cloud_configuration.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Create an API token in Jira on Atlassian cloud
+# Create an API token in Jira on Atlassian cloud **(FREE)**
For [integrations with Jira](jira.md), an API token is needed when integrating with Jira
on Atlassian cloud. To create an API token:
diff --git a/doc/user/project/integrations/jira_integrations.md b/doc/user/project/integrations/jira_integrations.md
index 6a1529f001a..6b938238320 100644
--- a/doc/user/project/integrations/jira_integrations.md
+++ b/doc/user/project/integrations/jira_integrations.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Jira integrations
+# Jira integrations **(FREE)**
GitLab can be integrated with [Jira](https://www.atlassian.com/software/jira).
diff --git a/doc/user/project/integrations/jira_server_configuration.md b/doc/user/project/integrations/jira_server_configuration.md
index 5bb17388a1e..b1ab2076dc0 100644
--- a/doc/user/project/integrations/jira_server_configuration.md
+++ b/doc/user/project/integrations/jira_server_configuration.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Create Jira Server username and password
+# Create Jira Server username and password **(FREE)**
For [integrations with Jira](jira.md), you must create a user account in Jira to have access to
all projects that need to integrate with GitLab.
diff --git a/doc/user/project/integrations/mattermost.md b/doc/user/project/integrations/mattermost.md
index db190f47b01..6a93fc0fb06 100644
--- a/doc/user/project/integrations/mattermost.md
+++ b/doc/user/project/integrations/mattermost.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Mattermost Notifications Service
+# Mattermost Notifications Service **(FREE)**
The Mattermost Notifications Service allows your GitLab project to send events (e.g., `issue created`) to your existing Mattermost team as notifications. This requires configurations in both Mattermost and GitLab.
diff --git a/doc/user/project/integrations/mattermost_slash_commands.md b/doc/user/project/integrations/mattermost_slash_commands.md
index 6c8a0ded2ae..d2ef6a24ddf 100644
--- a/doc/user/project/integrations/mattermost_slash_commands.md
+++ b/doc/user/project/integrations/mattermost_slash_commands.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Mattermost slash commands
+# Mattermost slash commands **(FREE)**
> Introduced in GitLab 8.14
diff --git a/doc/user/project/integrations/microsoft_teams.md b/doc/user/project/integrations/microsoft_teams.md
index 136da05d0e8..41e0938fc3b 100644
--- a/doc/user/project/integrations/microsoft_teams.md
+++ b/doc/user/project/integrations/microsoft_teams.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Microsoft Teams service
+# Microsoft Teams service **(FREE)**
## On Microsoft Teams
diff --git a/doc/user/project/integrations/mock_ci.md b/doc/user/project/integrations/mock_ci.md
index 18f0ad6b275..934510fd155 100644
--- a/doc/user/project/integrations/mock_ci.md
+++ b/doc/user/project/integrations/mock_ci.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Mock CI Service
+# Mock CI Service **(FREE)**
**NB: This service is only listed if you are in a development environment!**
diff --git a/doc/user/project/integrations/overview.md b/doc/user/project/integrations/overview.md
index b22a7c0295e..f6590b6ba2f 100644
--- a/doc/user/project/integrations/overview.md
+++ b/doc/user/project/integrations/overview.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Integrations
+# Integrations **(FREE)**
Integrations allow you to integrate GitLab with other applications. They
are a bit like plugins in that they allow a lot of freedom in adding
diff --git a/doc/user/project/integrations/redmine.md b/doc/user/project/integrations/redmine.md
index 38d6194b390..256ffe84ee2 100644
--- a/doc/user/project/integrations/redmine.md
+++ b/doc/user/project/integrations/redmine.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Redmine Service
+# Redmine Service **(FREE)**
1. To enable the Redmine integration in a project, navigate to the
[Integrations page](overview.md#accessing-integrations), click
diff --git a/doc/user/project/integrations/servicenow.md b/doc/user/project/integrations/servicenow.md
index 1de69f60a34..bdc05552c31 100644
--- a/doc/user/project/integrations/servicenow.md
+++ b/doc/user/project/integrations/servicenow.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# ServiceNow integration
+# ServiceNow integration **(FREE)**
ServiceNow offers several integrations to help centralize and automate your
management of GitLab workflows.
diff --git a/doc/user/project/integrations/services_templates.md b/doc/user/project/integrations/services_templates.md
index 7507792bb02..66810d8a01b 100644
--- a/doc/user/project/integrations/services_templates.md
+++ b/doc/user/project/integrations/services_templates.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Service templates
+# Service templates **(FREE)**
WARNING:
Service templates are [deprecated and scheduled to be removed](https://gitlab.com/gitlab-org/gitlab/-/issues/268032)
diff --git a/doc/user/project/integrations/slack.md b/doc/user/project/integrations/slack.md
index ab798675278..17d1c3adcb5 100644
--- a/doc/user/project/integrations/slack.md
+++ b/doc/user/project/integrations/slack.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Slack Notifications Service
+# Slack Notifications Service **(FREE)**
The Slack Notifications Service allows your GitLab project to send events
(such as issue creation) to your existing Slack team as notifications. Setting up
diff --git a/doc/user/project/integrations/unify_circuit.md b/doc/user/project/integrations/unify_circuit.md
index e8dcb577aba..3e5e368722e 100644
--- a/doc/user/project/integrations/unify_circuit.md
+++ b/doc/user/project/integrations/unify_circuit.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Unify Circuit service
+# Unify Circuit service **(FREE)**
The Unify Circuit service sends notifications from GitLab to the conversation for which the webhook was created.
diff --git a/doc/user/project/integrations/webex_teams.md b/doc/user/project/integrations/webex_teams.md
index 8a3383fd0e7..6820412808f 100644
--- a/doc/user/project/integrations/webex_teams.md
+++ b/doc/user/project/integrations/webex_teams.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Webex Teams service
+# Webex Teams service **(FREE)**
You can configure GitLab to send notifications to a Webex Teams space.
diff --git a/doc/user/project/integrations/webhooks.md b/doc/user/project/integrations/webhooks.md
index 0cf01adef13..63f15b7b914 100644
--- a/doc/user/project/integrations/webhooks.md
+++ b/doc/user/project/integrations/webhooks.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# Webhooks
+# Webhooks **(FREE)**
Project webhooks allow you to trigger a percent-encoded URL if, for example, new code is pushed or
a new issue is created. You can configure webhooks to listen for specific events
diff --git a/doc/user/project/integrations/youtrack.md b/doc/user/project/integrations/youtrack.md
index f9b3c083a54..f9f61de9d6b 100644
--- a/doc/user/project/integrations/youtrack.md
+++ b/doc/user/project/integrations/youtrack.md
@@ -4,7 +4,7 @@ group: Ecosystem
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
---
-# YouTrack Service
+# YouTrack Service **(FREE)**
JetBrains [YouTrack](https://www.jetbrains.com/help/youtrack/standalone/YouTrack-Documentation.html) is a web-based issue tracking and project management platform.
diff --git a/doc/user/project/issue_board.md b/doc/user/project/issue_board.md
index e4f42b97b84..9c12591fa61 100644
--- a/doc/user/project/issue_board.md
+++ b/doc/user/project/issue_board.md
@@ -154,7 +154,7 @@ for them.
NOTE:
For a broader use case, please see the blog post
-[GitLab Workflow, an Overview](https://about.gitlab.com/blog/2016/10/25/gitlab-workflow-an-overview/#gitlab-workflow-use-case-scenario).
+[GitLab Workflow, an Overview](https://about.gitlab.com/topics/version-control/what-is-gitlab-workflow/#gitlab-workflow-a-use-case-scenario).
For a real use case example, you can read why
[Codepen decided to adopt issue boards](https://about.gitlab.com/blog/2017/01/27/codepen-welcome-to-gitlab/#project-management-everything-in-one-place)
to improve their workflow with multiple boards.
@@ -277,6 +277,32 @@ group and its descendant subgroups. Similarly, you can only filter by group labe
boards. When updating milestones and labels for an issue through the sidebar update mechanism, again only
group-level objects are available.
+#### GraphQL-based sidebar for group issue boards **(PREMIUM)**
+
+<!-- When the feature flag is removed, integrate this section into the above ("Group issue boards"). -->
+
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/285074) in GitLab 13.9.
+> - It's [deployed behind a feature flag](../feature_flags.md), disabled by default.
+> - It's disabled on GitLab.com.
+> - It's not recommended for production use.
+> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-graphql-based-sidebar-for-group-issue-boards). **(PREMIUM SELF)**
+
+WARNING:
+This feature might not be available to you. Check the **version history** note above for details.
+
+The work-in-progress GraphQL-based sidebar for group issue boards brings better performance and the
+ability to edit issue titles in the issue sidebar.
+
+To **edit an issue's title** in the issue sidebar:
+
+1. In a group issue board, select the issue card. The issue sidebar opens on the right.
+1. Next to the issue's title, select **Edit**.
+
+This is work in progress as of GitLab 13.9. Learn more about the known issues in
+[MR 51480](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/51480).
+
+<!-- Add this at the end of the file -->
+
### Assignee lists **(PREMIUM)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/5784) in [GitLab Premium](https://about.gitlab.com/pricing/) 11.0.
@@ -317,6 +343,7 @@ As in other list types, click the trash icon to remove a list.
> - Grouping by epic [introduced](https://gitlab.com/groups/gitlab-org/-/epics/3352) in [GitLab Premium](https://about.gitlab.com/pricing/) 13.6.
> - Editing issue titles in the issue sidebar [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/232745) in GitLab 13.8.
+> - Editing iteration in the issue sidebar [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/290232) in GitLab 13.9.
With swimlanes you can visualize issues grouped by epic.
Your issue board keeps all the other features, but with a different visual organization of issues.
@@ -456,24 +483,6 @@ the list by filtering by the following:
- Release
- Weight
-#### Enable or disable adding issues to the list **(FREE SELF)**
-
-Adding issues to the list 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:
-
-```ruby
-Feature.enable(:add_issues_button)
-```
-
-To disable it:
-
-```ruby
-Feature.disable(:add_issues_button)
-```
-
### Remove an issue from a list
Removing an issue from a list can be done by clicking the issue card and then
@@ -593,3 +602,40 @@ A few things to remember:
- For performance and visibility reasons, each list shows the first 20 issues
by default. If you have more than 20 issues, start scrolling down and the next
20 appear.
+
+## Enable or disable GraphQL-based sidebar for group issue boards **(PREMIUM SELF)**
+
+GraphQL-based sidebar for group issue boards 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:
+
+```ruby
+Feature.enable(:graphql_board_lists)
+```
+
+To disable it:
+
+```ruby
+Feature.disable(:graphql_board_lists)
+```
+
+## Enable or disable adding issues to the list **(FREE SELF)**
+
+Adding issues to the list 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:
+
+```ruby
+Feature.enable(:add_issues_button)
+```
+
+To disable it:
+
+```ruby
+Feature.disable(:add_issues_button)
+```
diff --git a/doc/user/project/issues/index.md b/doc/user/project/issues/index.md
index e398c6f86d0..7a7c3578d42 100644
--- a/doc/user/project/issues/index.md
+++ b/doc/user/project/issues/index.md
@@ -184,7 +184,7 @@ You can then see issue statuses in the [issue list](#issues-list) and the
## Other Issue actions
-- [Create an issue from a template](../../project/description_templates.md#using-the-templates)
+- [Create an issue from a template](../../project/description_templates.md#use-the-templates)
- [Set a due date](due_dates.md)
- [Bulk edit issues](../bulk_editing.md) - From the Issues List, select multiple issues
in order to change their status, assignee, milestone, or labels in bulk.
diff --git a/doc/user/project/merge_requests/allow_collaboration.md b/doc/user/project/merge_requests/allow_collaboration.md
index 7aa7673366d..64757dff749 100644
--- a/doc/user/project/merge_requests/allow_collaboration.md
+++ b/doc/user/project/merge_requests/allow_collaboration.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, howto
---
diff --git a/doc/user/project/merge_requests/authorization_for_merge_requests.md b/doc/user/project/merge_requests/authorization_for_merge_requests.md
index 36481ac0133..aa43d34cdd9 100644
--- a/doc/user/project/merge_requests/authorization_for_merge_requests.md
+++ b/doc/user/project/merge_requests/authorization_for_merge_requests.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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: concepts
---
diff --git a/doc/user/project/merge_requests/browser_performance_testing.md b/doc/user/project/merge_requests/browser_performance_testing.md
index 6fa2340c7a4..f6575ba4173 100644
--- a/doc/user/project/merge_requests/browser_performance_testing.md
+++ b/doc/user/project/merge_requests/browser_performance_testing.md
@@ -13,6 +13,9 @@ If your application offers a web interface and you're using
[GitLab CI/CD](../../../ci/README.md), you can quickly determine the rendering performance
impact of pending code changes in the browser.
+NOTE:
+You can automate this feature in your applications by using [Auto DevOps](../../../topics/autodevops/index.md).
+
## Overview
GitLab uses [Sitespeed.io](https://www.sitespeed.io), a free and open source
diff --git a/doc/user/project/merge_requests/code_quality.md b/doc/user/project/merge_requests/code_quality.md
index 55dc0bcc41a..451561cc22f 100644
--- a/doc/user/project/merge_requests/code_quality.md
+++ b/doc/user/project/merge_requests/code_quality.md
@@ -22,8 +22,7 @@ Code Quality:
[GitLab Code
Quality](https://gitlab.com/gitlab-org/ci-cd/codequality) project using [default Code Climate configurations](https://gitlab.com/gitlab-org/ci-cd/codequality/-/tree/master/codeclimate_defaults).
- Can make use of a [template](#example-configuration).
-- Is available with [Auto
- DevOps](../../../topics/autodevops/stages.md#auto-code-quality).
+- Is available by using [Auto Code Quality](../../../topics/autodevops/stages.md#auto-code-quality), provided by [Auto DevOps](../../../topics/autodevops/index.md).
- Can be extended through [Analysis Plugins](https://docs.codeclimate.com/docs/list-of-engines) or a [custom tool](#implementing-a-custom-tool).
## Code Quality Widget
diff --git a/doc/user/project/merge_requests/creating_merge_requests.md b/doc/user/project/merge_requests/creating_merge_requests.md
index 5cfedc6c9f1..dfd160fc91b 100644
--- a/doc/user/project/merge_requests/creating_merge_requests.md
+++ b/doc/user/project/merge_requests/creating_merge_requests.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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: howto
description: "How to create Merge Requests in GitLab."
diff --git a/doc/user/project/merge_requests/getting_started.md b/doc/user/project/merge_requests/getting_started.md
index b1a57d9c3e6..dc6c5cdbfe6 100644
--- a/doc/user/project/merge_requests/getting_started.md
+++ b/doc/user/project/merge_requests/getting_started.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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: index, reference
description: "Getting started with Merge Requests."
@@ -122,17 +122,19 @@ Requesting a code review is an important part of contributing code. However, dec
your code and asking for a review are no easy tasks. Using the "assignee" field for both authors and
reviewers makes it hard for others to determine who's doing what on a merge request.
-GitLab Merge Request Reviewers easily allow authors to request a review as well as see the status of the
-review. By selecting one or more users from the **Reviewers** field in the merge request's right-hand
-sidebar, the assigned reviewers will receive a notification of the request to review the merge request.
+The Merge Request Reviewers feature enables you to request a review of your work, and
+see the status of the review. Reviewers help distinguish the roles of the users
+involved in the merge request. In comparison to an **Assignee**, who is directly
+responsible for creating or merging a merge request, a **Reviewer** is a team member
+who may only be involved in one aspect of the merge request, such as a peer review.
-This makes it easy to determine the relevant roles for the users involved in the merge request, as well as formally requesting a review from a peer.
-
-To request it, open the **Reviewers** drop-down box to search for the user you wish to get a review from.
+To request a review of a merge request, expand the **Reviewers** select box in
+the right-hand sidebar. Search for the users you want to request a review from.
+When selected, GitLab creates a [to-do list item](../../todos.md) for each reviewer.
#### Approval Rule information for Reviewers **(PREMIUM)**
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/233736) in GitLab 13.8. For this version only, GitLab administrators can opt to [enable it](#enable-or-disable-approval-rule-information).
+> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/233736) in GitLab 13.8.
> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/293742) in GitLab 13.9.
When editing the **Reviewers** field in a new or existing merge request, GitLab
@@ -231,33 +233,6 @@ forks are not retargeted.
reviews are faster and your changes are less prone to errors.
- Do not use capital letters nor special chars in branch names.
-## Enable or disable Approval Rule information **(PREMIUM SELF)**
-
-> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/issues/293742) in GitLab 13.9.
-
-Merge Request Reviewers is under development and ready for production use.
-It is deployed behind a feature flag that is **enabled by default**.
-[GitLab administrators with access to the GitLab Rails console](../../../administration/feature_flags.md)
-can opt to disable it.
-
-To enable it:
-
-```ruby
-# For the instance
-Feature.enable(:reviewer_approval_rules)
-# For a single project
-Feature.enable(:reviewer_approval_rules, Project.find(<project id>))
-```
-
-To disable it:
-
-```ruby
-# For the instance
-Feature.disable(:reviewer_approval_rules)
-# For a single project
-Feature.disable(:reviewer_approval_rules, Project.find(<project id>))
-```
-
### Enable or disable branch retargeting on merge **(FREE SELF)**
Automatically retargeting merge requests is under development but ready for production use.
diff --git a/doc/user/project/merge_requests/index.md b/doc/user/project/merge_requests/index.md
index 8ccf50e48b8..7e25e5bacdf 100644
--- a/doc/user/project/merge_requests/index.md
+++ b/doc/user/project/merge_requests/index.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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: index, reference
---
@@ -36,7 +36,7 @@ B. Consider you're a web developer writing a webpage for your company's website:
1. Your changes are previewed with [Review Apps](../../../ci/review_apps/index.md)
1. You request your web designers for their implementation
1. You request the [approval](merge_request_approvals.md) from your manager **(STARTER)**
-1. Once approved, your merge request is [squashed and merged](squash_and_merge.md), and [deployed to staging with GitLab Pages](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/)
+1. Once approved, your merge request is [squashed and merged](squash_and_merge.md), and [deployed to staging with GitLab Pages](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/)
1. Your production team [cherry picks](cherry_pick_changes.md) the merge commit into production
## Overview
diff --git a/doc/user/project/merge_requests/merge_request_approvals.md b/doc/user/project/merge_requests/merge_request_approvals.md
index 1fcc09a9d8a..a72ad8784e7 100644
--- a/doc/user/project/merge_requests/merge_request_approvals.md
+++ b/doc/user/project/merge_requests/merge_request_approvals.md
@@ -138,14 +138,14 @@ to push or merge code to any branches.
To enable this access:
-1. [Create a new group](../../group/index.md#create-a-new-group), and then
+1. [Create a new group](../../group/index.md#create-a-group), and then
[add the user to the group](../../group/index.md#add-users-to-a-group),
ensuring you select the Reporter role for the user.
1. [Share the project with your group](../members/share_project_with_groups.md#sharing-a-project-with-a-group-of-users),
based on the Reporter role.
1. Navigate to your project's **Settings > General**, and in the
**Merge request approvals** section, click **Expand**.
-1. [Add the group](../../group/index.md#create-a-new-group) to the permission list
+1. [Add the group](../../group/index.md#create-a-group) to the permission list
for the protected branch.
![Update approval rule](img/update_approval_rule_v13_4.png)
diff --git a/doc/user/project/merge_requests/merge_request_dependencies.md b/doc/user/project/merge_requests/merge_request_dependencies.md
index 646d77391a3..1949677177e 100644
--- a/doc/user/project/merge_requests/merge_request_dependencies.md
+++ b/doc/user/project/merge_requests/merge_request_dependencies.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, concepts
---
diff --git a/doc/user/project/merge_requests/merge_when_pipeline_succeeds.md b/doc/user/project/merge_requests/merge_when_pipeline_succeeds.md
index d33a8e40aac..7b8054b6d4b 100644
--- a/doc/user/project/merge_requests/merge_when_pipeline_succeeds.md
+++ b/doc/user/project/merge_requests/merge_when_pipeline_succeeds.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, concepts
---
diff --git a/doc/user/project/merge_requests/resolve_conflicts.md b/doc/user/project/merge_requests/resolve_conflicts.md
index a53b5032e1d..4d5d89d6508 100644
--- a/doc/user/project/merge_requests/resolve_conflicts.md
+++ b/doc/user/project/merge_requests/resolve_conflicts.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, concepts
---
diff --git a/doc/user/project/merge_requests/revert_changes.md b/doc/user/project/merge_requests/revert_changes.md
index d5d0578c07c..077faed3740 100644
--- a/doc/user/project/merge_requests/revert_changes.md
+++ b/doc/user/project/merge_requests/revert_changes.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, concepts
---
diff --git a/doc/user/project/merge_requests/reviewing_and_managing_merge_requests.md b/doc/user/project/merge_requests/reviewing_and_managing_merge_requests.md
index 94f48fa544f..d7f7c3da000 100644
--- a/doc/user/project/merge_requests/reviewing_and_managing_merge_requests.md
+++ b/doc/user/project/merge_requests/reviewing_and_managing_merge_requests.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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: index, reference
---
diff --git a/doc/user/project/merge_requests/work_in_progress_merge_requests.md b/doc/user/project/merge_requests/work_in_progress_merge_requests.md
index 43ab03114fa..6eef6505b5d 100644
--- a/doc/user/project/merge_requests/work_in_progress_merge_requests.md
+++ b/doc/user/project/merge_requests/work_in_progress_merge_requests.md
@@ -1,6 +1,6 @@
---
stage: Create
-group: Source Code
+group: Code Review
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, concepts
---
diff --git a/doc/user/project/milestones/burndown_charts.md b/doc/user/project/milestones/burndown_charts.md
deleted file mode 100644
index 2985e5da2ab..00000000000
--- a/doc/user/project/milestones/burndown_charts.md
+++ /dev/null
@@ -1,8 +0,0 @@
----
-redirect_to: 'burndown_and_burnup_charts.md'
----
-
-This document was moved to [another location](burndown_and_burnup_charts.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/user/project/pages/getting_started/pages_from_scratch.md b/doc/user/project/pages/getting_started/pages_from_scratch.md
index 3f2df634e3a..86bbffa0fa8 100644
--- a/doc/user/project/pages/getting_started/pages_from_scratch.md
+++ b/doc/user/project/pages/getting_started/pages_from_scratch.md
@@ -396,7 +396,7 @@ but also pushes with **continuous tests** to feature-branches,
For more information, see the following blog posts.
- [Use GitLab CI/CD `environments` to deploy your
- web app to staging and production](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/).
+ web app to staging and production](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/).
- Learn [how to run jobs sequentially,
in parallel, or build a custom pipeline](https://about.gitlab.com/blog/2016/07/29/the-basics-of-gitlab-ci/).
- Learn [how to pull specific directories from different projects](https://about.gitlab.com/blog/2016/12/07/building-a-new-gitlab-docs-site-with-nanoc-gitlab-ci-and-gitlab-pages/)
diff --git a/doc/user/project/pages/index.md b/doc/user/project/pages/index.md
index 6eb06972945..1b04561c3c2 100644
--- a/doc/user/project/pages/index.md
+++ b/doc/user/project/pages/index.md
@@ -116,7 +116,7 @@ to use and adapt to your own needs:
- [Posting to your GitLab Pages blog from iOS](https://about.gitlab.com/blog/2016/08/19/posting-to-your-gitlab-pages-blog-from-ios/).
- [GitLab CI: Run jobs sequentially, in parallel, or build a custom pipeline](https://about.gitlab.com/blog/2016/07/29/the-basics-of-gitlab-ci/).
-- [GitLab CI: Deployment & environments](https://about.gitlab.com/blog/2016/08/26/ci-deployment-and-environments/).
+- [GitLab CI: Deployment & environments](https://about.gitlab.com/blog/2021/02/05/ci-deployment-and-environments/).
- [Building a new GitLab docs site with Nanoc, GitLab CI, and GitLab Pages](https://about.gitlab.com/blog/2016/12/07/building-a-new-gitlab-docs-site-with-nanoc-gitlab-ci-and-gitlab-pages/).
- [Publish code coverage reports with GitLab Pages](https://about.gitlab.com/blog/2016/11/03/publish-code-coverage-report-with-gitlab-pages/).
diff --git a/doc/user/project/repository/file_finder.md b/doc/user/project/repository/file_finder.md
index df3e24fbf30..3af7a5045c4 100644
--- a/doc/user/project/repository/file_finder.md
+++ b/doc/user/project/repository/file_finder.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
disqus_identifier: 'https://docs.gitlab.com/ee/workflow/file_finder.html'
---
-# File finder
+# File finder **(FREE)**
> [Introduced](https://github.com/gitlabhq/gitlabhq/pull/9889) in GitLab 8.4.
diff --git a/doc/user/project/repository/repository_mirroring.md b/doc/user/project/repository/repository_mirroring.md
index 4d5e4a5ef02..d9d9fd8bcd3 100644
--- a/doc/user/project/repository/repository_mirroring.md
+++ b/doc/user/project/repository/repository_mirroring.md
@@ -110,7 +110,7 @@ After the mirror is created, this option can currently only be modified via the
To set up a mirror from GitLab to GitHub, you need to follow these steps:
-1. Create a [GitHub personal access token](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token) with the `public_repo` box checked.
+1. Create a [GitHub personal access token](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token) with the `public_repo` box checked.
1. Fill in the **Git repository URL** field using this format: `https://<your_github_username>@github.com/<your_github_group>/<your_github_project>.git`.
1. Fill in **Password** field with your GitHub personal access token.
1. Click the **Mirror repository** button.
@@ -219,16 +219,20 @@ to be able to browse its content and its activity using the familiar GitLab inte
To configure mirror pulling for an existing project:
-1. Navigate to your project's **Settings > Repository** and expand the **Mirroring repositories**
- section.
-1. Enter a repository URL.
-1. Select **Pull** from the **Mirror direction** dropdown.
-1. Select an authentication method from the **Authentication method** dropdown, if necessary.
-1. If necessary, check the following boxes:
- - **Overwrite diverged branches**.
- - **Trigger pipelines for mirror updates**.
- - **Only mirror protected branches**.
-1. Click the **Mirror repository** button to save the configuration.
+1. If you [configured two-factor authentication (2FA)](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)
+ for GitHub, create a [personal access token for GitHub](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token)
+ with the `read_repository` scope. If 2FA is enabled, this personal access
+ token serves as your GitHub password.
+1. In your project, go to **Settings > Repository**, and then expand the
+ **Mirroring repositories** section.
+1. In the **Git repository URL** field, enter a repository URL.
+1. In the **Mirror direction** dropdown, select **Pull**.
+1. In the **Authentication method** dropdown, select your authentication method.
+1. Select from the following checkboxes, if needed:
+ - **Overwrite diverged branches**
+ - **Trigger pipelines for mirror updates**
+ - **Only mirror protected branches**
+1. Select **Mirror repository** to save the configuration.
![Repository mirroring pull settings screen - upper part](img/repository_mirroring_pull_settings_upper.png)
@@ -340,7 +344,7 @@ If you're mirroring over SSH (that is, using an `ssh://` URL), you can authentic
- Password-based authentication, just as over HTTPS.
- Public key authentication. This is often more secure than password authentication,
- especially when the other repository supports [deploy keys](../../../ssh/README.md#deploy-keys).
+ especially when the other repository supports [deploy keys](../deploy_keys/index.md).
To get started:
@@ -366,7 +370,7 @@ fingerprints in the open for you to check:
- [AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/regions.html#regions-fingerprints)
- [Bitbucket](https://support.atlassian.com/bitbucket-cloud/docs/configure-ssh-and-two-step-verification/)
-- [GitHub](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/githubs-ssh-key-fingerprints)
+- [GitHub](https://docs.github.com/en/github/authenticating-to-github/githubs-ssh-key-fingerprints)
- [GitLab.com](../../gitlab_com/index.md#ssh-host-keys-fingerprints)
- [Launchpad](https://help.launchpad.net/SSHFingerprints)
- [Savannah](http://savannah.gnu.org/maintenance/SshAccess/)
@@ -401,7 +405,7 @@ GitLab generates a 4096-bit RSA key that can be copied by clicking the **Copy SS
You then need to add the public SSH key to the other repository's configuration:
- If the other repository is hosted on GitLab, you should add the public SSH key
- as a [deploy key](../../../ssh/README.md#deploy-keys).
+ as a [deploy key](../../project/deploy_keys/index.md).
- If the other repository is hosted elsewhere, you may need to add the key to
your user's `authorized_keys` file. Paste the entire public SSH key into the
file on its own line and save it.
diff --git a/doc/user/project/repository/web_editor.md b/doc/user/project/repository/web_editor.md
index a9e249bb8c3..4cc3c611a0a 100644
--- a/doc/user/project/repository/web_editor.md
+++ b/doc/user/project/repository/web_editor.md
@@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
type: howto
---
-# GitLab Web Editor
+# GitLab Web Editor **(FREE)**
Sometimes it's easier to make quick changes directly from the GitLab interface
than to clone the project and use the Git command-line tool. In this feature
diff --git a/doc/user/project/service_desk.md b/doc/user/project/service_desk.md
index debe5c51d51..f589f3e8bac 100644
--- a/doc/user/project/service_desk.md
+++ b/doc/user/project/service_desk.md
@@ -137,13 +137,13 @@ You can use these placeholders to be automatically replaced in each email:
#### New Service Desk issues
-You can select one [issue description template](description_templates.md#creating-issue-templates)
+You can select one [issue description template](description_templates.md#create-an-issue-template)
**per project** to be appended to every new Service Desk issue's description.
Issue description templates should reside in your repository's `.gitlab/issue_templates/` directory.
To use a custom issue template with Service Desk, in your project:
-1. [Create a description template](description_templates.md#creating-issue-templates)
+1. [Create a description template](description_templates.md#create-an-issue-template)
1. Go to **Settings > General > Service Desk**.
1. From the dropdown **Template to append to all Service Desk issues**, select your template.
diff --git a/doc/user/project/settings/import_export.md b/doc/user/project/settings/import_export.md
index 6f230f1798a..8e6ace5da78 100644
--- a/doc/user/project/settings/import_export.md
+++ b/doc/user/project/settings/import_export.md
@@ -118,6 +118,7 @@ The following items will be exported:
- Issue boards
- Pipelines history
- Push Rules
+- Awards
The following items will **not** be exported:
@@ -127,7 +128,6 @@ The following items will **not** be exported:
- Webhooks
- Any encrypted tokens
- Merge Request Approvers
-- Awards
NOTE:
For more details on the specific data persisted in a project export, see the
diff --git a/doc/user/project/static_site_editor/index.md b/doc/user/project/static_site_editor/index.md
index 002eb398406..431250a817d 100644
--- a/doc/user/project/static_site_editor/index.md
+++ b/doc/user/project/static_site_editor/index.md
@@ -102,7 +102,7 @@ To edit a file:
in the bottom-right corner.
1. When you're done, click **Submit changes...**.
1. (Optional) Adjust the default title and description of the merge request, to submit
- with your changes. Alternatively, select a [merge request template](../../../user/project/description_templates.md#creating-merge-request-templates)
+ with your changes. Alternatively, select a [merge request template](../../../user/project/description_templates.md#create-a-merge-request-template)
from the dropdown menu and edit it accordingly.
1. Click **Submit changes**.
1. A new merge request is automatically created and you can assign a colleague for review.
diff --git a/doc/user/project/web_ide/img/solarized_dark_theme_v13_1.png b/doc/user/project/web_ide/img/solarized_dark_theme_v13_1.png
index ccb9cf6f126..8eca352a4d0 100644
--- a/doc/user/project/web_ide/img/solarized_dark_theme_v13_1.png
+++ b/doc/user/project/web_ide/img/solarized_dark_theme_v13_1.png
Binary files differ
diff --git a/doc/user/project/web_ide/img/solarized_light_theme_v13_0.png b/doc/user/project/web_ide/img/solarized_light_theme_v13_0.png
deleted file mode 100644
index 6257d78d29e..00000000000
--- a/doc/user/project/web_ide/img/solarized_light_theme_v13_0.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/project/web_ide/index.md b/doc/user/project/web_ide/index.md
index 07f46cb94f7..5345a031c48 100644
--- a/doc/user/project/web_ide/index.md
+++ b/doc/user/project/web_ide/index.md
@@ -71,19 +71,16 @@ Single file editing is based on the [Ace Editor](https://ace.c9.io).
### Themes
-> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/2389) in GitLab in 13.0.
+> - [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/2389) in GitLab 13.0.
> - Full Solarized Dark Theme [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/219228) in GitLab 13.1.
+> - Full [Solarized Light](https://gitlab.com/gitlab-org/gitlab/-/issues/221035) and [Monokai](https://gitlab.com/gitlab-org/gitlab/-/issues/221034) Themes introduced in GitLab 13.6.
-All the themes GitLab supports for syntax highlighting are added to the Web IDE's code editor.
+All the themes GitLab supports for syntax highlighting are applied to the Web IDE's entire screen.
You can pick a theme from your [profile preferences](../../profile/preferences.md).
-The themes are available only in the Web IDE file editor, except for the [dark theme](https://gitlab.com/gitlab-org/gitlab/-/issues/209808) and
-the [Solarized dark theme](https://gitlab.com/gitlab-org/gitlab/-/issues/219228),
-which apply to the entire Web IDE screen.
-
-| Solarized Light Theme | Solarized Dark Theme | Dark Theme |
-|---------------------------------------------------------------|-------------------------------------------------------------|-----------------------------------------|
-| ![Solarized Light Theme](img/solarized_light_theme_v13_0.png) | ![Solarized Dark Theme](img/solarized_dark_theme_v13_1.png) | ![Dark Theme](img/dark_theme_v13_0.png) |
+| Solarized Dark Theme | Dark Theme |
+|-------------------------------------------------------------|-----------------------------------------|
+| ![Solarized Dark Theme](img/solarized_dark_theme_v13_1.png) | ![Dark Theme](img/dark_theme_v13_0.png) |
## Schema based validation
diff --git a/doc/user/project/working_with_projects.md b/doc/user/project/working_with_projects.md
index 3fe6193c414..04d2cf07068 100644
--- a/doc/user/project/working_with_projects.md
+++ b/doc/user/project/working_with_projects.md
@@ -278,7 +278,7 @@ databases if the module name or a prefix of it appears in `GONOPRIVATE` or
### Authenticate Go requests
To authenticate requests to private projects made by Go, use a [`.netrc`
-file](https://ec.haxx.se/usingcurl-netrc.html) and a [personal access
+file](https://everything.curl.dev/usingcurl/netrc) and a [personal access
token](../profile/personal_access_tokens.md) in the password field. **This only
works if your GitLab instance can be accessed with HTTPS.** The `go` command
does not transmit credentials over insecure connections. This authenticates
diff --git a/doc/user/search/index.md b/doc/user/search/index.md
index ffd331248be..79a7827c03b 100644
--- a/doc/user/search/index.md
+++ b/doc/user/search/index.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: index, reference, howto
---
-# Search through GitLab
+# Search through GitLab **(FREE)**
## Issues and merge requests
@@ -306,26 +306,27 @@ Use advanced queries for more targeted search results.
[Learn how to use the Advanced Search Syntax.](advanced_search_syntax.md)
-## Search project settings
+## Search settings
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/292941) in GitLab 13.8.
+> - [Added to Group, Admin, and User settings](https://gitlab.com/groups/gitlab-org/-/epics/4842) in GitLab 13.9
> - It's [deployed behind a feature flag](../feature_flags.md), disabled by default.
> - It's disabled on GitLab.com.
> - It's not recommended for production use.
-> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-search-project-settings). **(FREE SELF)**
+> - To use it in GitLab self-managed instances, ask a GitLab administrator to [enable it](#enable-or-disable-search-settings). **(FREE SELF)**
WARNING:
This feature might not be available to you. Check the **version history** note above for details.
-You can search inside the project’s settings sections by entering a search
-term in the search box located at the top of the page. The search results
+You can search inside a Project, Group, Admin, or User’s settings by entering
+a search term in the search box located at the top of the page. The search results
appear highlighted in the sections that match the search term.
![Search project settings](img/project_search_general_settings_v13_8.png)
-### Enable or disable Search project settings **(FREE SELF)**
+### Enable or disable Search settings **(FREE SELF)**
-Search project settings is under development and not ready for production use. It is
+Search settings 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.
diff --git a/doc/user/snippets.md b/doc/user/snippets.md
index e919e73f404..4750adeb1a3 100644
--- a/doc/user/snippets.md
+++ b/doc/user/snippets.md
@@ -5,7 +5,7 @@ info: "To determine the technical writer assigned to the Stage/Group associated
type: reference
---
-# Snippets
+# Snippets **(FREE)**
With GitLab Snippets you can store and share bits of code and text with other users.