GraphQL API Queries

Queries are the top-level entry points for reading data from the GitLab GraphQL API. You can explore queries interactively using the GraphiQL explorer.

Deprecated items are planned to be removed in a future release. For more information, see the GitLab deprecation process.

abuseReport

  • Status: Experiment

Find an abuse report.

Returns: AbuseReport

Arguments

NameTypeDescription
idAbuseReportID!ID of the abuse report.

accessTokenPermissions

  • Status: Experiment

List of permissions for fine-grained access tokens.

Returns: [AccessTokenPermission!]!

addOnPurchases

Retrieve all active add-on purchases. This query can be used in GitLab.com and self-managed environments.

Returns: [AddOnPurchase!]

Arguments

NameTypeDescription
namespaceIdNamespaceIDID of namespace that the add-ons were purchased for.

adminDuoAvailabilityNamespaces

  • Status: Experiment

List groups with their resolved GitLab Duo availability for admin overrides. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AdminDuoAvailabilityNamespaceConnection

Arguments

NameTypeDescriptionDefault
adminLockedBooleanFilter to groups that are (or are not) the introducer of an admin lock.
duoAvailability[DuoAvailability!]Filter to groups whose effective availability is one of these values.
includeDescendantsBooleanInclude all descendants, not just direct children, of the parent group.false
parentIdGroupIDRestrict the list to descendants of the given group.
searchStringFilter groups by name or full path.

adminGroups

  • Status: Experiment

Find groups visible to the current admin. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupInterfaceConnection

Arguments

NameTypeDescriptionDefault
activeBooleanWhen nil (default value), returns all groups. When true, returns only groups that are not pending deletion. When false, only returns groups that are pending deletion.null
aimedForDeletionBooleanFilter groups that are marked for deletion.
allAvailableBooleanWhen true, returns all accessible groups. When false, returns only groups where the user is a member. Unauthenticated requests always return all public groups. The owned_only argument takes precedence.true
ids[ID!]Filter groups by IDs.
includeSubgroupsBooleanInclude descendant groups of the group given in parentPath. Ignored unless parentPath is also provided.false
markedForDeletionOnDateDate when the group was marked for deletion.
notBaseGroupsResolverNegatedParamsList of negated arguments. Warning: this argument is experimental and a subject to change in future.
ownedOnlyBooleanOnly include groups where the current user has an owner role.false
parentPathIDFull path of the parent group.
searchStringSearch query for group name or group full path.
sortStringSort order of results. Format: <field_name>_<sort_direction>, for example: id_desc or name_asc. Use similarity to rank results by closeness to search. similarity applies only when search is given and results are already scoped to the current user’s memberships, such as with ownedOnly: true or allAvailable: false. Filtering by visibilityLevel to public or internal groups only disables similarity, because the results are then no longer scoped by membership. Results fall back to id_desc when similarity does not apply."name_asc"
topLevelOnlyBooleanOnly include top-level groups.false
visibilityLevelVisibilityLevelsEnumFilter groups by visibility level.

adminMemberRole

  • Status: Experiment

Finds a single admin custom role for the instance. Available only for GitLab Self-Managed.

Returns: AdminMemberRole

Arguments

NameTypeDescription
assignableBooleanFilter for member roles the current user can assign.
idMemberRoleIDGlobal ID of the member role to look up.
ids[MemberRoleID!]Global IDs of the member role to look up.
orderByMemberRolesOrderByOrdering column. Default is NAME.
sortSortDirectionEnumOrdering column. Default is ASC.

adminMemberRolePermissions

  • Status: Experiment

List of all admin customizable permissions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CustomizableAdminPermissionConnection

adminMemberRoles

  • Status: Experiment

Admin custom roles available for the instance. Available only for GitLab Self-Managed. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AdminMemberRoleConnection

Arguments

NameTypeDescription
assignableBooleanFilter for member roles the current user can assign.
idMemberRoleIDGlobal ID of the member role to look up.
ids[MemberRoleID!]Global IDs of the member role to look up.
orderByMemberRolesOrderByOrdering column. Default is NAME.
sortSortDirectionEnumOrdering column. Default is ASC.

adminProjects

  • Status: Experiment

Find projects visible to the current admin. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectInterfaceConnection

Arguments

NameTypeDescriptionDefault
activeBooleanFilters by projects that are not archived and not marked for deletion.
aimedForDeletionBooleanReturn only projects marked for deletion.
archivedProjectArchivedFilter projects by archived status.
duoLicensedFeatureDuoLicensedFeatureIntroduced as an experiment in GitLab 18.11.

Include only projects eligible for the specified GitLab Duo licensed feature. Results are automatically filtered to projects where the user has the Maintainer or Owner role.
fullPaths[String!]Filter projects by full paths. You cannot provide more than 50 full paths.
ids[ID!]Filter projects by IDs.
includeHiddenBooleanInclude hidden projects.
lastRepositoryCheckFailedBooleanReturn only projects where the last repository check failed. Only available for administrators.
markedForDeletionOnDateDate when the project was marked for deletion.
membershipBooleanReturn only projects that the current user is a member of.
minAccessLevelAccessLevelEnumReturn only projects where current user has at least the specified access level.
namespacePathIDFilter projects by their namespace’s full path (group or user).
notAimedForDeletionBooleanExclude projects that are marked for deletion.
personalBooleanReturn only personal projects.
programmingLanguageNameStringFilter projects by programming language name (case insensitive). For example: css or ruby.
searchStringSearch query, which can be for the project name, a path, or a description.
searchNamespacesBooleanInclude namespace in project search.
sortStringSort order of results. Format: <field_name>_<sort_direction>, for example: id_desc or name_asc. Defaults to id_desc, or similarity if search used.null
topics[String!]Filter projects by topics.
trendingBooleanDeprecated in GitLab 18.8. No longer functional. Underlying feature was removed in 19.0.
visibilityLevelVisibilityLevelsEnumFilter projects by visibility level.
withIssuesEnabledBooleanReturn only projects with issues enabled.
withMergeRequestsEnabledBooleanReturn only projects with merge requests enabled.

aiCatalogAgentFlowConfig

  • Status: Experiment

Get flow configuration for an AI Catalog agent.

Returns: String

Arguments

NameTypeDescription
agentVersionIdAiCatalogItemVersionID!Global ID of the agent version to use.
flowConfigTypeAiCatalogFlowConfigType!Type of flow configuration to generate.

aiCatalogBuiltInTools

  • Status: Experiment

List of AI Catalog built-in tools. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogBuiltInToolConnection

aiCatalogConfiguredItems

  • Status: Experiment

AI Catalog items configured for use. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogItemConsumerConnection!

Arguments

NameTypeDescriptionDefault
configurableForProjectIdProjectIDProject ID to filter AI Catalog item consumers. When provided with group_id, returns only consumers whose associated items are configurable within the project (i.e., group-enabled items that are public or owned by the project). Excludes consumers for items that are private to other projects.
foundationalFlowReferenceStringFilter by foundational flow reference.
groupIdGroupIDGroup ID to retrieve configured AI Catalog items for.
includeFoundationalConsumersBooleanIntroduced as an experiment in GitLab 18.10.

Include configured foundational AI Catalog items.
false
includeInheritedBooleanInclude configured AI Catalog items inherited from the project’s top-level group. Can only be used with projectId.
itemIdAiCatalogItemIDItem ID to retrieve configured AI Catalog items for.
itemTypeAiCatalogItemTypeType of items to retrieve.
itemTypes[AiCatalogItemType!]Types of items to retrieve.
projectIdProjectIDProject ID to retrieve configured AI Catalog items for.
sortAiCatalogConfiguredItemsSortSort configured items, for example by usage.

aiCatalogCustomAndFoundationalItems

  • Status: Experiment

List of AI Catalog items, including foundational items. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogCustomAndFoundationalItemConnection!

Arguments

NameTypeDescriptionDefault
itemTypes[AiCatalogItemType!]Types of items to retrieve.
searchStringSearch items by name and description.
sortAiCatalogItemsSortSort order of items.CATALOG_PRIORITY

aiCatalogItem

  • Status: Experiment

Find an AI Catalog item.

Returns: AiCatalogItem

Arguments

NameTypeDescriptionDefault
idAiCatalogItemID!Global ID of the catalog item to find.
showSoftDeletedBooleanWhether to show the item if it has been soft-deleted. Defaults to false.false

aiCatalogItemConsumer

  • Status: Experiment

