discord-bot/Clients/CirrusCiClient/schema.graphql

1144 lines
26 KiB
GraphQL

schema {
query: Query
mutation: Mutation
subscription: Subscription
}
type ApiAccessToken {
maskedToken: String!
creationTimestamp: Long!
}
"Task architecture."
enum ArchitectureType {
AMD64
ARM64
}
type ArtifactFileInfo {
path: String!
size: Long!
}
type Artifacts {
name: String!
type: String
format: String
files: [ArtifactFileInfo!]!
}
"An edge in a connection"
type AuditEventEdge {
"The item at the end of the edge"
node: AuditEventType!
"cursor marks a unique position or index into the connection"
cursor: String!
}
type AuditEventType implements Node {
id: ID!
platform: String!
ownerUid: String!
type: String!
data: String!
timestamp: Long!
repository: Repository
actor: UserBasicInfo
}
"A connection to a list of items."
type AuditEventsConnection {
"a list of edges"
edges: [AuditEventEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
type BillingSettings {
platform: String!
ownerUid: String!
enabled: Boolean!
billingCreditsLimit: Long!
billingEmailAddress: String!
invoiceTemplate: String
}
input BillingSettingsInput {
platform: String!
ownerUid: ID!
enabled: Boolean!
billingEmailAddress: String!
invoiceTemplate: String
clientMutationId: String!
}
type BillingSettingsPayload {
settings: BillingSettings!
clientMutationId: String!
}
type Build implements Node {
id: ID!
repositoryId: ID!
branch: String!
tag: String
changeIdInRepo: String!
changeMessageTitle: String!
changeMessage: String!
durationInSeconds: Long
clockDurationInSeconds: Long
pullRequest: Long
pullRequestLabels: [String!]!
isSenderUserCollaborator: Boolean!
senderUserPermissions: String!
changeTimestamp: Long!
buildCreatedTimestamp: Long!
status: BuildStatus!
notifications: [Notification!]!
parsingResult: ParsingResult
tasks: [Task!]!
executingTasks: [Task!]!
taskGroupsAmount: Long!
latestGroupTasks: [Task!]!
repository: Repository!
viewerPermission: PermissionType!
source: String
hooks: [Hook!]!
initializer: UserBasicInfo
}
input BuildApproveInput {
buildId: ID!
clientMutationId: String!
}
type BuildApprovePayload {
build: Build!
clientMutationId: String!
}
input BuildReTriggerInput {
buildId: ID!
clientMutationId: String!
}
type BuildReTriggerPayload {
build: Build!
clientMutationId: String!
}
"Build status."
enum BuildStatus {
CREATED
NEEDS_APPROVAL
TRIGGERED
EXECUTING
FAILED
COMPLETED
ABORTED
ERRORED
}
input BuyComputeCreditsInput {
platform: String!
ownerUid: ID!
amountOfCredits: String!
paymentTokenId: String!
receiptEmail: String
clientMutationId: String!
}
type BuyComputeCreditsPayload {
error: String
info: OwnerInfo!
user: User!
clientMutationId: String!
}
type CacheRetrievalAttemptError {
key: String!
message: String!
}
type CacheRetrievalAttemptHit {
key: String!
sizeBytes: Int!
downloadedInMilliseconds: Int!
extractedInMilliseconds: Int!
valid: Boolean!
}
type CacheRetrievalAttemptMiss {
key: String!
sizeBytes: Int!
populatedInMilliseconds: Int!
archivedInMilliseconds: Int!
uploadedInMilliseconds: Int!
}
type CacheRetrievalAttempts {
errors: [CacheRetrievalAttemptError!]!
hits: [CacheRetrievalAttemptHit!]!
misses: [CacheRetrievalAttemptMiss!]!
}
type ComputeUsage {
instancePlatform: PlatformType!
instanceArchitecture: ArchitectureType!
cpuSeconds: Long!
balanceInMicroCredits: Long!
}
"Repository Setting to choose where to look for the configuration file."
enum ConfigResolutionStrategy {
SAME_SHA
MERGE_FOR_PRS
DEFAULT_BRANCH
}
input CreatePersistentWorkerPoolInput {
platform: String!
ownerUid: ID!
name: String!
enabledForPublic: Boolean!
clientMutationId: String!
}
type CreatePersistentWorkerPoolPayload {
pool: PersistentWorkerPool!
clientMutationId: String!
}
type DayDate {
year: Int!
month: Int!
day: Int!
}
"Repository Setting to choose how to decrypt variables."
enum DecryptEnvironmentVariablesFor {
USERS_WITH_WRITE_PERMISSIONS
EVERYONE
COLLABORATORS
}
input DeletePersistentWorkerInput {
poolId: String!
name: String!
clientMutationId: String!
}
type DeletePersistentWorkerPayload {
deletedWorker: PersistentWorker!
clientMutationId: String!
}
input DeletePersistentWorkerPoolInput {
poolId: String!
clientMutationId: String!
}
type DeletePersistentWorkerPoolPayload {
deletedPoolId: ID!
deletedPool: PersistentWorkerPool!
clientMutationId: String!
}
input DeleteWebPushConfigurationInput {
endpoint: String!
clientMutationId: String!
}
type DeleteWebPushConfigurationPayload {
clientMutationId: String!
}
type ExecutionChart {
maxValue: Float!
minValue: Float!
points: [ExecutionChartPoint!]!
}
type ExecutionChartPoint {
value: Float!
secondsFromStart: Long!
}
type ExecutionEvent {
timestamp: Long!
message: String!
}
type ExecutionInfo {
labels: [String!]!
events: [ExecutionEvent!]!
cpuChart: ExecutionChart
memoryChart: ExecutionChart
cacheRetrievalAttempts: CacheRetrievalAttempts!
agentNotifications: [Notification!]!
}
input GenerateNewOwnerAccessTokenInput {
platform: ID!
ownerUid: ID!
clientMutationId: String!
}
type GenerateNewOwnerAccessTokenPayload {
token: String!
clientMutationId: String!
}
input GenerateNewScopedAccessTokenInput {
platform: ID!
ownerUid: ID!
durationSeconds: Int
permission: PermissionType!
repositoryNames: [String!]!
clientMutationId: String!
}
type GenerateNewScopedAccessTokenPayload {
token: String!
clientMutationId: String!
}
input GetPersistentWorkerPoolRegistrationTokenInput {
poolId: ID!
clientMutationId: String!
}
type GetPersistentWorkerPoolRegistrationTokenPayload {
token: String!
clientMutationId: String!
}
type Hook implements Node {
id: ID!
repositoryId: ID!
repository: Repository!
buildId: ID!
build: Build!
taskId: ID
task: Task
timestamp: Long!
name: String!
info: HookExecutionInfo!
}
type HookExecutionInfo {
error: String!
arguments: String!
result: String!
outputLogs: [String!]!
durationNanos: Long!
environment: [String!]!
}
input HooksReRunInput {
hookIds: [ID!]
clientMutationId: String!
}
type HooksReRunPayload {
newHooks: [Hook!]!
clientMutationId: String!
}
type InstanceResources {
cpu: Float!
memory: Long!
}
input InvalidateCacheEntriesInput {
taskId: ID!
cacheKeys: [String!]!
clientMutationId: String!
}
type InvalidateCacheEntriesPayload {
clientMutationId: String!
}
"A 64-bit signed integer"
scalar Long
type MetricsChart {
title: String!
points: [TimePoint!]!
dataUnits: String
}
input MetricsQueryParameters {
status: TaskStatus
platform: PlatformType
type: String
isCommunity: Boolean
isPR: Boolean
usedComputeCredits: Boolean
branch: String
}
type MonthlyComputeUsage {
date: String!
usageDetails: [ComputeUsage!]!
}
type Mutation {
securedVariable(input: RepositorySecuredVariableInput!): RepositorySecuredVariablePayload!
securedOwnerVariable(input: OwnerSecuredVariableInput!): OwnerSecuredVariablePayload!
updateSecuredOwnerVariable(input: UpdateOwnerSecuredVariableInput!): UpdateOwnerSecuredVariablePayload!
createBuild(input: RepositoryCreateBuildInput!): RepositoryCreateBuildPayload!
deleteRepository(input: RepositoryDeleteInput!): RepositoryDeletePayload!
rerun(input: TaskReRunInput!): TaskReRunPayload!
batchReRun(input: TasksReRunInput!): TasksReRunPayload!
abortTask(input: TaskAbortInput!): TaskAbortPayload!
batchAbort(input: TaskBatchAbortInput!): TaskBatchAbortPayload!
retrigger(input: BuildReTriggerInput!): BuildReTriggerPayload!
saveSettings(input: RepositorySettingsInput!): RepositorySettingsPayload!
saveCronSettings(input: RepositorySaveCronSettingsInput!): RepositorySaveCronSettingsPayload!
removeCronSettings(input: RepositoryRemoveCronSettingsInput!): RepositoryRemoveCronSettingsPayload!
approve(input: BuildApproveInput!): BuildApprovePayload!
trigger(input: TaskTriggerInput!): TaskTriggerPayload!
saveWebHookSettings(input: SaveWebHookSettingsInput!): SaveWebHookSettingsPayload!
generateNewOwnerAccessToken(input: GenerateNewOwnerAccessTokenInput!): GenerateNewOwnerAccessTokenPayload!
generateNewScopedAccessToken(input: GenerateNewScopedAccessTokenInput!): GenerateNewScopedAccessTokenPayload!
deletePersistentWorker(input: DeletePersistentWorkerInput!): DeletePersistentWorkerPayload!
updatePersistentWorker(input: UpdatePersistentWorkerInput!): UpdatePersistentWorkerPayload!
persistentWorkerPoolRegistrationToken(input: GetPersistentWorkerPoolRegistrationTokenInput!): GetPersistentWorkerPoolRegistrationTokenPayload!
createPersistentWorkerPool(input: CreatePersistentWorkerPoolInput!): CreatePersistentWorkerPoolPayload!
updatePersistentWorkerPool(input: UpdatePersistentWorkerPoolInput!): UpdatePersistentWorkerPoolPayload!
deletePersistentWorkerPool(input: DeletePersistentWorkerPoolInput!): DeletePersistentWorkerPoolPayload!
saveWebPushConfiguration(input: SaveWebPushConfigurationInput!): SaveWebPushConfigurationPayload!
deleteWebPushConfiguration(input: DeleteWebPushConfigurationInput!): DeleteWebPushConfigurationPayload!
rerunHooks(input: HooksReRunInput!): HooksReRunPayload!
repositorySetMetadata(input: RepositorySetMetadataInput!): RepositorySetMetadataPayload!
invalidateCacheEntries(input: InvalidateCacheEntriesInput!): InvalidateCacheEntriesPayload!
saveBillingSettings(input: BillingSettingsInput!): BillingSettingsPayload!
buyComputeCredits(input: BuyComputeCreditsInput!): BuyComputeCreditsPayload!
}
"An object with an ID"
interface Node {
"The ID of an object"
id: ID!
}
type Notification {
level: NotificationLevel!
message: String!
link: String
}
"Notification level."
enum NotificationLevel {
INFO
WARNING
ERROR
}
"An edge in a connection"
type OwnerBuildEdge {
"The item at the end of the edge"
node: Build!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type OwnerBuildsConnection {
"a list of edges"
edges: [OwnerBuildEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
type OwnerInfo {
uid: ID!
platform: String!
name: String!
avatarURL: String!
description: OwnerInfoDescription!
viewerPermission: PermissionType!
apiToken: ApiAccessToken
persistentWorkerPools: [PersistentWorkerPool!]!
webhookSettings: WebHookSettings!
webhookDeliveries("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): OwnerWebhookDeliveriesConnection!
repositories("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): OwnerRepositoriesConnection!
builds("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int "fetching only builds with the specified status" status: BuildStatus): OwnerBuildsConnection!
auditEvents("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): AuditEventsConnection!
balanceInCredits: String!
billingSettings: BillingSettings!
transactions("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): OwnerTransactionsConnection!
monthlyComputeUsage: [MonthlyComputeUsage!]!
}
type OwnerInfoDescription {
message: String!
actions: [OwnerInfoDescriptionAction!]!
}
type OwnerInfoDescriptionAction {
title: String!
link: String!
icon: String
}
"A connection to a list of items."
type OwnerRepositoriesConnection {
"a list of edges"
edges: [OwnerRepositoryEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
"An edge in a connection"
type OwnerRepositoryEdge {
"The item at the end of the edge"
node: Repository!
"cursor marks a unique position or index into the connection"
cursor: String!
}
input OwnerSecuredVariableInput {
platform: String!
ownerUid: ID!
valueToSecure: String!
clientMutationId: String!
}
type OwnerSecuredVariablePayload {
variableName: String!
clientMutationId: String!
}
type OwnerTransaction {
platform: String!
ownerUid: String!
taskId: Long!
repositoryId: Long!
timestamp: Long!
microCreditsAmount: Long!
creditsAmount: String!
initialCreditsAmount: String
task: Task!
repository: Repository!
}
"An edge in a connection"
type OwnerTransactionEdge {
"The item at the end of the edge"
node: OwnerTransaction!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type OwnerTransactionsConnection {
"a list of edges"
edges: [OwnerTransactionEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
"An edge in a connection"
type OwnerWebHookDeliveryEdge {
"The item at the end of the edge"
node: WebHookDelivery!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type OwnerWebhookDeliveriesConnection {
"a list of edges"
edges: [OwnerWebHookDeliveryEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
"Information about pagination in a connection."
type PageInfo {
"When paginating forwards, are there more items?"
hasNextPage: Boolean!
"When paginating backwards, are there more items?"
hasPreviousPage: Boolean!
"When paginating backwards, the cursor to continue."
startCursor: String
"When paginating forwards, the cursor to continue."
endCursor: String
}
type ParsingResult {
rawYamlConfig: String!
rawStarlarkConfig: String!
processedYamlConfig: String!
issues: [ParsingResultIssue!]!
affectedFiles: [String!]!
outputLogs: [String!]!
environment: [String!]!
}
type ParsingResultIssue {
level: ParsingResultIssueLevel!
message: String!
rawDetails: String!
path: String!
line: Long!
column: Long!
}
enum ParsingResultIssueLevel {
INFO
WARNING
ERROR
}
"User access level."
enum PermissionType {
NONE
READ
WRITE
ADMIN
}
type PersistentWorker {
id: ID!
name: String!
disabled: Boolean!
arch: String!
hostname: String!
os: String!
version: String!
labels: [String!]!
info: PersistentWorkerInfo
assignedTasks("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): PersistentWorkerAssignedTasksConnection!
}
"An edge in a connection"
type PersistentWorkerAssignedTaskEdge {
"The item at the end of the edge"
node: Task!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type PersistentWorkerAssignedTasksConnection {
"a list of edges"
edges: [PersistentWorkerAssignedTaskEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
type PersistentWorkerInfo {
heartbeatTimestamp: Long!
runningTasks: [Task!]!
resourcesTotal: [PersistentWorkerResource!]!
}
type PersistentWorkerPool implements Node {
id: ID!
name: String!
enabledForPublic: Boolean!
workers: [PersistentWorker!]!
viewerPermission: PermissionType!
}
type PersistentWorkerResource {
key: String!
value: Float!
}
"Task platform."
enum PlatformType {
LINUX
DARWIN
WINDOWS
FREEBSD
SOLARIS
OPENBSD
NETBSD
}
type Query {
node(id: ID!): Node
viewer: User
repository(id: ID!): Repository
ownerRepository(platform: String! owner: String! name: String!): Repository
build(id: ID!): Build
searchBuilds(repositoryOwner: String! repositoryName: String! SHA: String): [Build!]
task(id: ID!): Task
hook(id: ID!): Hook
webhookDelivery(id: String!): WebHookDelivery
persistentWorkerPool(poolId: ID): PersistentWorkerPool
persistentWorker(poolId: ID name: String): PersistentWorker
ownerInfo(platform: String uid: ID): OwnerInfo
ownerInfoByName(platform: String name: String): OwnerInfo
}
type Repository implements Node {
id: ID!
platform: String!
owner: String!
name: String!
cloneUrl: String!
defaultBranch: String!
masterBranch: String!
isPrivate: Boolean!
builds("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int "branch to fetch builds for" branch: String "fetching only builds with the specified status" status: BuildStatus): RepositoryBuildsConnection!
settings: RepositorySettings!
cronSettings: [RepositoryCronSettings!]!
viewerPermission: PermissionType!
lastDefaultBranchBuild: Build
metrics(parameters: MetricsQueryParameters): [MetricsChart!]!
visibleMetadata: [RepositoryMetadata!]!
metadata(key: String): RepositoryMetadata
}
"An edge in a connection"
type RepositoryBuildEdge {
"The item at the end of the edge"
node: Build!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type RepositoryBuildsConnection {
"a list of edges"
edges: [RepositoryBuildEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
input RepositoryCreateBuildInput {
repositoryId: ID!
branch: String!
sha: String
configOverride: String
clientMutationId: String!
}
type RepositoryCreateBuildPayload {
build: Build!
clientMutationId: String!
}
type RepositoryCronSettings {
name: String!
expression: String!
branch: String!
nextInvocationTimestamp: Long!
lastInvocationBuild: Build
}
input RepositoryDeleteInput {
repositoryId: ID!
clientMutationId: String!
}
type RepositoryDeletePayload {
deleted: Boolean!
deletedRepository: Repository
clientMutationId: String!
}
type RepositoryMetadata {
key: String!
value: String!
description: String!
hidden: Boolean!
}
input RepositoryRemoveCronSettingsInput {
repositoryId: ID!
name: String!
clientMutationId: String!
}
type RepositoryRemoveCronSettingsPayload {
settings: [RepositoryCronSettings!]!
clientMutationId: String!
}
input RepositorySaveCronSettingsInput {
repositoryId: ID!
name: String!
expression: String!
branch: String!
clientMutationId: String!
}
type RepositorySaveCronSettingsPayload {
settings: [RepositoryCronSettings!]!
clientMutationId: String!
}
input RepositorySecuredVariableInput {
repositoryId: ID!
valueToSecure: String!
clientMutationId: String!
}
type RepositorySecuredVariablePayload {
variableName: String!
clientMutationId: String!
}
input RepositorySetMetadataInput {
repositoryId: ID!
key: String!
value: String!
description: String
hidden: Boolean
ttlSeconds: Long
clientMutationId: String!
}
type RepositorySetMetadataPayload {
clientMutationId: String!
}
type RepositorySettings {
needsApproval: Boolean!
decryptEnvironmentVariables: DecryptEnvironmentVariablesFor!
configResolutionStrategy: ConfigResolutionStrategy!
additionalEnvironment: [String!]!
cacheVersion: Long!
paused: Boolean!
oidcSubIncludeClaimKeys: [String!]!
}
input RepositorySettingsInput {
repositoryId: ID!
needsApproval: Boolean!
decryptEnvironmentVariables: DecryptEnvironmentVariablesFor!
configResolutionStrategy: ConfigResolutionStrategy
additionalEnvironment: [String!]
cacheVersion: Long
oidcSubIncludeClaimKeys: [String!]
clientMutationId: String!
}
type RepositorySettingsPayload {
settings: RepositorySettings!
clientMutationId: String!
}
input SaveWebHookSettingsInput {
platform: String!
ownerUid: ID!
webhookURL: String
secretToken: String
clientMutationId: String!
}
type SaveWebHookSettingsPayload {
error: String
info: OwnerInfo!
settings: WebHookSettings!
clientMutationId: String!
}
input SaveWebPushConfigurationInput {
endpoint: String!
p256dhKey: String!
authKey: String!
clientMutationId: String!
}
type SaveWebPushConfigurationPayload {
clientMutationId: String!
}
type Subscription {
task(id: ID!): Task
build(id: ID!): Build
repository(id: ID!): Repository
}
type Task implements Node {
id: ID!
buildId: ID!
repositoryId: ID!
name: String!
nameAlias: String
localGroupId: Long!
requiredGroups: [Long!]!
status: TaskStatus!
notifications: [Notification!]!
commands: [TaskCommand!]!
firstFailedCommand: TaskCommand
artifacts: [Artifacts!]!
commandLogsTail(name: String!): [String!]!
statusTimestamp: Long!
creationTimestamp: Long!
scheduledTimestamp: Long
executingTimestamp: Long
finalStatusTimestamp: Long
durationInSeconds: Long!
labels: [String!]!
uniqueLabels: [String!]!
requiredPRLabels: [String!]!
timeoutInSeconds: Long!
optional: Boolean!
statusDurations: [TaskStatusDuration!]!
repository: Repository!
build: Build!
previousRuns: [Task!]!
allOtherRuns: [Task!]!
dependencies: [Task!]!
automaticReRun: Boolean!
automaticallyReRunnable: Boolean!
experimental: Boolean!
stateful: Boolean!
useComputeCredits: Boolean!
usedComputeCredits: Boolean!
triggerType: TaskTriggerType!
instancePlatform: PlatformType
instanceArchitecture: ArchitectureType!
instanceResources: InstanceResources
executionInfo: ExecutionInfo!
baseEnvironment: [String!]!
hooks: [Hook!]!
reranBy: UserBasicInfo
cancelledBy: UserBasicInfo
terminalCredential: TerminalCredential
transaction: OwnerTransaction
}
input TaskAbortInput {
taskId: ID!
clientMutationId: String!
}
type TaskAbortPayload {
abortedTask: Task!
clientMutationId: String!
}
input TaskBatchAbortInput {
taskIds: [ID!]!
clientMutationId: String!
}
type TaskBatchAbortPayload {
tasks: [Task!]!
clientMutationId: String!
}
type TaskCommand {
name: String!
type: TaskCommandType!
status: TaskCommandStatus!
durationInSeconds: Int!
logsTail: [String!]!
}
"Task Command status."
enum TaskCommandStatus {
UNDEFINED
SUCCESS
FAILURE
EXECUTING
SKIPPED
ABORTED
}
"Task Command type."
enum TaskCommandType {
WAIT
EXIT
EXECUTE_SCRIPT
CACHE
UPLOAD_CACHE
CLONE
EXECUTE_BACKGROUND_SCRIPT
FILE
ARTIFACTS
WAIT_FOR_TERMINAL
}
input TaskReRunInput {
taskId: ID!
attachTerminal: Boolean
clientMutationId: String!
}
type TaskReRunPayload {
newTask: Task!
clientMutationId: String!
}
"Task status."
enum TaskStatus {
CREATED
TRIGGERED
SCHEDULED
EXECUTING
ABORTED
FAILED
COMPLETED
SKIPPED
PAUSED
}
type TaskStatusDuration {
status: TaskStatus!
durationInSeconds: Long!
}
input TaskTriggerInput {
taskId: ID!
clientMutationId: String!
}
type TaskTriggerPayload {
task: Task!
clientMutationId: String!
}
"Task trigger type."
enum TaskTriggerType {
AUTOMATIC
MANUAL
}
input TasksReRunInput {
taskIds: [ID!]
attachTerminal: Boolean
clientMutationId: String!
}
type TasksReRunPayload {
newTasks: [Task!]!
clientMutationId: String!
}
type TerminalCredential {
locator: String!
trustedSecret: String!
}
type TimePoint {
date: DayDate!
value: Float!
}
input UpdateOwnerSecuredVariableInput {
platform: String!
ownerUid: ID!
name: String!
updatedValueToSecure: String!
clientMutationId: String!
}
type UpdateOwnerSecuredVariablePayload {
variableName: String!
clientMutationId: String!
}
input UpdatePersistentWorkerInput {
poolId: String!
name: String!
disabled: Boolean!
clientMutationId: String!
}
type UpdatePersistentWorkerPayload {
worker: PersistentWorker!
clientMutationId: String!
}
input UpdatePersistentWorkerPoolInput {
poolId: String!
name: String!
enabledForPublic: Boolean!
clientMutationId: String!
}
type UpdatePersistentWorkerPoolPayload {
pool: PersistentWorkerPool!
clientMutationId: String!
}
type User implements Node & UserBasicInfo {
id: ID!
category: User!
avatarURL: String!
builds("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int "fetching only builds with the specified statuses" statuses: [BuildStatus!]): UserBuildsConnection!
topActiveRepositories: [Repository!]!
balanceInCredits: String!
apiToken: ApiAccessToken
webPushServerKey: String!
persistentWorkerPools: [PersistentWorkerPool!]!
relatedOwners: [OwnerInfo!]!
transactions("fetching only nodes before this node (exclusive)" before: String "fetching only nodes after this node (exclusive)" after: String "fetching only the first certain number of nodes" first: Int "fetching only the last certain number of nodes" last: Int): UserTransactionsConnection!
}
interface UserBasicInfo {
id: ID!
category: User!
avatarURL: String
}
"An edge in a connection"
type UserBuildEdge {
"The item at the end of the edge"
node: Build!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type UserBuildsConnection {
"a list of edges"
edges: [UserBuildEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
"An edge in a connection"
type UserTransactionEdge {
"The item at the end of the edge"
node: OwnerTransaction!
"cursor marks a unique position or index into the connection"
cursor: String!
}
"A connection to a list of items."
type UserTransactionsConnection {
"a list of edges"
edges: [UserTransactionEdge!]!
"details about this specific page"
pageInfo: PageInfo!
}
type WebHookDelivery implements Node {
id: ID!
platform: String!
ownerUid: String!
repositoryId: Long!
timestamp: Long!
payload: WebHookDeliveryPayload!
response: WebHookDeliveryResponse!
}
type WebHookDeliveryPayload {
event: String!
action: String!
data: String!
}
type WebHookDeliveryResponse {
status: Int!
duration: Long!
data: String!
}
type WebHookSettings {
ownerUid: ID!
webhookURL: String
maskedSecretToken: String!
}