diff options
Diffstat (limited to 'doc/api/graphql/reference/index.md')
-rw-r--r-- | doc/api/graphql/reference/index.md | 279 |
1 files changed, 272 insertions, 7 deletions
diff --git a/doc/api/graphql/reference/index.md b/doc/api/graphql/reference/index.md index 4164c26e751..befb57c1cba 100644 --- a/doc/api/graphql/reference/index.md +++ b/doc/api/graphql/reference/index.md @@ -16,6 +16,15 @@ fields and methods on a model are available via GraphQL. CAUTION: **Caution:** Fields that are deprecated are marked with **{warning-solid}**. +## AccessLevel + +Represents the access level of a relationship between a User and object that it is related to + +| Name | Type | Description | +| --- | ---- | ---------- | +| `integerValue` | Int | Integer representation of access level | +| `stringValue` | AccessLevelEnum | String representation of access level | + ## AddAwardEmojiPayload Autogenerated return type of AddAwardEmoji @@ -81,6 +90,17 @@ Represents total number of alerts for the represented categories | `resolved` | Int | Number of alerts with status RESOLVED for the project | | `triggered` | Int | Number of alerts with status TRIGGERED for the project | +## AlertSetAssigneesPayload + +Autogenerated return type of AlertSetAssignees + +| Name | Type | Description | +| --- | ---- | ---------- | +| `alert` | AlertManagementAlert | The alert after mutation | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `issue` | Issue | The issue created after mutation | + ## AwardEmoji An emoji awarded by a user. @@ -177,6 +197,32 @@ Autogenerated return type of BoardListUpdateLimitMetrics | `titleHtml` | String | The GitLab Flavored Markdown rendering of `title` | | `webUrl` | String! | Web URL of the commit | +## CommitCreatePayload + +Autogenerated return type of CommitCreate + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `commit` | Commit | The commit after mutation | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + +## ContainerExpirationPolicy + +A tag expiration policy designed to keep only the images that matter most + +| Name | Type | Description | +| --- | ---- | ---------- | +| `cadence` | ContainerExpirationPolicyCadenceEnum! | This container expiration policy schedule | +| `createdAt` | Time! | Timestamp of when the container expiration policy was created | +| `enabled` | Boolean! | Indicates whether this container expiration policy is enabled | +| `keepN` | ContainerExpirationPolicyKeepEnum | Number of tags to retain | +| `nameRegex` | String | Tags with names matching this regex pattern will expire | +| `nameRegexKeep` | String | Tags with names matching this regex pattern will be preserved | +| `nextRunAt` | Time | Next time that this container expiration policy will get executed | +| `olderThan` | ContainerExpirationPolicyOlderThanEnum | Tags older that this will expire | +| `updatedAt` | Time! | Timestamp of when the container expiration policy was updated | + ## CreateAlertIssuePayload Autogenerated return type of CreateAlertIssue @@ -278,6 +324,15 @@ Autogenerated return type of CreateSnippet | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `snippet` | Snippet | The snippet after mutation | +## DeleteAnnotationPayload + +Autogenerated return type of DeleteAnnotation + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + ## DeleteJobsResponse The response from the AdminSidekiqQueuesDeleteJobs mutation. @@ -438,6 +493,20 @@ Autogenerated return type of DestroySnippet | `createdAt` | Time! | Timestamp of the discussion's creation | | `id` | ID! | ID of this discussion | | `replyId` | ID! | ID used to reply to this discussion | +| `resolvable` | Boolean! | Indicates if the object can be resolved | +| `resolved` | Boolean! | Indicates if the object is resolved | +| `resolvedAt` | Time | Timestamp of when the object was resolved | +| `resolvedBy` | User | User who resolved the object | + +## DiscussionToggleResolvePayload + +Autogenerated return type of DiscussionToggleResolve + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `discussion` | Discussion | The discussion after mutation | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | ## DismissVulnerabilityPayload @@ -665,6 +734,7 @@ Autogenerated return type of EpicTreeReorder | `fullPath` | ID! | Full path of the namespace | | `groupTimelogsEnabled` | Boolean | Indicates if Group timelogs are enabled for namespace | | `id` | ID! | ID of the namespace | +| `label` | Label | A label available on this group | | `lfsEnabled` | Boolean | Indicates if Large File Storage (LFS) is enabled for namespace | | `mentionsDisabled` | Boolean | Indicates if a group is disabled from getting mentioned | | `name` | String! | Name of the namespace | @@ -681,6 +751,20 @@ Autogenerated return type of EpicTreeReorder | `visibility` | String | Visibility of the namespace | | `webUrl` | String! | Web URL of the group | +## GroupMember + +Represents a Group Member + +| Name | Type | Description | +| --- | ---- | ---------- | +| `accessLevel` | AccessLevel | GitLab::Access level | +| `createdAt` | Time | Date and time the membership was created | +| `createdBy` | User | User that authorized membership | +| `expiresAt` | Time | Date and time the membership expires | +| `group` | Group | Group that a User is a member of | +| `updatedAt` | Time | Date and time the membership was last updated | +| `userPermissions` | GroupPermissions! | Permissions for the current user on the resource | + ## GroupPermissions | Name | Type | Description | @@ -801,9 +885,12 @@ Represents an iteration object. | Name | Type | Description | | --- | ---- | ---------- | | `createdAt` | Time | Timestamp of when the Jira import was created | +| `failedToImportCount` | Int! | Count of issues that failed to import | +| `importedIssuesCount` | Int! | Count of issues that were successfully imported | | `jiraProjectKey` | String! | Project key for the imported Jira project | | `scheduledAt` | Time | Timestamp of when the Jira import was scheduled | | `scheduledBy` | User | User that started the Jira import | +| `totalIssueCount` | Int! | Total count of issues that were attempted to import | ## JiraImportStartPayload @@ -815,13 +902,41 @@ Autogenerated return type of JiraImportStart | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `jiraImport` | JiraImport | The Jira import data after mutation | +## JiraImportUsersPayload + +Autogenerated return type of JiraImportUsers + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `jiraUsers` | JiraUser! => Array | Users returned from Jira, matched by email and name if possible. | + +## JiraProject + +| Name | Type | Description | +| --- | ---- | ---------- | +| `key` | String! | Key of the Jira project | +| `name` | String | Name of the Jira project | +| `projectId` | Int! | ID of the Jira project | + ## JiraService | Name | Type | Description | | --- | ---- | ---------- | | `active` | Boolean | Indicates if the service is active | +| `projects` | JiraProjectConnection | List of Jira projects fetched through Jira REST API | | `type` | String | Class name of the service | +## JiraUser + +| Name | Type | Description | +| --- | ---- | ---------- | +| `gitlabId` | Int | Id of the matched GitLab user | +| `jiraAccountId` | String! | Account id of the Jira user | +| `jiraDisplayName` | String! | Display name of the Jira user | +| `jiraEmail` | String | Email of the Jira user, returned only for users with public emails | + ## Label | Name | Type | Description | @@ -848,6 +963,7 @@ Autogenerated return type of MarkAsSpamSnippet | Name | Type | Description | | --- | ---- | ---------- | | `allowCollaboration` | Boolean | Indicates if members of the target project can push to the fork | +| `author` | User | User who created this merge request | | `createdAt` | Time! | Timestamp of when the merge request was created | | `defaultMergeCommitMessage` | String | Default merge commit message of the merge request | | `description` | String | Description of the merge request (Markdown rendered as HTML for caching) | @@ -868,6 +984,7 @@ Autogenerated return type of MarkAsSpamSnippet | `mergeStatus` | String | Status of the merge request | | `mergeWhenPipelineSucceeds` | Boolean | Indicates if the merge has been set to be merged when its pipeline succeeds (MWPS) | | `mergeableDiscussionsState` | Boolean | Indicates if all discussions in the merge request have been resolved, allowing the merge request to be merged | +| `mergedAt` | Time | Timestamp of when the merge request was merged, null if not merged | | `milestone` | Milestone | The milestone of the merge request | | `project` | Project! | Alias for target_project | | `projectId` | Int! | ID of the merge request project | @@ -883,6 +1000,7 @@ Autogenerated return type of MarkAsSpamSnippet | `state` | MergeRequestState! | State of the merge request | | `subscribed` | Boolean! | Indicates if the currently logged in user is subscribed to this merge request | | `targetBranch` | String! | Target branch of the merge request | +| `targetBranchExists` | Boolean! | Indicates if the target branch of the merge request exists | | `targetProject` | Project! | Target project of the merge request | | `targetProjectId` | Int! | ID of the merge request target project | | `taskCompletionStatus` | TaskCompletionStatus! | Completion status of tasks | @@ -897,6 +1015,16 @@ Autogenerated return type of MarkAsSpamSnippet | `webUrl` | String | Web URL of the merge request | | `workInProgress` | Boolean! | Indicates if the merge request is a work in progress (WIP) | +## MergeRequestCreatePayload + +Autogenerated return type of MergeRequestCreate + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `mergeRequest` | MergeRequest | The merge request after mutation | + ## MergeRequestPermissions Check permissions for the current user on a merge request @@ -984,6 +1112,7 @@ Autogenerated return type of MergeRequestSetWip | Name | Type | Description | | --- | ---- | ---------- | | `path` | String | Path to a file with the dashboard definition | +| `schemaValidationWarnings` | String! => Array | Dashboard schema validation warnings | ## MetricsDashboardAnnotation @@ -1004,9 +1133,12 @@ Represents a milestone. | `createdAt` | Time! | Timestamp of milestone creation | | `description` | String | Description of the milestone | | `dueDate` | Time | Timestamp of the milestone due date | +| `groupMilestone` | Boolean! | Indicates if milestone is at group level | | `id` | ID! | ID of the milestone | +| `projectMilestone` | Boolean! | Indicates if milestone is at project level | | `startDate` | Time | Timestamp of the milestone start date | | `state` | MilestoneStateEnum! | State of the milestone | +| `subgroupMilestone` | Boolean! | Indicates if milestone is at subgroup level | | `title` | String! | Title of the milestone | | `updatedAt` | Time! | Timestamp of last milestone update | | `webPath` | String! | Web path of the milestone | @@ -1040,9 +1172,10 @@ Represents a milestone. | `id` | ID! | ID of the note | | `position` | DiffPosition | The position of this note on a diff | | `project` | Project | Project associated with the note | -| `resolvable` | Boolean! | Indicates if this note can be resolved. That is, if it is a resolvable discussion or simply a standalone note | -| `resolvedAt` | Time | Timestamp of the note's resolution | -| `resolvedBy` | User | User that resolved the discussion | +| `resolvable` | Boolean! | Indicates if the object can be resolved | +| `resolved` | Boolean! | Indicates if the object is resolved | +| `resolvedAt` | Time | Timestamp of when the object was resolved | +| `resolvedBy` | User | User who resolved the object | | `system` | Boolean! | Indicates whether this note was created by the system or by a user | | `updatedAt` | Time! | Timestamp of the note's last activity | | `userPermissions` | NotePermissions! | Permissions for the current user on the resource | @@ -1109,6 +1242,7 @@ Information about pagination in a connection. | `finishedAt` | Time | Timestamp of the pipeline's completion | | `id` | ID! | ID of the pipeline | | `iid` | String! | Internal ID of the pipeline | +| `securityReportSummary` | SecurityReportSummary | Vulnerability and scanned resource counts for each security scanner of the pipeline | | `sha` | String! | SHA of the pipeline's commit | | `startedAt` | Time | Timestamp when the pipeline was started | | `status` | PipelineStatusEnum! | Status of the pipeline (CREATED, WAITING_FOR_RESOURCE, PREPARING, PENDING, RUNNING, FAILED, SUCCESS, CANCELED, SKIPPED, MANUAL, SCHEDULED) | @@ -1129,10 +1263,12 @@ Information about pagination in a connection. | --- | ---- | ---------- | | `alertManagementAlert` | AlertManagementAlert | A single Alert Management alert of the project | | `alertManagementAlertStatusCounts` | AlertManagementAlertStatusCountsType | Counts of alerts by status for the project | +| `allowMergeOnSkippedPipeline` | Boolean | If `only_allow_merge_if_pipeline_succeeds` is true, indicates if merge requests of the project can also be merged with skipped jobs | | `archived` | Boolean | Indicates the archived status of the project | | `autocloseReferencedIssues` | Boolean | Indicates if issues referenced by merge requests and commits within the default branch are closed automatically | | `avatarUrl` | String | URL to avatar image file of the project | | `board` | Board | A single board of the project | +| `containerExpirationPolicy` | ContainerExpirationPolicy | The container expiration policy of the project | | `containerRegistryEnabled` | Boolean | Indicates if the project stores Docker container images in a container registry | | `createdAt` | Time | Timestamp of the project creation | | `description` | String | Short description of the project | @@ -1148,6 +1284,7 @@ Information about pagination in a connection. | `issuesEnabled` | Boolean | Indicates if Issues are enabled for the current user | | `jiraImportStatus` | String | Status of Jira import background job of the project | | `jobsEnabled` | Boolean | Indicates if CI/CD pipeline jobs are enabled for the current user | +| `label` | Label | A label available on this project | | `lastActivityAt` | Time | Timestamp of the project last activity | | `lfsEnabled` | Boolean | Indicates if the project has Large File Storage (LFS) enabled | | `mergeRequest` | MergeRequest | A single merge request of the project | @@ -1160,6 +1297,7 @@ Information about pagination in a connection. | `onlyAllowMergeIfPipelineSucceeds` | Boolean | Indicates if merge requests of the project can only be merged with successful jobs | | `openIssuesCount` | Int | Number of open issues for the project | | `path` | String! | Path of the project | +| `pipeline` | Pipeline | Build pipeline of the project | | `printingMergeRequestLinkEnabled` | Boolean | 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 | | `publicJobs` | Boolean | Indicates if there is public access to pipelines and job details of the project, including output logs and artifacts | | `release` | Release | A single release of the project. Available only when feature flag `graphql_release_data` is enabled | @@ -1185,6 +1323,22 @@ Information about pagination in a connection. | `webUrl` | String | Web URL of the project | | `wikiEnabled` | Boolean | Indicates if Wikis are enabled for the current user | +## ProjectMember + +Represents a Project Member + +| Name | Type | Description | +| --- | ---- | ---------- | +| `accessLevel` | AccessLevel | GitLab::Access level | +| `createdAt` | Time | Date and time the membership was created | +| `createdBy` | User | User that authorized membership | +| `expiresAt` | Time | Date and time the membership expires | +| `id` | ID! | ID of the member | +| `project` | Project | Project that User is a member of | +| `updatedAt` | Time | Date and time the membership was last updated | +| `user` | User! | User that is associated with the member object | +| `userPermissions` | ProjectPermissions! | Permissions for the current user on the resource | + ## ProjectPermissions | Name | Type | Description | @@ -1248,6 +1402,7 @@ Information about pagination in a connection. | Name | Type | Description | | --- | ---- | ---------- | +| `assets` | ReleaseAssets | Assets of the release | | `author` | User | User that created the release | | `commit` | Commit | The commit associated with the release | | `createdAt` | Time | Timestamp of when the release was created | @@ -1258,6 +1413,40 @@ Information about pagination in a connection. | `tagName` | String! | Name of the tag associated with the release | | `tagPath` | String | Relative web path to the tag associated with the release | +## ReleaseAssets + +| Name | Type | Description | +| --- | ---- | ---------- | +| `assetsCount` | Int | Number of assets of the release | + +## ReleaseEvidence + +Evidence for a release + +| Name | Type | Description | +| --- | ---- | ---------- | +| `collectedAt` | Time | Timestamp when the evidence was collected | +| `filepath` | String | URL from where the evidence can be downloaded | +| `id` | ID! | ID of the evidence | +| `sha` | String | SHA1 ID of the evidence hash | + +## ReleaseLink + +| Name | Type | Description | +| --- | ---- | ---------- | +| `external` | Boolean | Indicates the link points to an external resource | +| `id` | ID! | ID of the link | +| `linkType` | ReleaseLinkType | Type of the link: `other`, `runbook`, `image`, `package`; defaults to `other` | +| `name` | String | Name of the link | +| `url` | String | URL of the link | + +## ReleaseSource + +| Name | Type | Description | +| --- | ---- | ---------- | +| `format` | String | Format of the source | +| `url` | String | Download URL of the source | + ## RemoveAwardEmojiPayload Autogenerated return type of RemoveAwardEmoji @@ -1288,7 +1477,7 @@ Autogenerated return type of RemoveProjectFromSecurityDashboard ## Requirement -Represents a requirement. +Represents a requirement | Name | Type | Description | | --- | ---- | ---------- | @@ -1334,6 +1523,37 @@ Counts of requirements by their state. | `storageSize` | Float! | The total storage in bytes | | `wikiSize` | Float! | The wiki size in bytes | +## RunDASTScanPayload + +Autogenerated return type of RunDASTScan + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | +| `pipelineUrl` | String | URL of the pipeline that was created. | + +## SecurityReportSummary + +Represents summary of a security report + +| Name | Type | Description | +| --- | ---- | ---------- | +| `containerScanning` | SecurityReportSummarySection | Aggregated counts for the container_scanning scan | +| `dast` | SecurityReportSummarySection | Aggregated counts for the dast scan | +| `dependencyScanning` | SecurityReportSummarySection | Aggregated counts for the dependency_scanning scan | +| `sast` | SecurityReportSummarySection | Aggregated counts for the sast scan | +| `secretDetection` | SecurityReportSummarySection | Aggregated counts for the secret_detection scan | + +## SecurityReportSummarySection + +Represents a section of a summary of a security report + +| Name | Type | Description | +| --- | ---- | ---------- | +| `scannedResourcesCount` | Int | Total number of scanned resources | +| `vulnerabilitiesCount` | Int | Total number of vulnerabilities | + ## SentryDetailedError A Sentry error. @@ -1455,8 +1675,9 @@ Represents a snippet entry | Name | Type | Description | | --- | ---- | ---------- | -| `author` | User! | The owner of the snippet | +| `author` | User | The owner of the snippet | | `blob` | SnippetBlob! | Snippet blob | +| `blobs` | SnippetBlob! => Array | Snippet blobs | | `createdAt` | Time! | Timestamp this snippet was created | | `description` | String | Description of the snippet | | `descriptionHtml` | String | The GitLab Flavored Markdown rendering of `description` | @@ -1538,6 +1759,17 @@ Completion status of tasks | `completedCount` | Int! | Number of completed tasks | | `count` | Int! | Number of total tasks | +## TestReport + +Represents a requirement test report. + +| Name | Type | Description | +| --- | ---- | ---------- | +| `author` | User | Author of the test report | +| `createdAt` | Time! | Timestamp of when the test report was created | +| `id` | ID! | ID of the test report | +| `state` | TestReportState! | State of the test report | + ## Timelog | Name | Type | Description | @@ -1646,6 +1878,16 @@ Autogenerated return type of UpdateAlertStatus | `errors` | String! => Array | Errors encountered during execution of the mutation. | | `issue` | Issue | The issue created after mutation | +## UpdateContainerExpirationPolicyPayload + +Autogenerated return type of UpdateContainerExpirationPolicy + +| Name | Type | Description | +| --- | ---- | ---------- | +| `clientMutationId` | String | A unique identifier for the client performing the mutation. | +| `containerExpirationPolicy` | ContainerExpirationPolicy | The container expiration policy after mutation | +| `errors` | String! => Array | Errors encountered during execution of the mutation. | + ## UpdateEpicPayload Autogenerated return type of UpdateEpic @@ -1713,7 +1955,7 @@ Autogenerated return type of UpdateSnippet | `avatarUrl` | String | URL of the user's avatar | | `id` | ID! | ID of the user | | `name` | String! | Human-readable name of the user | -| `state` | String! | State of the issue | +| `state` | UserState! | State of the user | | `userPermissions` | UserPermissions! | Permissions for the current user on the resource | | `username` | String! | Username of the user. Unique within this instance of GitLab | | `webUrl` | String! | Web URL of the user | @@ -1744,13 +1986,24 @@ Represents a vulnerability. | `id` | ID! | GraphQL ID of the vulnerability | | `location` | VulnerabilityLocation | Location metadata for the vulnerability. Its fields depend on the type of security scan that found the vulnerability | | `project` | Project | The project on which the vulnerability was found | -| `reportType` | VulnerabilityReportType | Type of the security report that found the vulnerability (SAST, DEPENDENCY_SCANNING, CONTAINER_SCANNING, DAST) | +| `reportType` | VulnerabilityReportType | Type of the security report that found the vulnerability (SAST, DEPENDENCY_SCANNING, CONTAINER_SCANNING, DAST, SECRET_DETECTION) | | `severity` | VulnerabilitySeverity | Severity of the vulnerability (INFO, UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL) | | `state` | VulnerabilityState | State of the vulnerability (DETECTED, DISMISSED, RESOLVED, CONFIRMED) | | `title` | String | Title of the vulnerability | +| `userNotesCount` | Int! | Number of user notes attached to the vulnerability | | `userPermissions` | VulnerabilityPermissions! | Permissions for the current user on the resource | | `vulnerabilityPath` | String | URL to the vulnerability's details page | +## VulnerabilityIssueLink + +Represents an issue link of a vulnerability. + +| Name | Type | Description | +| --- | ---- | ---------- | +| `id` | ID! | GraphQL ID of the vulnerability | +| `issue` | Issue! | The issue attached to issue link | +| `linkType` | VulnerabilityIssueLinkType! | Type of the issue link | + ## VulnerabilityLocationContainerScanning Represents the location of a vulnerability found by a container security scan @@ -1793,6 +2046,18 @@ Represents the location of a vulnerability found by a SAST scan | `vulnerableClass` | String | Class containing the vulnerability | | `vulnerableMethod` | String | Method containing the vulnerability | +## VulnerabilityLocationSecretDetection + +Represents the location of a vulnerability found by a secret detection scan + +| Name | Type | Description | +| --- | ---- | ---------- | +| `endLine` | String | Number of the last relevant line in the vulnerable file | +| `file` | String | Path to the vulnerable file | +| `startLine` | String | Number of the first relevant line in the vulnerable file | +| `vulnerableClass` | String | Class containing the vulnerability | +| `vulnerableMethod` | String | Method containing the vulnerability | + ## VulnerabilityPermissions Check permissions for the current user on a vulnerability |