Find a single AI Catalog item consumer by ID.

Returns: AiCatalogItemConsumer

Arguments

NameTypeDescription
idAiCatalogItemConsumerID!Global ID of the AI Catalog item consumer.

aiCatalogItemVersions

  • Status: Experiment

Public AI Catalog item versions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogItemVersionConnection!

Arguments

NameTypeDescriptionDefault
createdAfterTimeItem versions created after the timestamp.
excludeDeprecatedBooleanWhether to exclude deprecated versions from the results. Defaults to true.true

aiCatalogItems

  • Status: Experiment

List of AI Catalog items. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogItemConnection!

Arguments

NameTypeDescriptionDefault
itemTypeAiCatalogItemTypeType of items to retrieve.
itemTypes[AiCatalogItemType!]Types of items to retrieve.
searchStringSearch items by name and description.
sortAiCatalogItemsSortSort order of items.CATALOG_PRIORITY

aiCatalogMcpServer

  • Status: Experiment

Find an AI Catalog MCP server by ID.

Returns: AiCatalogMcpServer

Arguments

NameTypeDescription
idAiCatalogMcpServerID!Global ID of the MCP server.

aiCatalogMcpServers

  • Status: Experiment

List of AI Catalog MCP servers. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogMcpServerConnection!

aiCatalogMcpTools

  • Status: Experiment

List of MCP tools dynamically discovered from the GitLab MCP server. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiCatalogMcpToolConnection!

aiChatAvailableModels

  • Status: Experiment

Get available models for Duo Agentic Chat.

Returns: AvailableModels

Arguments

NameTypeDescription
namespaceIdGroupIDGlobal ID of the namespace the user is acting on.
projectIdProjectIDGlobal ID of the project the user is acting on.
rootNamespaceIdGroupIDGlobal ID of the top-level namespace the user is acting on.

aiChatContextPresets

Get available GitLab Duo Chat context presets for the current user for a specific URL.

Returns: ContextPreset

Arguments

NameTypeDescription
foundationalAgentReferenceStringReference of the selected foundational chat agent.
namespaceIdNamespaceIDGlobal ID of the namespace the user is acting on.
projectIdProjectIDGlobal ID of the project the user is acting on.
questionCountIntNumber of questions for the default screen.
resourceIdAiModelIDGlobal ID of the resource from the current page.
urlStringURL of the page the user is currently on.

aiChatIncludedProjects

  • Status: Experiment

Get projects that can be included by the current user in a GitLab Duo Chat context. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectConnection

Arguments

NameTypeDescription
searchStringSearch query, which can be for the project name or path. Minimum 3 characters.

aiConversationThreads

  • Status: Experiment

List conversation threads of AI features. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiConversationsThreadConnection!

Arguments

NameTypeDescription
conversationTypeAiConversationsThreadsConversationTypeConversation type of the thread.
idAiConversationThreadIDId of the thread.

aiDomainSettings

  • Status: Experiment

List of allowed or denied domains for AI features. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: StringConnection

Arguments

NameTypeDescription
domainSettingTypeAiDomainSettingType!Type of domain setting to retrieve.
searchStringFilter domains by substring match.

aiFeatureSettings

  • Status: Experiment

List of configurable AI features. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiFeatureSettingConnection

Arguments

NameTypeDescription
selfHostedModelIdAiSelfHostedModelIDGlobal ID of the self-hosted model.

aiFlowsMetadata

  • Status: Experiment

Metadata describing Duo Agent Platform flow capabilities available to the caller.

Returns: AiFlowsMetadata

Arguments

NameTypeDescription
clientTypeAiFlowsMetadataClientTypeClient surface making the request. Used to gate per-surface capabilities. When omitted, defaults to CLI behavior for backwards compatibility.
namespaceIdNamespaceIDGlobal ID of the group or personal namespace to compute flow capabilities for. When omitted, only namespace-independent capabilities are returned.
projectIdProjectIDGlobal ID of the project to compute flow capabilities for. Takes precedence over namespaceId when both are given.

aiFoundationalChatAgent

  • Status: Experiment

Core agent in GitLab.

Returns: AiFoundationalChatAgent

Arguments

NameTypeDescription
referenceString!Reference to the foundational chat agent.

aiFoundationalChatAgents

  • Status: Experiment

Core agents in GitLab. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiFoundationalChatAgentConnection!

Arguments

NameTypeDescription
namespaceIdNamespaceIDGlobal ID of the namespace where the chat is present.
projectIdProjectIDGlobal ID of the project where the chat is present.

aiMessages

  • Status: Experiment

Find GitLab Duo Chat messages. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiMessageConnection!

Arguments

NameTypeDescription
conversationTypeAiConversationsThreadsConversationTypeConversation type of the thread.
requestIds[ID!]Array of request IDs to fetch.
roles[AiMessageRole!]Array of roles to fetch.
threadIdAiConversationThreadIDGlobal Id of the existing thread.If it is not specified, the last thread for the specified conversation_type will be retrieved.

aiModelSelectionNamespaceSettings

  • Status: Experiment

List of configurable AI features for namespace Model Selection. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiModelSelectionNamespaceFeatureSettingConnection

Arguments

NameTypeDescription
groupIdGroupID!Group for the model selection.

aiSelfHostedModels

  • Status: Experiment

Returns the self-hosted model if an ID is provided, otherwise returns all models. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiSelfHostedModelConnection

Arguments

NameTypeDescription
idAiSelfHostedModelIDGlobal ID of a self-hosted model.

aiSlashCommands

Get available GitLab Duo Chat slash commands for the current user for a specific URL.

Returns: [SlashCommand!]

Arguments

NameTypeDescription
urlString!URL of the page the user is currently on.

aiToolRules

  • Status: Experiment

AI tool governance rules for a namespace. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AiToolRuleConnection

Arguments

NameTypeDescription
actionTypeAiToolActionTypeFilter tools by action type.
fullPathID!Full path of the root namespace to fetch tool rules for.
projectPathIDFull path of the project to fetch effective tool rules for. When provided, returns the merged effective rules for the project, applying most-restrictive-wins across namespace and project rules.
searchStringCase-insensitive text search on tool name or display name.

aiUsageData

  • Status: Experiment

Instance level AI-related data. Admins only.

Returns: AiInstanceUsageData

artifactRegistryRoleAssignments

  • Status: Experiment

Direct Artifact Registry role assignments on the given resources. Returns only roles assigned on a resource itself, not members who inherit access from a membership on an ancestor namespace, so it is not a complete list of everyone who can access the resource. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ArtifactRegistryRoleAssignmentConnection

Arguments

NameTypeDescriptionDefault
resourceIds[String!]UUIDs of the Artifact Registry resources to read role assignments for. Empty reads the whole organization, which only the organization owner may do.[]
roles[ArtifactRegistryRole!]Only return assignments for these roles.[]

auditEventDefinitions

Definitions for all audit events available on the instance. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AuditEventDefinitionConnection!

auditEventsInstanceAmazonS3Configurations

Deprecated in GitLab 18.10. Use auditEventsInstanceStreamingDestinations with amazonS3 category instead. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: InstanceAmazonS3ConfigurationTypeConnection

auditEventsInstanceStreamingDestinations

  • Status: Experiment

Instance-level external audit event streaming destinations. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: InstanceAuditEventStreamingDestinationConnection

blobSearch

  • Status: Experiment

Find code visible to the current user.

Returns: BlobSearch

Arguments

NameTypeDescriptionDefault
chunkCountIntIntroduced as an experiment in GitLab 17.2.

Maximum chunks per file.
3
excludeForksBooleanIntroduced as an experiment in GitLab 17.11.

Excludes forked projects in the search. Always false for project search. Default is true.
true
groupIdGroupIDIntroduced as an experiment in GitLab 17.2.

Group to search in.
includeArchivedBooleanIntroduced as an experiment in GitLab 17.7.

Includes archived projects in the search. Always true for project search. Default is false.
false
language[String!]Introduced as an experiment in GitLab 19.3.

Filter results to the given detected languages (for example, ["Ruby", "Go"]).
pageIntIntroduced as an experiment in GitLab 17.2.

Page number to fetch the results.
1
perPageIntIntroduced as an experiment in GitLab 17.2.

Number of results per page.
20
projectIdProjectIDIntroduced as an experiment in GitLab 17.2.

Project to search in.
regexBooleanIntroduced as an experiment in GitLab 17.3.

Uses the regular expression search mode. Default is false.
false
repositoryRefStringIntroduced as an experiment in GitLab 17.2.

Repository reference to search in.
searchString!Searched term.

boardList

Find an issue board list.

Returns: BoardList

Arguments

NameTypeDescription
idListID!Global ID of the list.
issueFiltersBoardIssueInputFilters applied when getting issue metadata in the board list.

ciApplicationSettings

CI related settings that apply to the entire instance.

Returns: CiApplicationSettings

ciCatalogBundledResources

  • Status: Experiment

GitLab-maintained bundled CI/CD Catalog resources available on the current cell. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiCatalogBundledResourceConnection

ciCatalogResource

  • Status: Experiment

A single CI/CD Catalog resource visible to an authorized user.

Returns: CiCatalogResource

Arguments

NameTypeDescription
fullPathIDCI/CD Catalog resource full path.
idCiCatalogResourceIDCI/CD Catalog resource global ID.

ciCatalogResources

  • Status: Experiment

All CI/CD Catalog resources under a common namespace, visible to an authorized user. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiCatalogResourceConnection

Arguments

NameTypeDescriptionDefault
groupIds[GroupID!]Filter catalog resources to those whose project namespace matches one of the given groups.
minAccessLevelAccessLevelEnumMinimum access level required for the user on the catalog resource project.
scopeCiCatalogResourceScopeScope of the returned catalog resources.ALL
searchStringSearch term to filter the catalog resources by name or description.
sortCiCatalogResourceSortSort catalog resources by given criteria.
topics[String!]Filter catalog resources by project topic names.
verificationLevelCiCatalogResourceVerificationLevelFilter catalog resources by verification level.

ciConfig

Deprecated in GitLab 18.1. Use CiLint mutation: https://docs.gitlab.com/api/graphql/reference/#mutationcilint.

Returns: CiConfig

Arguments

NameTypeDescription
contentString!Contents of .gitlab-ci.yml.
dryRunBooleanRun pipeline creation simulation, or only do static check.
projectPathID!Project of the CI config.
shaStringSha for the pipeline.
skipVerifyProjectShaBooleanIntroduced as an experiment in GitLab 16.5.

If the provided sha is found in the project’s repository but is not associated with a Git reference (a detached commit), the verification fails and a validation error is returned. Otherwise, verification passes, even if the sha is invalid. Set to true to skip this verification process.

ciDedicatedHostedRunnerFilters

Returns available filters for GitLab Dedicated runner usage data.

Returns: CiDedicatedHostedRunnerFilters

ciDedicatedHostedRunnerUsage

Compute usage data for runners across namespaces on GitLab Dedicated. Defaults to the current year if no year or billing month is specified. Ultimate only. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiDedicatedHostedRunnerUsageConnection

Arguments

NameTypeDescription
billingMonthDateFirst day of the month to retrieve data for.
groupingGroupingEnumGroups usage data by instance aggregate or root namespace.
runnerIdCiRunnerIDRunner ID to retrieve data for.
yearIntYear to retrieve data for.

ciMinutesProjectMonthlyUsage

Compute usage data for projects in a namespace for a given month. Returns project usage independent of whether a namespace-level usage record exists. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiMinutesProjectMonthlyUsageConnection

Arguments

NameTypeDescription
dateDateDate for which to retrieve the usage data, should be the first day of a month. Defaults to the current month.
namespaceIdNamespaceIDGlobal ID of the Namespace for the project compute usage.

ciMinutesUsage

Compute usage data for a namespace. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiMinutesNamespaceMonthlyUsageConnection

Arguments

NameTypeDescription
dateDateDate for which to retrieve the usage data, should be the first day of a month.
namespaceIdNamespaceIDGlobal ID of the Namespace for the monthly compute usage.

ciPipelineStage

Stage belonging to a CI pipeline.

Returns: CiStage

Arguments

NameTypeDescription
idCiStageID!Global ID of the CI stage.

ciQueueingHistory

Time taken for CI jobs to be picked up by runner by percentile. Enable the ClickHouse database backend to use this query.

Returns: QueueingDelayHistory

Arguments

NameTypeDescription
fromTimeTimeStart of the requested time. Defaults to three hours ago.
runnerTypeCiRunnerTypeFilter jobs by the type of runner that executed them.
toTimeTimeEnd of the requested time. Defaults to the current time.

ciVariables

List of the instance’s CI/CD variables. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiInstanceVariableConnection

Arguments

NameTypeDescription
sortCiVariableSortSort order of results.

cloudConnectorStatus

  • Status: Experiment

Run a series of status checks for Cloud Connector features.

Returns: CloudConnectorStatus

complianceFrameworkTemplates

List of available compliance framework templates.

Returns: [ComplianceFrameworkTemplate!]

Arguments

NameTypeDescription
idComplianceManagementFrameworksTemplateRegistryTemplateIDFilter by template ID.

complianceRequirementControls

Get the list of all the compliance requirement controls.

Returns: ComplianceRequirementControl

containerRepository

Find a container repository.

Returns: ContainerRepositoryDetails

Arguments

NameTypeDescription
idContainerRepositoryID!Global ID of the container repository.

currentLicense

Fields related to the current license.

Returns: CurrentLicense

currentUser

Get information about current user.

Returns: CurrentUser

customDashboard

Find a custom dashboard by ID.

Returns: CustomDashboard

Arguments

NameTypeDescription
idAnalyticsCustomDashboardsDashboardID!Dashboard ID.

customDashboards

Find custom dashboards for an organization. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CustomDashboardInterfaceConnection

Arguments

NameTypeDescriptionDefault
createdByIdUserIDFilter by dashboard creator.
namespaceIdNamespaceIDFilter by namespace.
organizationIdOrganizationsOrganizationIDOrganization ID to filter dashboards. Defaults to the current organization if not provided.
scopeCustomDashboardScopeFilter dashboards by scope.ALL
searchStringFilter dashboards by name.

customField

  • Status: Experiment

Find a custom field by its ID.

Returns: CustomField

Arguments

NameTypeDescription
idIssuablesCustomFieldID!Global ID of the custom field.

customSystemDashboard

Find a GitLab-provided system dashboard by slug.

Returns: CustomSystemDashboard

Arguments

NameTypeDescription
slugString!Slug of the system dashboard (e.g. “duo_and_sdlc_trends”).

dependency

Find a dependency.

Returns: Dependency

Arguments

NameTypeDescription
idSbomOccurrenceID!Global ID of the Dependency.

designManagement

Fields related to design management.

Returns: DesignManagement!

devopsAdoptionEnabledNamespaces

Get configured DevOps adoption namespaces. Status: Beta. This endpoint is subject to change without notice. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: DevopsAdoptionEnabledNamespaceConnection

Arguments

NameTypeDescription
displayNamespaceIdNamespaceIDFilter by display namespace.

duoDefaultNamespaceCandidates

  • Status: Experiment

List namespaces suitable to be set as default namespace. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: NamespaceConnection

duoSettings

  • Status: Experiment

Get GitLab Duo settings.

Returns: DuoSettings

duoWorkflowBranches

  • Status: Experiment

The alternative branches to the provided user message. Multiple branches can be created when a user retries a message. Returns an error unless the message is on the current branch of the session. Returns an empty list if the dw_read_blobs_graphql feature flag is disabled, or if the session does not store incremental checkpoints.

Returns: [DuoWorkflowBranch!]

Arguments

NameTypeDescription
threadTsString!Identifier of the checkpoint that introduced a user message, from DuoMessage.threadTs. Must be a message on the current branch of the session. Returns the other attempts at the same turn, so the branch that message belongs to is excluded.
workflowIdAiDuoWorkflowsWorkflowID!Global ID of the session.

duoWorkflowEvents

  • Status: Experiment

List the events for a Duo Agent Platform. Returns only the latest checkpoint by default. Use first and after to page through history. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: DuoWorkflowEventConnection!

Arguments

NameTypeDescription
workflowIdAiDuoWorkflowsWorkflowID!Array of request IDs to fetch.

duoWorkflowRecentSessionProjects

  • Status: Experiment

Projects the current user has Duo Agent Platform sessions in, ordered by most recent session activity. Not a complete list: limited to the 50 most recent projects.

Returns: [Project!]

duoWorkflowWorkflows

List the workflows owned by the current user. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: DuoWorkflowConnection!

Arguments

NameTypeDescriptionDefault
environmentWorkflowEnvironmentEnvironment, for example, IDE or web.
excludeSourceTypes[DuoWorkflowSourceType!]Introduced as an experiment in GitLab 19.5.

Source types to exclude. Sessions with no recorded source type are never excluded.
excludeTypes[String!]Types of flows to exclude (for example, [“software_development”, “chat”]).
ids[AiDuoWorkflowsWorkflowID!]Filter flows by a list of IDs.
projectIdProjectIDGlobal ID of the project that contains the flows.
projectPathIDFull path of the project that contains the flows.
searchStringFlow title or goal to search for.
sortDuoWorkflowsWorkflowSortSort flows by the criteria.created_desc
statusGroupDuoWorkflowStatusGroupStatus group to filter flow sessions by.
statuses[DuoWorkflowStatus!]Exact statuses to filter flow sessions by. Cannot be combined with statusGroup.
typeStringType of flow to filter by (for example, software_development or foundational_chat_agents).
updatedAfterISO8601DateTimeFilters flows updated after a given date.
workflowIdAiDuoWorkflowsWorkflowIDFlow ID to filter by.

echo

Testing endpoint to validate the API with.

Returns: String!

Arguments

NameTypeDescription
textString!Text to echo back.

epicBoardList

Returns: EpicList

Arguments

NameTypeDescription
epicFiltersEpicFiltersFilters applied when getting epic metadata in the epic board list.
idBoardsEpicListID!Global ID of the list.

featureFlagEnabled

Deprecated in GitLab 17.4. Replaced with metadata.featureFlags.

Returns: Boolean!

Arguments

NameTypeDescription
nameString!Name of the feature flag.

frecentGroups

A user’s frecently visited groups.

Returns: [Group!]

frecentProjects

A user’s frecently visited projects.

Returns: [Project!]

functionalVerificationStatus

  • Status: Experiment

Status of a GitLab Duo Agent Platform functional verification check.

Returns: FunctionalVerificationStatus

Arguments

NameTypeDescription
checkTypeFunctionalVerificationCheckType!Type of functional verification check to read the status of.

geoNode

Find a Geo node.

Returns: GeoNode

Arguments

NameTypeDescription
nameStringName of the Geo node. Defaults to the current Geo node name.

gitlabCreditsAvailable

  • Status: Experiment

Whether GitLab credits are available for the current user.

Returns: Boolean!

Arguments

NameTypeDescription
namespaceIdNamespaceIDGlobal ID of the namespace to check credits for.

gitlabCreditsUnavailableReason

  • Status: Experiment

Reason GitLab credits are unavailable. Returns “usage_billing_forbidden” when usage billing is not available for the account. Returns null when credits are available or the unavailability reason is not recognized.

Returns: AiCreditsDenialReason

Arguments

NameTypeDescription
namespaceIdNamespaceIDGlobal ID of the namespace to check credits for.

gitpodEnabled

Whether Ona is enabled in application settings.

Returns: Boolean

googleCloudArtifactRegistryRepositoryArtifact

  • Status: Experiment

Details about an artifact in the Google Artifact Registry.

Returns: GoogleCloudArtifactRegistryArtifactDetails

Arguments

NameTypeDescription
googleCloudProjectIdString!ID of the Google Cloud project.
imageString!Name of the image in the Google Artifact Registry.
locationString!Location of the Artifact Registry repository.
projectPathID!Full project path.
repositoryString!Repository on the Google Artifact Registry.

group

Find a group.

Returns: Group

Arguments

NameTypeDescription
fullPathID!Full path of the group. For example, gitlab-org/gitlab-foss.

groupSecret

  • Status: Experiment

View a specific group secret.

Returns: GroupSecret

Arguments

NameTypeDescription
groupPathID!Group the secret belongs to.
nameString!Name of the group secret to view.

groupSecrets

  • Status: Experiment

List group secrets. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupSecretConnection

Arguments

NameTypeDescription
groupPathID!Group the secrets belong to.

groupSecretsCount

  • Status: Experiment

Total number of secrets in a group.

Returns: Int

Arguments

NameTypeDescription
groupPathID!Full path of the group.

groupSecretsManager

  • Status: Experiment

Find a group secrets manager.

Returns: GroupSecretsManager

Arguments

NameTypeDescription
groupPathID!Group of the secrets manager.

groupSecretsNeedingRotation

  • Status: Experiment

List group secrets that need to be rotated. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupSecretConnection

Arguments

NameTypeDescription
groupPathID!Group the secrets belong to.

groupSecretsPermissions

  • Status: Experiment

List group secrets permissions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupSecretsPermissionConnection

Arguments

NameTypeDescription
groupPathID!Group the secrets permission belong to.

groups

Find groups. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupConnection

Arguments

NameTypeDescriptionDefault
activeBooleanWhen nil (default value), returns all groups. When true, returns only groups that are not pending deletion. When false, only returns groups that are pending deletion.null
aimedForDeletionBooleanFilter groups that are marked for deletion.
allAvailableBooleanWhen true, returns all accessible groups. When false, returns only groups where the user is a member. Unauthenticated requests always return all public groups. The owned_only argument takes precedence.true
ids[ID!]Filter groups by IDs.
includeSubgroupsBooleanInclude descendant groups of the group given in parentPath. Ignored unless parentPath is also provided.false
markedForDeletionOnDateDate when the group was marked for deletion.
notBaseGroupsResolverNegatedParamsList of negated arguments. Warning: this argument is experimental and a subject to change in future.
ownedOnlyBooleanOnly include groups where the current user has an owner role.false
parentPathIDFull path of the parent group.
searchStringSearch query for group name or group full path.
sortStringSort order of results. Format: <field_name>_<sort_direction>, for example: id_desc or name_asc. Use similarity to rank results by closeness to search. similarity applies only when search is given and results are already scoped to the current user’s memberships, such as with ownedOnly: true or allAvailable: false. Filtering by visibilityLevel to public or internal groups only disables similarity, because the results are then no longer scoped by membership. Results fall back to id_desc when similarity does not apply."name_asc"
topLevelOnlyBooleanOnly include top-level groups.false
visibilityLevelVisibilityLevelsEnumFilter groups by visibility level.
withKnowledgeGraphEnabledBooleanIntroduced as an experiment in GitLab 18.10.

Return only groups with Knowledge Graph enabled.
false

instanceExternalAuditEventDestinations

Deprecated in GitLab 18.10. Use auditEventsInstanceStreamingDestinations instead. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: InstanceExternalAuditEventDestinationConnection

instanceGoogleCloudLoggingConfigurations

Deprecated in GitLab 18.10. Use auditEventsInstanceStreamingDestinations with gcpLogging category instead. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: InstanceGoogleCloudLoggingConfigurationTypeConnection

instanceSecretsManagerEnrollment

  • Status: Experiment

Check if Secrets Manager is enrolled at the instance level.

Returns: SecretsManagerInstanceEnrollment

instanceSecurityDashboard

Fields related to Instance Security Dashboard.

Returns: InstanceSecurityDashboard

integrationExclusions

  • Status: Experiment

This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: IntegrationExclusionConnection

Arguments

NameTypeDescription
integrationNameIntegrationType!Type of integration.

issue

Find an issue.

Returns: Issue

Arguments

NameTypeDescription
idIssueID!Global ID of the issue.

issues

  • Status: Experiment

Find issues visible to the current user. At least one filter must be provided. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: IssueConnection

Arguments

NameTypeDescriptionDefault
assigneeIdStringID of a user assigned to the issues. Wildcard values “NONE” and “ANY” are supported.
assigneeUsernameStringDeprecated in GitLab 13.11. Use assigneeUsernames.
assigneeUsernames[String!]Usernames of users assigned to the issue.
assigneeWildcardIdAssigneeWildcardIdFilter by assignee wildcard. Incompatible with assigneeUsername and assigneeUsernames.
authorUsernameStringUsername of the author of the issue.
closedAfterTimeIssues closed after the date.
closedBeforeTimeIssues closed before the date.
confidentialBooleanFilter for confidential issues. If “false”, excludes confidential issues. If “true”, returns only confidential issues.
createdAfterTimeIssues created after the date.
createdBeforeTimeIssues created before the date.
crmContactIdStringID of a contact assigned to the issues.
crmOrganizationIdStringID of an organization assigned to the issues.
customField[WorkItemWidgetCustomFieldFilterInputType!]Introduced as an experiment in GitLab 17.10.

Filter by custom fields.
dueAfterTimeReturn issues due on or after the given time.
dueBeforeTimeReturn issues due on or before the given time.
epicIdStringID of an epic associated with the issues, “none” and “any” values are supported.
epicWildcardIdEpicWildcardIdFilter by epic ID wildcard. Incompatible with epicId.
healthStatusFilterHealthStatusFilterHealth status of the issue, “none” and “any” values are supported.
iidStringIID of the issue. For example, “1”.
iids[String!]List of IIDs of issues. For example, ["1", "2"].
in[IssuableSearchableField!]Specify the fields to perform the search in. Defaults to [TITLE, DESCRIPTION]. Requires the search argument.'.
includeArchivedBooleanWhether to include issues from archived projects. Defaults to false.false
includeSubepicsBooleanWhether to include subepics when filtering issues by epicId.
iterationCadenceId[IterationsCadenceID!]Filter by a list of iteration cadence IDs.
iterationId[ID]List of iteration Global IDs applied to the issue.
iterationTitleStringFilter by iteration title.
iterationWildcardIdIterationWildcardIdFilter by iteration ID wildcard.
labelName[String]Labels applied to the issue.
milestoneTitle[String]Milestone applied to the issue.
milestoneWildcardIdMilestoneWildcardIdFilter issues by milestone ID wildcard.
myReactionEmojiStringFilter by reaction emoji applied by the current user. Wildcard values “NONE” and “ANY” are supported.
notNegatedIssueFilterInputNegated arguments.
orUnionedIssueFilterInputList of arguments with inclusive OR.
searchStringSearch query for title or description.
sortIssueSortSort issues by the criteria.created_desc
stateIssuableStateCurrent state of the issue.
statusWorkItemWidgetStatusFilterInputIntroduced as an experiment in GitLab 18.0.

Filter by status.
subscribedSubscriptionStatusIssues the current user is subscribed to.
types[IssueType!]Filter issues by the given issue types.
updatedAfterTimeIssues updated after the date.
updatedBeforeTimeIssues updated before the date.
weightStringWeight applied to the issue, “none” and “any” values are supported.
weightWildcardIdWeightWildcardIdFilter by weight ID wildcard. Incompatible with weight.
workItemTypeIds[WorkItemsTypeID!]Filter issues by work item type global IDs.

iteration

Find an iteration.

Returns: Iteration

Arguments

NameTypeDescription
idIterationID!Find an iteration by its ID.

jobs

All jobs on this GitLab instance. Returns an empty result for users without administrator access. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiJobInterfaceConnection

Arguments

NameTypeDescription
compatibleRunnerIdCiRunnerIDIntroduced as an experiment in GitLab 18.1.

ID of a runner that matches the requirements of the jobs returned (normally used when filtering pending jobs).
failureReasonCiJobFailureReasonIntroduced as an experiment in GitLab 16.4.

Filter jobs by failure reason. Currently only RUNNER_SYSTEM_FAILURE together with runnerTypes: INSTANCE_TYPE is supported.
runnerTypes[CiRunnerType!]Introduced as an experiment in GitLab 16.4.

Filter jobs by runner type if feature flag :admin_jobs_filter_runner_type is enabled.
statuses[CiJobStatus!]Filter jobs by status.

knowledgeGraphExcludedNamespaces

  • Status: Experiment

Top-level groups excluded from automatic Knowledge Graph indexing. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: GroupConnection!

  • Status: Experiment

LDAP admin links. Available only for GitLab Self-Managed. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: LdapAdminRoleLinkConnection

licenseHistoryEntries

Fields related to entries in the license history. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: LicenseHistoryEntryConnection

memberRole

  • Status: Experiment

Finds a single custom role for the instance. Available only for GitLab Self-Managed.

Returns: MemberRole

Arguments

NameTypeDescription
assignableBooleanFilter for member roles the current user can assign.
idMemberRoleIDGlobal ID of the member role to look up.
ids[MemberRoleID!]Global IDs of the member role to look up.
orderByMemberRolesOrderByOrdering column. Default is NAME.
sortSortDirectionEnumOrdering column. Default is ASC.

memberRolePermissions

  • Status: Experiment

List of all standard customizable permissions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CustomizableStandardPermissionConnection

memberRoles

  • Status: Experiment

Custom roles available for the instance. Available only for GitLab Self-Managed. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: MemberRoleConnection

Arguments

NameTypeDescription
assignableBooleanFilter for member roles the current user can assign.
idMemberRoleIDGlobal ID of the member role to look up.
ids[MemberRoleID!]Global IDs of the member role to look up.
orderByMemberRolesOrderByOrdering column. Default is NAME.
sortSortDirectionEnumOrdering column. Default is ASC.

mergeRequest

Find a merge request.

Returns: MergeRequest

Arguments

NameTypeDescription
idMergeRequestID!Global ID of the merge request.

mergeRequests

  • Status: Experiment

Find merge requests visible to the current user. At least one filter must be provided. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: MergeRequestConnection

Arguments

NameTypeDescriptionDefault
approvedBy[String!]Usernames of the approvers.
approver[String!]Usernames of possible approvers.
assigneeUsernameStringUsername of the assignee.
assigneeUsernames[String!]Usernames of users assigned to the merge request.
assigneeWildcardIdAssigneeWildcardIdFilter by assignee presence. Incompatible with assigneeUsernames and assigneeUsername.
authorUsernameStringUsername of the author.
blobPathStringIntroduced as an experiment in GitLab 17.7.

Path of the blob changed in merge request. Requires state, targetBranches, and createdAfter arguments.
closedAfterTimeMerge requests closed after the date.
closedBeforeTimeMerge requests closed before the date.
createdAfterTimeMerge requests created after the timestamp.
createdBeforeTimeMerge requests created before the timestamp.
deployedAfterTimeMerge requests deployed after the timestamp.
deployedBeforeTimeMerge requests deployed before the timestamp.
deploymentIdStringID of the deployment.
draftBooleanLimit result to draft merge requests.
environmentNameStringEnvironment merge requests have been deployed to.
ignoredReviewerUsernameStringIntroduced as an experiment in GitLab 18.0.

Username of the reviewer to ignore when searching by reviewer state.
iids[String!]Array of IIDs of merge requests, for example [1, 2].
includeArchivedBooleanWhether to include merge requests from archived projects. Defaults to false.false
labelName[String]Labels applied to the merge request.
labels[String!]Deprecated in GitLab 17.1. Use labelName.
mergedAfterTimeMerge requests merged after the date.
mergedBeforeTimeMerge requests merged before the date.
mergedByStringUsername of the merger.
milestoneTitleStringTitle of the milestone. Incompatible with milestoneWildcardId.
milestoneWildcardIdMilestoneWildcardIdFilter issues by milestone ID wildcard. Incompatible with milestoneTitle.
myReactionEmojiStringFilter by your reaction emoji.
notMergeRequestsResolverNegatedParamsList of negated arguments. Warning: this argument is experimental and a subject to change in future.
orUnionedMergeRequestFilterInputList of arguments with inclusive OR.
releaseTagStringFilter by release tag.
reviewStateMergeRequestReviewStateReviewer state of the merge request.
reviewStates[MergeRequestReviewState!]Reviewer states of the merge request.
reviewerUsernameStringUsername of the reviewer.
reviewerWildcardIdReviewerWildcardIdFilter by reviewer presence. Incompatible with reviewerUsername.
sortMergeRequestSortSort merge requests by the criteria.created_desc
sourceBranches[String!]Array of source branch names. All resolved merge requests will have one of these branches as their source.
stateMergeRequestStateMerge request state. If provided, all resolved merge requests will have the state.
subscribedSubscriptionStatusMerge requests the current user is subscribed to.
targetBranches[String!]Array of target branch names. All resolved merge requests will have one of these branches as their target.
updatedAfterTimeMerge requests updated after the timestamp.
updatedBeforeTimeMerge requests updated before the timestamp.

metadata

Metadata about GitLab.

Returns: Metadata

milestone

Find a milestone.

Returns: Milestone

Arguments

NameTypeDescription
idMilestoneID!Find a milestone by its ID.

mlExperiment

Find a machine learning experiment.

Returns: MlExperiment

Arguments

NameTypeDescription
idMlExperimentID!ID of the experiment.

mlModel

  • Status: Experiment

Find machine learning models.

Returns: MlModel

Arguments

NameTypeDescription
idMlModelID!ID of the model.

namespace

Find a namespace.

Returns: Namespace

Arguments

NameTypeDescription
fullPathID!Full path of the namespace. For example, gitlab-org/gitlab-foss.

namespaceSecretsManagerEnrollment

  • Status: Experiment

Check Secrets Manager enrollment for a namespace.

Returns: SecretsManagerEnrollment

Arguments

NameTypeDescription
namespacePathID!Full path of the namespace.

namespaceSecurityProjects

Security-filtered projects for a namespace. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectConnection

Arguments

NameTypeDescriptionDefault
attributeFilters[AttributeFilterInput!]Filter projects by security attributes. Up to 20 items.
hasFailedOrWarningBooleanIntroduced as an experiment in GitLab 19.0.

Filter projects by whether they have any failed security scans. Warnings have no effect on this filter.
hasScannersBooleanIntroduced as an experiment in GitLab 19.0.

Filter projects by whether they have any configured security scans.
hasStaleBooleanIntroduced as an experiment in GitLab 19.0.

Filter projects by whether they have any failed security scans.
includeSubgroupsBooleanInclude also subgroup projects.false
namespaceIdNamespaceID!Global ID of the namespace.
searchStringSearch projects by name.
securityAnalyzerFilters[AnalyzerFilterInput!]Filter projects by analyzer type and status.
sortBySortableAnalyzerTypeIntroduced as an experiment in GitLab 19.2.

Sort projects by analyzer status.
triggerTypeScanProfileTriggerTypeIntroduced as an experiment in GitLab 19.5.

Filter projects by attached triage and remediation trigger type.
vulnerabilityCountFilters[VulnerabilityCountFilterInput!]Filter projects by vulnerability counts using comparison operators.

note

  • Status: Experiment

Find a note.

Returns: Note

Arguments

NameTypeDescription
idNoteID!Global ID of the note.

openbaoHealth

  • Status: Experiment

Check if OpenBao instance is healthy and reachable.

Returns: Boolean!

organization

  • Status: Experiment

Find an organization.

Returns: Organization

Arguments

NameTypeDescription
idOrganizationsOrganizationIDID of the organization.

organizations

  • Status: Experiment

List organizations. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: OrganizationConnection

Arguments

NameTypeDescriptionDefault
excludeDefaultBooleanIntroduced as an experiment in GitLab 19.1.

Excludes the Default organization from results.
false
searchStringSearch query, which can be for the organization name or a path.
stateOrganizationStateIntroduced as an experiment in GitLab 19.1.

Filter organizations by state.

package

Find a package. This field can only be resolved for one query in any single request. Returns null if a package has no default status.

Returns: PackageDetailsType

Arguments

NameTypeDescription
idPackagesPackageID!Global ID of the package.

packageMetadataAdvisories

  • Status: Experiment

Get multiple package metadata advisories. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: PackageMetadataAdvisoryConnection

Arguments

NameTypeDescription
createdAfterISO8601DateTimeFilter advisories created after the datetime.
identifiers[String!]!Array of advisory identifiers.
updatedAfterISO8601DateTimeFilter advisories updated after the datetime.

packageMetadataAdvisory

  • Status: Experiment

Get a package metadata advisory.

Returns: PackageMetadataAdvisory

Arguments

NameTypeDescription
idPackageMetadataAdvisoryIDGlobal ID of the advisory.
identifierStringIdentifier of the advisory.

pipelineExecutionSchedulePolicyTestRun

  • Status: Experiment

Find a pipeline execution schedule policy test run by ID.

Returns: PolicyScheduleTestRun

Arguments

NameTypeDescription
idSecurityScheduledPipelineExecutionPolicyTestRunID!Global ID of the policy schedule test run.

project

Find a project.

Returns: Project

Arguments

NameTypeDescription
fullPathID!Full path of the project. For example, gitlab-org/gitlab-foss.

projectComplianceViolation

Find a project compliance violation.

Returns: ProjectComplianceViolation

Arguments

NameTypeDescription
idComplianceManagementProjectsComplianceViolationID!Global ID of the project compliance violation.

projectSecret

  • Status: Experiment

View a specific project secret.

Returns: ProjectSecret

Arguments

NameTypeDescription
nameString!Name of the project secret to view.
projectPathID!Project the secrets belong to.

projectSecrets

  • Status: Experiment

List project secrets. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectSecretConnection

Arguments

NameTypeDescription
projectPathID!Project the secrets belong to.

projectSecretsCount

  • Status: Experiment

Total number of secrets in a project.

Returns: Int

Arguments

NameTypeDescription
projectPathID!Full path of the project.

projectSecretsManager

  • Status: Experiment

Find a project secrets manager.

Returns: ProjectSecretsManager

Arguments

NameTypeDescription
projectPathID!Project of the secrets manager.

projectSecretsNeedingRotation

  • Status: Experiment

List project secrets that need to be rotated. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectSecretConnection

Arguments

NameTypeDescription
projectPathID!Project the secrets belong to.

projectSecretsPermissions

  • Status: Experiment

List project secrets permissions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectSecretsPermissionConnection

Arguments

NameTypeDescription
projectPathID!Project the secrets permissions belong to.

projects

Find projects visible to the current user. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: ProjectConnection

Arguments

NameTypeDescriptionDefault
activeBooleanFilters by projects that are not archived and not marked for deletion.
aimedForDeletionBooleanReturn only projects marked for deletion.
archivedProjectArchivedFilter projects by archived status.
duoLicensedFeatureDuoLicensedFeatureIntroduced as an experiment in GitLab 18.11.

Include only projects eligible for the specified GitLab Duo licensed feature. Results are automatically filtered to projects where the user has the Maintainer or Owner role.
fullPaths[String!]Filter projects by full paths. You cannot provide more than 50 full paths.
ids[ID!]Filter projects by IDs.
includeHiddenBooleanInclude hidden projects.
lastRepositoryCheckFailedBooleanReturn only projects where the last repository check failed. Only available for administrators.
markedForDeletionOnDateDate when the project was marked for deletion.
membershipBooleanReturn only projects that the current user is a member of.
minAccessLevelAccessLevelEnumReturn only projects where current user has at least the specified access level.
namespacePathIDFilter projects by their namespace’s full path (group or user).
notAimedForDeletionBooleanExclude projects that are marked for deletion.
personalBooleanReturn only personal projects.
programmingLanguageNameStringFilter projects by programming language name (case insensitive). For example: css or ruby.
searchStringSearch query, which can be for the project name, a path, or a description.
searchNamespacesBooleanInclude namespace in project search.
sortStringSort order of results. Format: <field_name>_<sort_direction>, for example: id_desc or name_asc. Defaults to id_desc, or similarity if search used.null
topics[String!]Filter projects by topics.
trendingBooleanDeprecated in GitLab 18.8. No longer functional. Underlying feature was removed in 19.0.
visibilityLevelVisibilityLevelsEnumFilter projects by visibility level.
withIssuesEnabledBooleanReturn only projects with issues enabled.
withMergeRequestsEnabledBooleanReturn only projects with merge requests enabled.

queryComplexity

Information about the complexity of the GraphQL query.

Returns: QueryComplexity

restrictedVisibilityLevels

Visibility levels that are restricted on the instance. Non-administrators cannot use restricted visibility levels for groups, projects, or snippets.

Returns: [VisibilityLevelsEnum!]

runner

Find a runner.

Returns: CiRunner

Arguments

NameTypeDescription
idCiRunnerID!Runner ID.

runnerPlatforms

Deprecated in GitLab 15.9. No longer used, use gitlab-runner documentation to learn about supported platforms. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: RunnerPlatformConnection

runnerSetup

Deprecated in GitLab 15.9. No longer used, use gitlab-runner documentation to learn about runner registration commands.

Returns: RunnerSetup

Arguments

NameTypeDescription
architectureString!Architecture to generate the instructions for.
groupIdGroupIDDeprecated in GitLab 13.11. No longer used.
platformString!Platform to generate the instructions for.
projectIdProjectIDDeprecated in GitLab 13.11. No longer used.

runnerUsage

Runner usage by runner. Enable the ClickHouse database backend to use this query.

Returns: [CiRunnerUsage!]

Arguments

NameTypeDescriptionDefault
fromDateDateStart of the requested date frame. Defaults to the start of the previous calendar month.
fullPathIDFilter jobs by the full path of the group or project they belong to. For example, gitlab-org or gitlab-org/gitlab. Available only to administrators and users with the Maintainer role for the group (when a group is specified), or project (when a project is specified). Limited to runners from 5000 child projects.
runnerTypeCiRunnerTypeFilter runners by the type.
runnersLimitIntMaximum number of runners to return. Other runners will be aggregated to a runner: null entry. Defaults to 5 if unspecified. Maximum of 500.5
toDateDateEnd of the requested date frame. Defaults to the end of the previous calendar month.

runnerUsageByProject

Runner usage by project. Enable the ClickHouse database backend to use this query.

Returns: [CiRunnerUsageByProject!]

Arguments

NameTypeDescription
fromDateDateStart of the requested date frame. Defaults to the start of the previous calendar month.
fullPathIDFilter jobs based on the full path of the group or project they belong to. For example, gitlab-org or gitlab-org/gitlab. Available only to administrators and users with the Maintainer role for the group (when a group is specified), or project (when a project is specified). Limited to runners from 5000 child projects.
projectsLimitIntMaximum number of projects to return. Other projects will be aggregated to a project: null entry. Defaults to 5 if unspecified. Maximum of 500.
runnerTypeCiRunnerTypeFilter jobs by the type of runner that executed them.
toDateDateEnd of the requested date frame. Defaults to the end of the previous calendar month.

runners

Get all runners in the GitLab instance (project and shared). Access is restricted to users with administrator access. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: CiRunnerConnection

Arguments

NameTypeDescription
activeBooleanDeprecated in GitLab 14.8. Renamed. Use paused instead.
creatorIdUserIDFilter runners by creator ID.
creatorUsernameStringFilter runners by creator username.
ownerFullPathStringIntroduced as an experiment in GitLab 17.8.

Filter runners by owning project or group.
pausedBooleanFilter runners by paused (true) or active (false) status.
searchStringFilter by full token or partial text in description field.
sortCiRunnerSortSort order of results.
statusCiRunnerStatusFilter runners by status.
tagList[String!]Filter by tags associated with the runner (comma-separated or array).
typeCiRunnerTypeFilter runners by type.
upgradeStatusCiRunnerUpgradeStatusFilter by upgrade status.
versionPrefixStringFilter runners by version. Runners that contain runner managers with the version at the start of the search term are returned. For example, the search term ‘14.’ returns runner managers with versions ‘14.11.1’ and ‘14.2.3’.

secretPermissions

  • Status: Experiment

List secret permissions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: SecretPermissionConnection

Arguments

NameTypeDescription
projectPathID!Project the secret permission belong to.

secretsManagerInstanceEntitlement

  • Status: Experiment

Instance-wide Secrets Manager entitlement on GitLab Self-Managed. Not available on GitLab.com, where entitlement is per top-level group.

Returns: SecretsManagerEntitlement

securityConfiguration

Security configuration for the project.

Returns: SecurityConfiguration

Arguments

NameTypeDescription
projectIdProjectID!Project to get the security configuration for.

securityScanProfile

  • Status: Experiment

Get security scan profile by ID.

Returns: ScanProfileType!

Arguments

NameTypeDescription
idSecurityScanProfileID!Global ID of the security scan profile.

securityScanProfileVariables

  • Status: Experiment

Configuration variables a security scan profile of the given type can set.

Returns: [SecurityScanProfileVariable!]

Arguments

NameTypeDescription
scanTypeSecurityScanProfileType!Scan profile type to return the configuration variables for.

selfManagedAddOnEligibleUsers

  • Status: Experiment

Users within the self-managed instance who are eligible for add-ons. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: AddOnUserConnection

Arguments

NameTypeDescription
addOnPurchaseIds[GitlabSubscriptionsAddOnPurchaseID!]!Global IDs of the add on purchases to find assignments for.
addOnTypeGitlabSubscriptionsAddOnType!Type of add on to filter the eligible users by.
filterByAssignedSeatStringFilter users list by assigned seat.
searchStringSearch the user list.
sortGitlabSubscriptionsUserSortSort the user list.

selfManagedUsersQueuedForRolePromotion

Fields related to users within a self-managed instance that are pending role promotion approval. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: UsersQueuedForRolePromotionConnection

snippets

Find Snippets visible to the current user. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: SnippetConnection

Arguments

NameTypeDescription
authorIdUserIDID of an author.
exploreBooleanExplore personal snippets.
ids[SnippetID!]Array of global snippet IDs. For example, gid://gitlab/ProjectSnippet/1.
projectIdProjectIDID of a project.
typeTypeEnumType of snippet.
visibilityVisibilityScopesEnumVisibility of the snippet.

spdxLicenses

  • Status: Experiment

List of SPDX licenses from the SPDX licence catalogue.

Returns: [SpdxLicense!]

standardRole

  • Status: Experiment

Finds a single default role for the instance. Available only for GitLab Self-Managed.

Returns: StandardRole

Arguments

NameTypeDescription
accessLevel[MemberAccessLevel!]Access level or levels to filter by.

standardRoles

  • Status: Experiment

Default roles available for the instance. Available only for GitLab Self-Managed. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: StandardRoleConnection

Arguments

NameTypeDescription
accessLevel[MemberAccessLevel!]Access level or levels to filter by.

subscriptionFutureEntries

Fields related to entries in future subscriptions. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: SubscriptionFutureEntryConnection

subscriptionUsage

  • Status: Experiment

Usage data of consumables under the subscription.

Returns: GitlabSubscriptionUsage

Arguments

NameTypeDescription
endDateISO8601DateEnd date of the usage period to query. Defaults to the end of the current month.
flowTypes[String!]Filter usage data by flow type identifiers (e.g. [“chat”, “code_review”]). Only applies to event-backed fields (creditsUsed, dailyUsage, dailyAverage, totalActiveUsers, totalCreditsUsed). Wallet-backed fields (monthlyWaiver, monthlyCommitment, overage) are not affected by this filter.
namespacePathIDPath of the top-level namespace. Leave it blank if querying the instance subscription.
startDateISO8601DateStart date of the usage period to query. Defaults to the beginning of the current month.

syntheticNote

  • Status: Experiment

Find a synthetic note.

Returns: Note

Arguments

NameTypeDescription
noteableIdNoteableID!Global ID of the resource to search synthetic note on.
shaString!Global ID of the note.

timelogs

Find timelogs visible to the current user. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: TimelogConnection

Arguments

NameTypeDescriptionDefault
endDateTimeList timelogs within a date range where the logged date is equal to or before endDate.
endTimeTimeList timelogs within a time range where the logged time is equal to or before endTime.
groupIdGroupIDList timelogs for a group.
projectIdProjectIDList timelogs for a project.
sortTimelogSortList timelogs in a particular order.SPENT_AT_ASC
startDateTimeList timelogs within a date range where the logged date is equal to or after startDate.
startTimeTimeList timelogs within a time range where the logged time is equal to or after startTime.
usernameStringList timelogs for a user.

todo

Retrieve a single to-do item.

Returns: Todo

Arguments

NameTypeDescription
idTodoID!ID of the to-do item.

topics

Find project topics. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: TopicConnection

Arguments

NameTypeDescription
organizationIdOrganizationsOrganizationIDIntroduced as an experiment in GitLab 17.7.

Global ID of the organization.
searchStringSearch query for topic name.

trialUsage

  • Status: Experiment

Usage data for trial subscriptions.

Returns: GitlabTrialUsage

Arguments

NameTypeDescription
namespacePathIDPath of the top-level namespace. Leave it blank if querying the instance subscription.

usageTrendsMeasurements

Get statistics on the instance. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: UsageTrendsMeasurementConnection

Arguments

NameTypeDescription
identifierMeasurementIdentifier!Type of measurement or statistics to retrieve.
recordedAfterTimeMeasurement recorded after the date.
recordedBeforeTimeMeasurement recorded before the date.

user

Find a user.

Returns: UserCore

Arguments

NameTypeDescription
idUserIDID of the User.
usernameStringUsername of the User.

users

Find users. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: UserCoreConnection

Arguments

NameTypeDescriptionDefault
activeBooleanFilter by active users. When true, returns active users. When false, returns non-active users.
adminsBooleanReturn only admin users.false
groupIdGroupIDReturn users member of a given group.
humansBooleanFilter by regular users. When true, returns only users that are not bot or internal users. When false, returns only users that are bot or internal users.
ids[ID!]List of user Global IDs.
searchStringQuery to search users by name, username, or primary email.
sortSortSort users by the criteria.created_desc
userTypes[UserType!]Introduced as an experiment in GitLab 18.3.

Filter by user type.
usernames[String!]List of usernames.

virtualRegistriesContainerRegistry

  • Status: Experiment

Find a container virtual registry. Returns null if the container_virtual_registries feature flag is disabled.

Returns: ContainerRegistryDetails

Arguments

NameTypeDescription
idVirtualRegistriesContainerRegistryID!Global ID of the container virtual registry.

virtualRegistriesContainerUpstream

  • Status: Experiment

Finds a container upstream registry with details. Returns null if the container_virtual_registries feature flag is disabled.

Returns: ContainerUpstreamDetails

Arguments

NameTypeDescription
idVirtualRegistriesContainerUpstreamID!Global ID of the container upstream.

virtualRegistriesPackagesMavenRegistry

  • Status: Experiment

Find a Maven virtual registry. Returns null if the maven_virtual_registry feature flag is disabled.

Returns: MavenRegistryDetails

Arguments

NameTypeDescription
idVirtualRegistriesPackagesMavenRegistryID!Global ID of the Maven virtual registry.

virtualRegistriesPackagesMavenUpstream

  • Status: Experiment

Find a Maven upstream registry. Returns null if the maven_virtual_registry feature flag is disabled.

Returns: MavenUpstreamDetails

Arguments

NameTypeDescription
idVirtualRegistriesPackagesMavenUpstreamID!Global ID of the Maven upstream registry.

vulnerabilities

Vulnerabilities reported on projects on the current user’s instance security dashboard. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: VulnerabilityConnection

Arguments

NameTypeDescriptionDefault
clusterAgentId[ClustersAgentID!]Filter vulnerabilities by cluster_agent_id. Vulnerabilities with a reportType of cluster_image_scanning are only included with this filter.
clusterId[ClustersClusterID!]Filter vulnerabilities by cluster_id. Vulnerabilities with a reportType of cluster_image_scanning are only included with this filter.
dismissalReason[VulnerabilityDismissalReason!]Filter by dismissal reason. Only dismissed Vulnerabilities will be included with the filter.
falsePositiveBooleanIntroduced as an experiment in GitLab 18.8.

Returns only the vulnerabilities with false positive flag. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries.
hasAiResolutionBooleanReturns only the vulnerabilities which can likely be resolved by GitLab Duo Vulnerability Resolution.
hasIssuesBooleanReturns only the vulnerabilities which have linked issues.
hasMergeRequestBooleanReturns only the vulnerabilities which have linked merge requests.
hasRemediationsBooleanReturns only the vulnerabilities which have remediations.
hasResolutionBooleanReturns only the vulnerabilities which have been resolved on default branch.
identifierNameStringFilter vulnerabilities by identifier name. Ignored when applied on instance security dashboard queries.
image[String!]Filter vulnerabilities by location image. When this filter is present, the response only matches entries for a reportType that includes container_scanning, cluster_image_scanning.
malwareBooleanFilter vulnerabilities by malware status. When true, returns only malware vulnerabilities (identified by GLAM-* identifiers). When false, returns only non-malware vulnerabilities. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries. Cannot be combined with trackedRefsScope: ALL_REFS or with trackedRefIds referring to a non-default-branch ref.
owaspTopTen[VulnerabilityOwaspTop10!]Filter vulnerabilities by OWASP Top 10 2017 category. Wildcard value NONE is also supported but it cannot be combined with other OWASP top 10 values.
owaspTopTen2021[VulnerabilityOwasp2021Top10!]Introduced as an experiment in GitLab 18.1.

Filter vulnerabilities by OWASP Top 10 2021 category. Wildcard value NONE is also supported but it cannot be combined with other OWASP top 10 2021 values. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries.
owaspTopTen2025[VulnerabilityOwasp2025Top10!]Introduced as an experiment in GitLab 19.0.

Filter vulnerabilities by OWASP Top 10 2025 category. Wildcard value NONE is also supported but it cannot be combined with other OWASP top 10 2025 values. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries.
policyAutoDismissedBooleanIntroduced as an experiment in GitLab 18.8.

Returns only the vulnerabilities which have been auto dismissed by security policies. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries.
policyViolations[PolicyViolations!]Introduced as an experiment in GitLab 18.6.

Filter by security policy violations. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Not supported on Instance Security Dashboard queries.
projectId[ID!]Filter vulnerabilities by project.
reachabilityReachabilityTypeIntroduced as an experiment in GitLab 18.2.

Filter vulnerabilities by reachability.
reportType[VulnerabilityReportType!]Filter vulnerabilities by report type.
scanner[String!]Filter vulnerabilities by VulnerabilityScanner.externalId.
scannerId[VulnerabilitiesScannerID!]Filter vulnerabilities by scanner ID.
securityAttributesFilters[AttributeFilterInput!]Introduced as an experiment in GitLab 19.5.

Filter vulnerabilities by the security attributes of their projects. Up to 20 filters. To use this argument, you must have advanced search configured and advanced vulnerability management set up. Available on group queries only, when the vulnerability_report_security_attributes_filter feature flag is enabled.
severity[VulnerabilitySeverity!]Filter vulnerabilities by severity.
sortVulnerabilitySortList vulnerabilities by sort order.severity_desc
state[VulnerabilityState!]Filter vulnerabilities by state.
trackedRefIds[SecurityProjectTrackedContextID!]Introduced as an experiment in GitLab 18.10.

Filter vulnerabilities by tracked ref IDs. To use this argument, you must have advanced search configured and advanced vulnerability management set up.
trackedRefsScopeSecurityTrackedRefScopeIntroduced as an experiment in GitLab 18.9.

Filter by tracked ref scope. To use this argument, you must have advanced search configured and advanced vulnerability management set up and the vulnerabilities_across_contexts feature flag enabled.
validityCheck[VulnerabilityFindingTokenStatusState!]Introduced as an experiment in GitLab 18.5.

Filter vulnerabilities by validity check.

vulnerabilitiesCountByDay

The historical number of vulnerabilities per day for the projects on the current user’s instance security dashboard. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: VulnerabilitiesCountByDayConnection

Arguments

NameTypeDescription
endDateISO8601Date!Last day for which to fetch vulnerability history.
startDateISO8601Date!First day for which to fetch vulnerability history.

vulnerability

Find a vulnerability.

Returns: Vulnerability

Arguments

NameTypeDescription
idVulnerabilityID!Global ID of the Vulnerability.

wikiPage

  • Status: Experiment

Find a wiki page.

Returns: WikiPage

Arguments

NameTypeDescription
namespaceIdNamespaceIDWiki page namespace ID.
projectIdProjectIDWiki page project ID.
slugStringWiki page slug.

workItem

  • Status: Experiment

Find a work item.

Returns: WorkItem

Arguments

NameTypeDescription
idWorkItemID!Global ID of the work item.

workItemAllowedStatuses

  • Status: Experiment

Allowed work item statuses from the root groups the current user belongs to. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: WorkItemStatusConnection

Arguments

NameTypeDescription
nameStringFilter statuses by name.

workItemDescriptionTemplateContent

  • Status: Experiment

Find a work item description template.

Returns: WorkItemDescriptionTemplate

Arguments

NameTypeDescription
templateContentInputWorkItemDescriptionTemplateContentInput!Input for fetching a specific description template.

workItemTypeIconDefinitions

  • Status: Experiment

Available icon definitions for work item types.

Returns: [WorkItemTypeIconDefinition!]!

workItemsByReference

  • Status: Experiment

Find work items by their reference. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: WorkItemConnection

Arguments

NameTypeDescription
contextNamespacePathIDFull path of the context namespace (project or group).
refs[String!]!Work item references. Can be either a short reference or URL.

workspace

Find a workspace.

Returns: Workspace

Arguments

NameTypeDescription
idRemoteDevelopmentWorkspaceID!Find a workspace by its ID.

workspaces

Find workspaces across the entire instance. This field is only available to instance admins, it will return an empty result for all non-admins. This field is a connection and accepts the four standard pagination arguments: before, after, first, last.

Returns: WorkspaceConnection

Arguments

NameTypeDescription
actualStates[String!]Filter workspaces by actual states.
agentIds[ClustersAgentID!]Filter workspaces by agent GlobalIDs.
ids[RemoteDevelopmentWorkspaceID!]Filter workspaces by workspace GlobalIDs. For example, ["gid://gitlab/RemoteDevelopment::Workspace/1"].
includeActualStates[String!]Deprecated in GitLab 16.7. Use actual_states instead.
projectIds[ProjectID!]Filter workspaces by project GlobalIDs.
userIds[ProjectID!]Filter workspaces by user GlobalIDs.