openapi: 3.0.3
info:
title: Develocity Auth GradleEnterprise API
description: 'The Develocity API allows programmatic interaction with various aspects of Develocity, from configuration to inspecting build data.
'
version: 2026.2.0
license:
name: Develocity License
url: https://gradle.com/help/legal-gradle-software-license-agreement
termsOfService: https://gradle.com/help/legal-terms-of-use
contact:
name: Gradle
url: https://gradle.com
x-logo:
url: https://assets.gradle.com/logo/develocity-logo.svg
altText: Develocity
servers:
- url: https://develocity.example.com
description: Your Develocity instance.
security:
- DevelocityAccessKeyOrToken: []
tags:
- name: GradleEnterprise
x-traitTag: true
description: '**This tag is deprecated, use `Develocity` instead**.
All endpoints of the Develocity API.
'
paths:
/api/auth/revoke-signing-keys:
post:
operationId: RevokeSigningKeys
summary: Revoke auth token signing keys
description: Revokes the existing auth token signing keys, and creates a new one. Requires the `Configure operational settings` permission. All existing access tokens will become invalid. Develocity may take a few minutes to revoke all existing access tokens.
tags:
- GradleEnterprise
responses:
'200':
description: The existing signing keys have been revoked, all access tokens will become invalid shortly
'400':
$ref: '#/components/responses/BadRequestError'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
/api/auth/token:
post:
operationId: CreateAccessToken
summary: Create a new access token
description: Create a new short-lived access token, optionally limited to the provided permissions and projects. Users do not need any specific Develocity permission to do this, but must be authenticated. If an access key is used to authenticate this request, the created token will be limited to the user's permissions and projects. If an access token is used to authenticate this request, the created token will be limited to the authenticating token's permissions and projects and not live longer than the authenticating token's remaining lifetime. Query parameters can be used to further restrict the permissions of the access token. A 401 response will be sent if the request is not authenticated. A 403 response will be sent if one of the projects or permissions present in the query parameters is not assigned to this user. A 403 will also be sent if an access token is used to authenticate the request and the requested expiration date is after the authenticating access token's expiration.
tags:
- GradleEnterprise
parameters:
- in: query
name: projectIds
schema:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/ProjectId'
example:
- project-a,project-b
- project-c
explode: true
required: false
description: Limit the created token to one or more projects. Values should be project ids. Comma seperated values and repeated parameters are supported.
- in: query
name: permissions
schema:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/Permission'
example:
- publishScan,readCache
- writeCache
explode: true
required: false
description: Limit the created token to one or more permissions. Values should be permission [config values](https://gradle.com/help/helm-admin-permissions). Comma seperated values and repeated parameters are supported.
- in: query
name: expiresInHours
schema:
type: number
format: float
minimum: 0
exclusiveMinimum: true
maximum: 24
default: 2
example: 0.5
required: false
description: The lifetime of the created token, in hours.
responses:
'200':
description: An access token
content:
text/plain:
schema:
type: string
example: eyJraWQiOiJ0ZXN0LWtleSIsImFsZyI6IlJTMjU2IiwidHlwIjoiSldUIn0.eyJpc19hbm9ueW1vdXMiOmZhbHNlLCJwZXJtaXNzaW9ucyI6WyJSRUFEX1ZFUlNJT04iLCJFWFBPUlRfREFUQSIsIkFDQ0VTU19EQVRBX1dJVEhPVVRfQVNTT0NJQVRFRF9QUk9KRUNUIl0sInByb2plY3RzIjp7ImEiOjEsImIiOjJ9LCJ1c2VyX2lkIjoic29tZS1pZCIsInVzZXJuYW1lIjoidGVzdCIsImZpcnN0X25hbWUiOiJhIiwibGFzdF9uYW1lIjoidXNlciIsImVtYWlsIjoiYkBncmFkbGUuY29tIiwic3ViIjoidGVzdCIsImV4cCI6NzIwMCwibmJmIjowLCJpYXQiOjAsImF1ZCI6ImV4YW1wbGUuZ3JhZGxlLmNvbSIsImlzcyI6ImV4YW1wbGUuZ3JhZGxlLmNvbSIsInRva2VuX3R5cGUiOiJhY2Nlc3NfdG9rZW4ifQ.H1_NEG1xuleP-WIAY_uvSmdd2o7i_-Ko3qhlo04zvCgrElJe7_F5jNuqsyDfnb5hvKlOe5UKG_7QPTgY9-3pFQ
'400':
$ref: '#/components/responses/BadRequestError'
'401':
$ref: '#/components/responses/UnauthenticatedError'
'403':
$ref: '#/components/responses/AccessTokenForbidden'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
/api/build-cache/nodes/{name}:
parameters:
- in: path
name: name
schema:
type: string
required: true
description: The name of the Build Cache Node. To select the Built-in Build Cache Node, use `Built-in` as name.
get:
operationId: GetBuildCacheNode
summary: View the configuration of a Build Cache Node.
description: View the enablement status and replication configuration of a Build Cache Node.
tags:
- GradleEnterprise
responses:
'200':
description: The configuration of a Build Cache Node.
content:
application/json:
schema:
$ref: '#/components/schemas/NodeConfiguration'
example:
enabled: false
replication:
source: parent-node-1
preemptive: true
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
put:
operationId: CreateOrUpdateBuildCacheNode
summary: Create or update a Build Cache Node.
description: 'Create a new Build Cache Node in Develocity or update the configuration of an existing one.
The Built-in Build Cache Node cannot be named as the target of this operation.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/NodeConfiguration'
example:
enabled: false
replication:
source: parent-node-1
preemptive: true
responses:
'200':
description: The name referenced an existing Build Cache Node and that Build Cache Node’s configuration was updated successfully.
'201':
description: A new Build Cache Node was created with the configuration specified in the request.
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
/api/build-cache/nodes/{name}/purge:
parameters:
- in: path
name: name
schema:
type: string
required: true
description: The name of the Build Cache Node. To select the Built-in Build Cache Node, use `Built-in` as name.
post:
operationId: InitiatePurgeOfBuildCacheNode
summary: Deletes all entries from a Build Cache Node.
description: 'Triggers the deletion of all entries stored at the named Build Cache Node.
'
tags:
- GradleEnterprise
responses:
'202':
description: Purging the Build Cache Node was successfully initiated.
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NodeNotSignedInError'
/api/build-cache/nodes/{name}/secret:
parameters:
- in: path
name: name
schema:
type: string
required: true
description: The name of the Build Cache Node.
post:
operationId: RegenerateSecretOfBuildCacheNode
summary: Regenerate the secret of a Build Cache Node.
description: 'Regenerates the secret associated with the named Build Cache Node. The old secret expires immediately, causing the Build Cache Node to
disconnect from Develocity. The Built-in Build Cache Node cannot be named as the target of this operation.
'
tags:
- GradleEnterprise
responses:
'200':
description: The name referenced an existing Build Cache Node and that Build Cache Node's secret was regenerated.
content:
application/json:
schema:
$ref: '#/components/schemas/KeySecretPair'
example:
key: cvzxztkqkqxzc3vcruabpcr264
secret: e5ag76yp6abcc5jbxusboca313
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
/api/builds:
description: 'Returns a list of builds with common attributes.
The returned list is capped by the `maxBuilds` and `maxWaitSecs` query parameters.
This endpoint supports pagination by using the `fromBuild` or `sinceBuild` query parameters, and the last returned build from a previous call to one of these endpoints.
'
parameters:
- in: query
name: BuildsQuery
explode: true
description: The query parameters used to retrieve the list of builds.
schema:
title: BuildsQuery
type: object
properties:
fromInstant:
type: integer
format: int64
minimum: 0
nullable: true
description: 'A unix-epoch-time in milliseconds allowing to retrieve builds for which Develocity completed receiving and processing the build after this instant when used in conjunction with `reverse=false`, or before this instant when used in conjunction with `reverse=true`.
Therefore, a value of `0` will process all builds.
If not provided, the time in milliseconds when the request is received by the Develocity instance will be used.
This parameter has no effect if `fromBuild` is used.
'
fromBuild:
type: string
nullable: true
description: 'A Build Scan ID allowing to retrieve builds for which Develocity completed receiving and processing after the given Build Scan ID (excluding it) when used in conjunction with `reverse=false`, or before the given Build Scan ID (excluding it) when used in conjunction with `reverse=true`.
This parameter has precedence over any value set for the `since`, `sinceBuild`, `fromInstant` parameters.
A valid Build Scan ID must be provided, that is, a Build Scan ID that exists in the Develocity instance.
A Build Scan ID for a deleted build is valid.
'
reverse:
type: boolean
nullable: true
description: 'A boolean indicating the time direction of the query.
A value of `true` indicates a backward query, and returned builds will be sorted from most to least recent.
A value of `false` indicates a forward query, and returned builds will be sorted from least to most recent.
This parameter has no effect if any of `since`, `sinceBuild` are used.
If not provided, the default value is `false`.
'
maxBuilds:
type: integer
minimum: 0
maximum: 1000
nullable: true
description: 'The maximum number of builds returned by the query.
The query returns when that number is reached or when `maxWaitSecs` is reached.
If not provided, the default value is `100`.
'
maxWaitSecs:
type: integer
minimum: 1
maximum: 20
nullable: true
description: 'The maximum number of seconds to wait for builds before returning.
If this time is reached before `maxBuilds` is reached, the query returns with the already processed builds.
Note that this time is respected with best effort.
A query will return soon after this time has passed but there is no guarantee that it exactly returns before this time has passed.
This parameter has no effect if `reverse=true` is specified, because new builds cannot become available in the past.
If not provided, the default value is `3`.
'
query:
type: string
nullable: true
description: 'A query for filtering builds, written in the Develocity advanced search query language
See: https://gradle.com/help/advanced-search
'
models:
$ref: '#/components/schemas/BuildModelNames'
allModels:
type: boolean
default: false
description: 'Whether to include all build models for each build.
If set to `true`, the value of the `models` parameter is ignored.
'
since:
type: integer
format: int64
minimum: 0
nullable: true
description: '**This parameter is deprecated, use `fromInstant` instead.**
A unix-epoch-time in milliseconds allowing to retrieve builds for which Develocity completed receiving and processing the build after this instant.
This parameter can only be used with `reverse=false`.
Therefore, a value of `0` will process all builds.
If not provided, the time in milliseconds when the request is received by the Develocity instance will be used.
This parameter has no effect if any of `sinceBuild`, `fromInstant`, `fromBuild` are used.
'
deprecated: true
sinceBuild:
type: string
nullable: true
description: '**This parameter is deprecated, use `fromBuild` instead.**
A Build Scan ID allowing to retrieve builds for which Develocity completed receiving and processing after the given Build Scan ID (excluding it).
This parameter can only be used with `reverse=false`.
This parameter has precedence over any value set for the `since` parameter.
A valid Build Scan ID must be provided, that is, a Build Scan ID that exists in the Develocity instance.
A Build Scan ID for a deleted build is valid.
This parameter has no effect if any of `fromInstant`, `fromBuild` are used.
'
deprecated: true
skipUnavailableModels:
type: boolean
default: false
description: 'Will skip build models that are not available at the time of the handling of the call.
'
get:
operationId: GetBuilds
summary: Get a list of builds with common attributes.
description: 'The contained attributes are build tool agnostic.
If none of `fromInstant`, `fromBuild`, or `reverse` is used, when making a request to this endpoint, it will return builds that were received and processed by Develocity after the request was made.
'
tags:
- GradleEnterprise
responses:
'200':
description: A list of builds with common attributes.
content:
application/json:
schema:
$ref: '#/components/schemas/Builds'
example:
- id: 9r4d13f0r3v3r
availableAt: 1635400481000
buildToolType: gradle
buildToolVersion: '7.2'
buildAgentVersion: 3.7.1
models:
gradleAttributes:
model:
id: 9r4d13f0r3v3r
buildStartTime: 1637316480
buildDuration: 5000
gradleVersion: '7.3'
pluginVersion: 3.7.2
rootProjectName: example-project
requestedTasks:
- clean
- build
hasFailed: true
hasVerificationFailure: true
hasNonVerificationFailure: true
tags:
- CI
- feature-branch
values:
- name: branch
value: feature/one
- name: commitId
value: c874006021712affa4e7bd82d2ec4cd06beaa4f5
links:
- label: CI job
url: https://ci.com/job1
- label: GIT commit
url: https://git.com/c874006021712affa4e7bd82d2ec4cd06beaa4f5
gradleEnterpriseSettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
develocitySettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
fileFingerprintCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
buildOptions:
buildCacheEnabled: true
configurationCacheEnabled: true
configurationOnDemandEnabled: true
continuousBuildEnabled: true
continueOnFailureEnabled: true
daemonEnabled: true
dryRunEnabled: true
excludedTasks:
- takesALongTime
- doesNotLikeToBeExecuted
fileSystemWatchingEnabled: true
maxNumberOfGradleWorkers: 4
offlineModeEnabled: true
parallelProjectExecutionEnabled: true
refreshDependenciesEnabled: true
rerunTasksEnabled: true
environment:
username: gradle
operatingSystem: macOS 12.2.1 (x86_64)
numberOfCpuCores: 16
jreVersion: AdoptOpenJDK OpenJDK Runtime Environment 11.0.11+9
jvmVersion: AdoptOpenJDK OpenJDK 64-Bit Server VM 11.0.11+9 (mixed mode)
jvmMaxMemoryHeapSize: 16777216
jvmCharset: UTF-8
jvmLocale: English (United States)
publicHostname: agent.gradle.com
localHostname: gradle
localIpAddresses:
- 192.168.1.126
- 192.168.1.128
gradleDependencies:
model:
dependencies:
- scheme: pkg
type: maven
namespace: org.apache.xmlgraphics
name: batik-anim
version: 1.9.1
qualifiers:
repository_url: https://repo.maven.apache.org/maven2/
purl: pkg:maven/org.apache.xmlgraphics/batik-anim@1.9.1?repository_url=https%3A%2F%2Frepo.maven.apache.org%2Fmaven2%2F
repository:
url: https://repo.maven.apache.org/maven2/
type: maven
resolutionSource: remote
mavenAttributes:
problem:
type: urn:gradle:enterprise:api:problems:build-model-not-applicable
title: Build model is not applicable.
detail: Build model is not available for build with ID '9r4d13f0r3v3r' because its build tool type is 'gradle' (allowed list is '[maven]').
status: 400
- id: ji7vz3ey5qdvk
availableAt: 1635400482000
buildToolType: maven
buildToolVersion: 3.8.4
buildAgentVersion: '1.13'
models:
gradleAttributes:
problem:
type: urn:gradle:enterprise:api:problems:build-model-not-applicable
title: Build model is not applicable.
detail: Build model is not available for build with ID 'ji7vz3ey5qdvk' because its build tool type is 'maven' (allowed list is '[gradle]').
status: 400
mavenAttributes:
model:
id: 9r4d13f0r3v3r
buildStartTime: 1637316480
buildDuration: 11000
mavenVersion: 3.8.4
extensionVersion: 1.11.1
topLevelProjectName: example-project
requestedGoals:
- clean
- verify
hasFailed: true
hasVerificationFailure: true
hasNonVerificationFailure: true
tags:
- CI
- feature-branch
values:
- name: branch
value: feature/one
- name: commitId
value: c874006021712affa4e7bd82d2ec4cd06beaa4f5
links:
- label: CI job
url: https://ci.com/job1
- label: GIT commit
url: https://git.com/c874006021712affa4e7bd82d2ec4cd06beaa4f5
develocitySettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
fileFingerprintCapturingEnabled: true
goalInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
buildOptions:
batchModeEnabled: true
debugEnabled: true
errorsEnabled: true
failAtEndEnabled: true
failFastEnabled: true
failNeverEnabled: true
laxChecksumsEnabled: true
maxNumberOfThreads: 4
nonRecursiveEnabled: true
noSnapshotsUpdatesEnabled: true
offlineModeEnabled: true
quietEnabled: true
rerunGoals: false
strictChecksumsEnabled: true
updateSnapshotsEnabled: true
environment:
username: maven
operatingSystem: macOS 12.2.1 (x86_64)
numberOfCpuCores: 16
jreVersion: AdoptOpenJDK OpenJDK Runtime Environment 11.0.11+9
jvmVersion: AdoptOpenJDK OpenJDK 64-Bit Server VM 11.0.11+9 (mixed mode)
jvmMaxMemoryHeapSize: 16777216
jvmCharset: UTF-8
jvmLocale: English (United States)
publicHostname: agent.gradle.com
localHostname: maven
localIpAddresses:
- 192.168.1.126
- 192.168.1.128
gradleEnterpriseSettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
goalInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
mavenDependencies:
model:
dependencies:
- scheme: pkg
type: maven
namespace: org.apache.xmlgraphics
name: batik-anim
version: 1.9.1
qualifiers:
repository_url: https://repo.maven.apache.org/maven2/
type: jar
purl: pkg:maven/org.apache.xmlgraphics/batik-anim@1.9.1?repository_url=https%3A%2F%2Frepo.maven.apache.org%2Fmaven2%2F&type=jar
repository:
url: https://repo.maven.apache.org/maven2/
type: maven
resolutionSource: remote
- id: cvpd4j7ug7j4q
availableAt: 1635400483000
buildToolType: bazel
buildToolVersion: 6.0.0
buildAgentVersion: '1.0'
models:
gradleAttributes:
problem:
type: urn:gradle:enterprise:api:problems:build-model-not-applicable
title: Build model is not applicable.
detail: Build model is not available for build with ID 'cvpd4j7ug7j4q' because its build tool type is 'bazel' (allowed list is '[gradle]').
status: 400
mavenAttributes:
problem:
type: urn:gradle:enterprise:api:problems:build-model-not-applicable
title: Build model is not applicable.
detail: Build model is not available for build with ID 'cvpd4j7ug7j4q' because its build tool type is 'bazel' (allowed list is '[maven]').
status: 400
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the common attributes of a build.
schema:
$ref: '#/components/schemas/BuildQuery'
get:
operationId: GetBuild
summary: Get the common attributes of a build.
description: The contained attributes are build tool agnostic.
tags:
- GradleEnterprise
responses:
'200':
description: The common attributes of a build.
content:
application/json:
schema:
$ref: '#/components/schemas/Build'
example:
id: 9r4d13f0r3v3r
availableAt: 1635400481000
buildToolType: gradle
buildToolVersion: '7.2'
buildAgentVersion: 3.7.1
models:
gradleAttributes:
model:
id: 9r4d13f0r3v3r
buildStartTime: 1637316480
buildDuration: 5000
gradleVersion: '7.3'
pluginVersion: 3.7.2
rootProjectName: example-project
requestedTasks:
- clean
- build
hasFailed: true
hasVerificationFailure: true
hasNonVerificationFailure: true
tags:
- CI
- feature-branch
values:
- name: branch
value: feature/one
- name: commitId
value: c874006021712affa4e7bd82d2ec4cd06beaa4f5
links:
- label: CI job
url: https://ci.com/job1
- label: GIT commit
url: https://git.com/c874006021712affa4e7bd82d2ec4cd06beaa4f5
develocitySettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
fileFingerprintCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
buildOptions:
buildCacheEnabled: true
configurationCacheEnabled: true
configurationOnDemandEnabled: true
continuousBuildEnabled: true
continueOnFailureEnabled: true
daemonEnabled: true
dryRunEnabled: true
excludedTasks:
- takesALongTime
- doesNotLikeToBeExecuted
fileSystemWatchingEnabled: true
maxNumberOfGradleWorkers: 4
offlineModeEnabled: true
parallelProjectExecutionEnabled: true
refreshDependenciesEnabled: true
rerunTasksEnabled: true
environment:
username: gradle
operatingSystem: macOS 12.2.1 (x86_64)
numberOfCpuCores: 16
jreVersion: AdoptOpenJDK OpenJDK Runtime Environment 11.0.11+9
jvmVersion: AdoptOpenJDK OpenJDK 64-Bit Server VM 11.0.11+9 (mixed mode)
jvmMaxMemoryHeapSize: 16777216
jvmCharset: UTF-8
jvmLocale: English (United States)
publicHostname: agent.gradle.com
localHostname: gradle
localIpAddresses:
- 192.168.1.126
- 192.168.1.128
gradleEnterpriseSettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
gradleDependencies:
model:
dependencies:
- scheme: pkg
type: maven
namespace: org.apache.xmlgraphics
name: batik-anim
version: 1.9.1
qualifiers:
repository_url: https://repo.maven.apache.org/maven2/
purl: pkg:maven/org.apache.xmlgraphics/batik-anim@1.9.1?repository_url=https%3A%2F%2Frepo.maven.apache.org%2Fmaven2%2F
repository:
url: https://repo.maven.apache.org/maven2/
type: maven
resolutionSource: remote
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/bazel-attributes:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the attributes of a Bazel build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetBazelAttributes
summary: Get the attributes of a Bazel build.
description: This model is Bazel specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The attributes of a Bazel build.
content:
application/json:
schema:
$ref: '#/components/schemas/BazelAttributes'
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/bazel-critical-path:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the critical path of a Bazel build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetBazelCriticalPath
summary: Get the critical path of a Bazel build.
description: This model is Bazel specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The critical path of a Bazel build.
content:
application/json:
schema:
$ref: '#/components/schemas/BazelCriticalPath'
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-attributes:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the attributes of a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleAttributes
summary: Get the attributes of a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The attributes of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleAttributes'
example:
id: 9r4d13f0r3v3r
buildStartTime: 1637316480
buildDuration: 5000
gradleVersion: '7.3'
pluginVersion: 3.7.2
rootProjectName: example-project
requestedTasks:
- clean
- build
hasFailed: true
hasVerificationFailure: true
hasNonVerificationFailure: true
tags:
- CI
- feature-branch
values:
- name: branch
value: feature/one
- name: commitId
value: c874006021712affa4e7bd82d2ec4cd06beaa4f5
links:
- label: CI job
url: https://ci.com/job1
- label: GIT commit
url: https://git.com/c874006021712affa4e7bd82d2ec4cd06beaa4f5
develocitySettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
fileFingerprintCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
buildOptions:
buildCacheEnabled: true
configurationCacheEnabled: true
configurationOnDemandEnabled: true
continuousBuildEnabled: true
continueOnFailureEnabled: true
daemonEnabled: true
dryRunEnabled: true
excludedTasks:
- takesALongTime
- doesNotLikeToBeExecuted
fileSystemWatchingEnabled: true
maxNumberOfGradleWorkers: 4
offlineModeEnabled: true
parallelProjectExecutionEnabled: true
refreshDependenciesEnabled: true
rerunTasksEnabled: true
environment:
username: gradle
operatingSystem: macOS 12.2.1 (x86_64)
numberOfCpuCores: 16
jreVersion: AdoptOpenJDK OpenJDK Runtime Environment 11.0.11+9
jvmVersion: AdoptOpenJDK OpenJDK 64-Bit Server VM 11.0.11+9 (mixed mode)
jvmMaxMemoryHeapSize: 16777216
jvmCharset: UTF-8
jvmLocale: English (United States)
publicHostname: agent.gradle.com
localHostname: gradle
localIpAddresses:
- 192.168.1.126
- 192.168.1.128
gradleEnterpriseSettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
taskInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-build-cache-performance:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the build cache performance of a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleBuildCachePerformance
summary: Get the build cache performance of a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The build cache performance of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleBuildCachePerformance'
example:
id: 9r4d13f0r3v3r
buildTime: 5000
effectiveTaskExecutionTime: 5000
effectiveWorkUnitExecutionTime: 5000
serialTaskExecutionTime: 10000
serialWorkUnitExecutionTime: 10000
serializationFactor: 2
taskExecution:
- taskPath: :task
taskType: org.gradle.api.tasks.Task
avoidanceOutcome: avoided_from_local_cache
duration: 5000
fingerprintingDuration: 5
avoidanceSavings: 6000
cacheArtifactSize: 3000
hasFailed: false
- taskPath: :task2
taskType: org.gradle.api.tasks.Task
avoidanceOutcome: avoided_from_remote_cache
duration: 3000
fingerprintingDuration: 3
avoidanceSavings: 4000
cacheArtifactSize: 3000
hasFailed: false
- taskPath: :task3
taskType: org.gradle.api.tasks.Task
avoidanceOutcome: executed_not_cacheable
duration: 2000
fingerprintingDuration: 6
nonCacheabilityCategory: cache-if_condition_not_matched
nonCacheabilityReason: '''Task outputs cacheable'' not satisfied'
hasFailed: false
- taskPath: :task4
taskType: org.gradle.api.tasks.Task
avoidanceOutcome: skipped
duration: 0
fingerprintingDuration: 0
skipReasonMessage: some skip reason message
hasFailed: false
taskFingerprintingSummary:
count: 1
serialDuration: 8
workUnitFingerprintingSummary:
count: 5
serialDuration: 20
avoidanceSavingsSummary:
total: 10000
ratio: 0.55556
upToDate: 0
localBuildCache: 6000
remoteBuildCache: 4000
taskAvoidanceSavingsSummary:
total: 10000
ratio: 0.55556
upToDate: 0
localBuildCache: 6000
remoteBuildCache: 4000
workUnitAvoidanceSavingsSummary:
total: 20000
ratio: 0.75556
upToDate: 1
localBuildCache: 9000
remoteBuildCache: 2000
buildCaches:
local:
isEnabled: true
isPushEnabled: true
isDisabledDueToError: false
remote:
type: HTTP
className: org.example.MyBuildCache
isEnabled: true
isPushEnabled: true
isDisabledDueToError: false
overhead:
uploading: 100
downloading: 200
packing: 50
unpacking: 25
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-build-profile-overview:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the performance profile overview of a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleBuildProfileOverview
summary: Get the performance profile overview of a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The performance profile overview of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleBuildProfileOverview'
example:
breakdown:
total: 15465
initialization: 5460
configuration: 5000
execution: 2505
endOfBuild: 2500
memoryUsage:
totalGarbageCollectionTime: 12548
memoryPools:
- name: PS Eden Space
maxMemory: 1073741824
peakMemory: 536870912
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-configuration-cache:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the configuration cache information for a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleConfigurationCache
summary: Get the configuration cache information for a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The configuration cache result of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleConfigurationCache'
example:
result:
outcome: MISS
entrySize: 1254385
checkFingerprintDuration: 10
dependencyResolutionDuration: 100
store:
duration: 200
hasFailed: false
load:
duration: 500
hasFailed: false
missReasons:
- no cached configuration was available
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-projects:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the build structure of a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleProjects
summary: Get the projects of a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The projects of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleProjects'
example:
- name: root project
path: ':'
- name: sub project
path: :sub
parent: 0
- name: included build root project
path: :included
- name: included build sub project
path: :included:sub
parent: 2
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/gradle-test-performance:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the attributes of a Gradle build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetGradleTestPerformance
summary: Get test performance-related metrics of a Gradle build.
description: This model is Gradle specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: Test performance-related metrics of a Gradle build.
content:
application/json:
schema:
$ref: '#/components/schemas/GradleTestPerformance'
example:
tests:
testClassesCount: 20
serialTestTasksExecutionTime: 7000
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
testDistribution:
usageStatus: enabled
wallClockSavings: 850
wallClockSavings: 1250
testTasks:
- taskPath: :proj1:test
taskType: org.gradle.api.tasks.testing.Test
wallClockExecutionTime: 2000
serialExecutionTime: 3000
tests:
failedTestClassesCount: 5
testClassesCount: 10
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
nonSelectedTestClassesCount: 1
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
testDistribution:
usageStatus: enabled
wallClockSavings: 850
remoteTestClassesCount: 3
wallClockSavings: 1250
- taskPath: :proj2:test
taskType: org.gradle.api.tasks.testing.Test
wallClockExecutionTime: 3000
serialExecutionTime: 4000
tests:
failedTestClassesCount: 5
testClassesCount: 10
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
nonSelectedTestClassesCount: 1
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
testDistribution:
usageStatus: enabled
wallClockSavings: 850
remoteTestClassesCount: 3
wallClockSavings: 1250
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/maven-attributes:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the attributes of a Maven build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetMavenAttributes
summary: Get the attributes of a Maven build.
description: This model is Maven specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The attributes of a Maven build.
content:
application/json:
schema:
$ref: '#/components/schemas/MavenAttributes'
example:
id: 9r4d13f0r3v3r
buildStartTime: 1637316480
buildDuration: 11000
mavenVersion: 3.8.4
extensionVersion: 1.11.1
topLevelProjectName: example-project
requestedGoals:
- clean
- verify
hasFailed: true
hasVerificationFailure: true
hasNonVerificationFailure: true
tags:
- CI
- feature-branch
values:
- name: branch
value: feature/one
- name: commitId
value: c874006021712affa4e7bd82d2ec4cd06beaa4f5
links:
- label: CI job
url: https://ci.com/job1
- label: GIT commit
url: https://git.com/c874006021712affa4e7bd82d2ec4cd06beaa4f5
develocitySettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
fileFingerprintCapturingEnabled: true
goalInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
buildOptions:
batchModeEnabled: true
debugEnabled: true
errorsEnabled: true
failAtEndEnabled: true
failFastEnabled: true
failNeverEnabled: true
laxChecksumsEnabled: true
maxNumberOfThreads: 4
nonRecursiveEnabled: true
noSnapshotsUpdatesEnabled: true
offlineModeEnabled: true
quietEnabled: true
rerunGoals: false
strictChecksumsEnabled: true
updateSnapshotsEnabled: true
environment:
username: maven
operatingSystem: macOS 12.2.1 (x86_64)
numberOfCpuCores: 16
jreVersion: AdoptOpenJDK OpenJDK Runtime Environment 11.0.11+9
jvmVersion: AdoptOpenJDK OpenJDK 64-Bit Server VM 11.0.11+9 (mixed mode)
jvmMaxMemoryHeapSize: 16777216
jvmCharset: UTF-8
jvmLocale: English (United States)
publicHostname: agent.gradle.com
localHostname: maven
localIpAddresses:
- 192.168.1.126
- 192.168.1.128
gradleEnterpriseSettings:
backgroundPublicationEnabled: true
buildOutputCapturingEnabled: true
goalInputsFileCapturingEnabled: true
testOutputCapturingEnabled: true
resourceUsageCapturingEnabled: true
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/maven-build-cache-performance:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the build cache performance of a Maven build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetMavenBuildCachePerformance
summary: Get the build cache performance of a Maven build.
description: This model is Maven specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The build cache performance of a Maven build.
content:
application/json:
schema:
$ref: '#/components/schemas/MavenBuildCachePerformance'
example:
id: 9r4d13f0r3v3r
buildTime: 5000
effectiveProjectExecutionTime: 5000
serialProjectExecutionTime: 10000
serializationFactor: 2
goalExecution:
- goalName: clean:clean
mojoType: org.apache.maven.plugin.jar.JarMojo
goalExecutionId: default-clean
goalProjectName: myproject
avoidanceOutcome: executed_not_cacheable
duration: 2000
nonCacheabilityCategory: build_cache_disabled_by_user
nonCacheabilityReason: Neither the local or remote build cache were enabled in the configuration of the build.
hasFailed: false
- goalName: compiler:compile
mojoType: org.apache.maven.plugin.jar.JarMojo
goalExecutionId: default-compile
goalProjectName: myproject
avoidanceOutcome: avoided_from_local_cache
duration: 5000
fingerprintingDuration: 5
avoidanceSavings: 6000
cacheArtifactSize: 3000
hasFailed: false
- goalName: compiler:compile
mojoType: org.apache.maven.plugin.jar.JarMojo
goalExecutionId: default-compile
goalProjectName: myproject2
avoidanceOutcome: avoided_from_remote_cache
duration: 3000
fingerprintingDuration: 3
avoidanceSavings: 4000
cacheArtifactSize: 3000
hasFailed: false
goalFingerprintingSummary:
count: 1
serialDuration: 8
avoidanceSavingsSummary:
total: 10000
ratio: 0.55556
localBuildCache: 6000
remoteBuildCache: 4000
buildCaches:
local:
isEnabled: true
isDisabledDueToError: false
remote:
isEnabled: true
isPushEnabled: true
isDisabledDueToError: false
overhead:
uploading: 100
downloading: 200
packing: 50
unpacking: 25
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/maven-build-profile-overview:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the performance profile overview of a Maven build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetMavenBuildProfileOverview
summary: Get the performance profile overview of a Maven build.
description: This model is Maven specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The performance profile overview of a Maven build.
content:
application/json:
schema:
$ref: '#/components/schemas/MavenBuildProfileOverview'
example:
breakdown:
total: 15465
initializationAndDiscovery:
total: 5860
settings: 5000
toolchains: 460
other: 400
execution:
total: 3000
goalExecution: 500
endOfBuild: 2500
memoryUsage:
totalGarbageCollectionTime: 12548
memoryPools:
- name: PS Eden Space
maxMemory: 1073741824
peakMemory: 536870912
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/maven-modules:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the build structure of a Maven build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetMavenModules
summary: Get the modules of a Maven build.
description: This model is Maven specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: The modules of a Maven build.
content:
application/json:
schema:
$ref: '#/components/schemas/MavenModules'
example:
- name: top level project
groupId: com
artifactId: top-level
version: '1.0'
- name: sub project a
groupId: com
artifactId: sub-a
version: '1.1'
parent: 0
- name: sub project b
groupId: com
artifactId: sub-b
version: '2.0'
parent: 0
- name: sub project a 2
groupId: com
artifactId: sub-a-a
version: 2.1-SNAPSHOT
parent: 1
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/builds/{id}/maven-test-performance:
parameters:
- in: path
name: id
schema:
type: string
required: true
description: The Build Scan ID.
- in: query
name: BuildQuery
explode: true
description: The query parameters used to retrieve the attributes of a Maven build.
schema:
$ref: '#/components/schemas/BuildModelQuery'
get:
operationId: GetMavenTestPerformance
summary: Get test performance-related metrics of a Maven build.
description: This model is Maven specific and cannot be requested for another build tool.
tags:
- GradleEnterprise
responses:
'200':
description: Test performance-related metrics of a Maven build.
content:
application/json:
schema:
$ref: '#/components/schemas/MavenTestPerformance'
example:
tests:
testClassesCount: 20
serialTestGoalsExecutionTime: 7000
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
workUnitFailuresPredictedCount: 30
workUnitFailuresMissedCount: 40
avoidableTestClassesCount: 50
unavoidableTestClassesCount: 60
testClassesCountSelectedDueToInsufficientData: 70
testDistribution:
usageStatus: enabled
wallClockSavings: 850
wallClockSavings: 1250
testGoals:
- goalPath: surefire:test
goalType: org.apache.maven.plugin.surefire.SurefireMojo
wallClockExecutionTime: 2000
serialExecutionTime: 3000
tests:
failedTestClassesCount: 5
testClassesCount: 10
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
nonSelectedTestClassesCount: 1
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
testDistribution:
usageStatus: enabled
wallClockSavings: 850
remoteTestClassesCount: 3
wallClockSavings: 1250
- goalPath: failsafe:test
goalType: org.apache.maven.plugin.failsafe.IntegrationTestMojo
wallClockExecutionTime: 3000
serialExecutionTime: 4000
tests:
failedTestClassesCount: 5
testClassesCount: 10
testAcceleration:
predictiveTestSelection:
usage:
status: enabled
selectionMode: relevant
wallClockSavings: 750
serialTimeSavings: 750
nonSelectedTestClassesCount: 1
simulation:
conservative:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
standard:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
fast:
wallClockSavingsPotential: 10
serialTimeSavingsPotential: 20
avoidableTestClassesCount: 30
unavoidableTestClassesCount: 40
testClassesCountSelectedDueToInsufficientData: 50
failedTestClassesPredictedCount: 60
testDistribution:
usageStatus: enabled
wallClockSavings: 850
remoteTestClassesCount: 3
wallClockSavings: 1250
'400':
$ref: '#/components/responses/BadRequestError'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
'503':
$ref: '#/components/responses/NotReadyError'
/api/project-groups:
get:
operationId: ListProjectGroups
summary: Lists access control project groups.
description: '**Beta:** Returns a list of all project groups configured for project-level access control.
If there are a lot of project groups, then all pages will need to be retrieved in order to retrieve the full list of project groups.
The default number of project groups per page is 100.
'
tags:
- GradleEnterprise
parameters:
- in: query
name: PageQuery
explode: true
description: The page to fetch.
schema:
$ref: '#/components/schemas/PageQuery'
responses:
'200':
description: A list of project groups configured for project-level access control.
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectGroupsPage'
example:
content:
- id: some-project-group
displayName: Some Project Group
description: An example project group
projects:
- id: some-project
- id: another-project
- id: another-project-group
displayName: Another Project Group
description: Another example project group
projects:
- id: another-project
page:
number: 1
size: 50
totalPages: 4
totalElements: 151
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/project-groups/{projectGroupId}:
parameters:
- in: path
name: projectGroupId
example: a-project-group
schema:
$ref: '#/components/schemas/ProjectGroupId'
required: true
description: The ID of the project group configured for project-level access control.
get:
operationId: GetProjectGroup
summary: Get an access control project group.
description: '**Beta:** Gets a specific project group configured for project-level access control.
'
tags:
- GradleEnterprise
responses:
'200':
description: The requested project group configured for project-level access control.
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectGroup'
example:
id: some-project-group
displayName: Some Project Group
description: An example project group
projects:
- id: some-project
- id: another-project
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
put:
operationId: CreateOrUpdateProjectGroup
summary: Create or update an access control project group.
description: '**Beta:** Create or update a project group configured for project-level access control in Develocity.
When updating, any optional fields that are omitted from the request, but were previously set on the project group, will be unset/removed.
An existing project group''s identifier cannot be updated.
If the update contains a id that does not match the current id, then the operation will fail with a Bad Request response.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectGroup'
example:
id: some-project-group
displayName: Some Project Group
description: An example project group
projects:
- id: some-project
- id: another-project
responses:
'200':
description: The project group was created or updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectGroup'
example:
id: some-project-group
displayName: Some Project Group
description: An example project group
projects:
- id: some-project
- id: another-project
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
delete:
operationId: DeleteProjectGroup
summary: Delete an access control project group.
description: '**Beta:** Delete a project group configured for project-level access control in Develocity.
'
tags:
- GradleEnterprise
responses:
'200':
description: The projectId referenced an existing project group and it was deleted.
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/projects:
get:
operationId: ListProjects
summary: Lists access control projects.
description: '**Beta:** Returns a paged list of projects configured for project-level access control.
If there are a lot of projects, then all pages will need to be retrieved in order to retrieve the full list of projects.
The default number of projects per page is 1,000.
'
tags:
- GradleEnterprise
parameters:
- in: query
name: PageQuery
explode: true
description: The page to fetch.
schema:
$ref: '#/components/schemas/PageQuery'
responses:
'200':
description: A list of projects configured for project-level access control in Develocity.
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectsPage'
example:
content:
- id: some-project
displayName: Some Project
description: An example project
- id: another-project
displayName: Another Project
description: Another example project
page:
number: 1
size: 100
totalPages: 4
totalElements: 351
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/projects/{projectId}:
parameters:
- in: path
name: projectId
example: a-project
schema:
$ref: '#/components/schemas/ProjectId'
required: true
description: The ID of the access control project.
get:
operationId: GetProject
summary: Get an access control project.
description: '**Beta:** Gets a specific project configured for project-level access control.
'
tags:
- GradleEnterprise
responses:
'200':
description: The requested project configured for project-level access control.
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
example:
id: some-project
displayName: Some Project
description: An example project
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
put:
operationId: CreateOrUpdateProject
summary: Create or update an access control project.
description: '**Beta:** Create or update a project configured for project-level access control in Develocity.
When updating, any optional fields that are omitted from the request, but were previously set on the project, will be unset/removed.
An existing project''s identifier cannot be updated.
If the update contains a id that does not match the current id, then the operation will fail with a Bad Request response.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
example:
id: some-project
displayName: Some Project
description: An example project
responses:
'200':
description: The project was created or updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
example:
id: some-project
displayName: Some Project
description: An example project
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/test-distribution/agent-pools:
get:
operationId: ListTestDistributionAgentPools
summary: Lists Agent Pools.
description: Returns a list of all Agent Pools.
tags:
- GradleEnterprise
responses:
'200':
description: The response contains a listing of all Agent Pools.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolPage'
example:
content:
- id: m4yfaq4a
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
- id: dwc4whvi
name: def-agents-pool
minimumSize: 0
maximumSize: 10
capabilities:
- os=windows
- jdk=11
orderIndex: 2
restrictAccessToProjectGroups: true
projectGroupIds:
- project-group-a
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
post:
operationId: CreateTestDistributionAgentPool
summary: Create an Agent Pool.
description: 'Create a new Agent Pool in Develocity.
The orderIndex element is optional and can be used to specify the priority order in which the Agent Pool is considered.
When not specified, the Agent Pool will be added last.
When specified, the Agent Pool will be added at the specified index and all other Agent Pools will be moved down.
If the specified index is out of bounds, the Agent Pool will be added last with the orderIndex adjusted accordingly.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolConfiguration'
example:
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
responses:
'200':
description: A new Agent Pool was created with the configuration specified in the request.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolConfigurationWithId'
example:
id: m4yfaq4a
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/test-distribution/agent-pools/{poolId}:
parameters:
- in: path
name: poolId
example: m4yfaq4a
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
required: true
description: The ID of the pool to view.
get:
operationId: GetTestDistributionAgentPool
summary: View the properties of an Agent Pool
description: View the identifier, capabilities and size of an Agent Pool.
tags:
- GradleEnterprise
responses:
'200':
description: The poolId referenced an existing Agent Pool whose configuration is described in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolConfigurationWithId'
example:
id: m4yfaq4a
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
put:
operationId: CreateOrUpdateTestDistributionAgentPool
summary: Create or update an Agent Pool.
description: 'Create a new Agent Pool in Develocity or update the configuration of an existing one.
The orderIndex element is optional and can be used to specify the priority order in which the Agent Pool is considered.
When not specified, the Agent Pool will be either added last on creation, or will not change position on update.
When specified, the Agent Pool will be added at/moved to the specified index and all other Agent Pools will be moved down.
If the specified index is out of bounds, the Agent Pool will be added last with the orderIndex adjusted accordingly.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolConfiguration'
example:
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
responses:
'200':
description: The Agent Pool was created or its configuration was updated successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolConfigurationWithId'
example:
id: m4yfaq4a
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
capabilities:
- os=linux
- jdk=11
- team-abc
orderIndex: 1
restrictAccessToProjectGroups: false
projectGroupIds: []
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
delete:
operationId: DeleteTestDistributionAgentPool
summary: Delete an Agent Pool.
description: Delete an existing Agent Pool.
tags:
- GradleEnterprise
responses:
'200':
description: The poolId referenced an existing Agent Pool and it was deleted.
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/test-distribution/agent-pools/{poolId}/registration-keys:
parameters:
- in: path
name: poolId
example: m4yfaq4a
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
required: true
description: The ID of the pool to view.
get:
operationId: ListTestDistributionAgentPoolRegistrationKeys
summary: Lists Test Distribution pool-specific agent registration keys.
description: Returns a list of all Test Distribution pool-specific agent registration key prefixes.
tags:
- GradleEnterprise
responses:
'200':
description: The response contains a listing of the requested type of (active or revoked) Test Distribution pool-specific agent registration key.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKeyPrefixPage'
example:
content:
- keyPrefix: am3mbm5kamztbmrmygym5kamct
createdAt: '2021-01-01T12:59:59Z'
lastUsedAt: '2021-05-03T10:11:02Z'
lastUsedBy: agent1.localhost
- keyPrefix: yw3zbwjtnwthbxp3ym6ybxlnew
createdAt: '2021-04-20T13:21:43Z'
revokedAt: '2022-10-12T11:22:33Z'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
post:
operationId: GenerateTestDistributionAgentPoolRegistrationKey
summary: Generate a new Test Distribution pool-specific agent registration key.
description: Generate a new Test Distribution pool-specific agent registration key to connect agents and query the agent pool API.
tags:
- GradleEnterprise
requestBody:
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKeyDescription'
example:
description: Created by user-x for testing
responses:
'200':
description: A new registration key was successfully generated and contained in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKey'
example:
key: 46rhyue2hltfwcx36qw7gad74lar4f2clb6a4qo5a433zzx7aqwq
description: Created by user-x for testing
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/test-distribution/agent-pools/{poolId}/registration-keys/{keyPrefix}:
parameters:
- in: path
name: poolId
example: m4yfaq4a
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
required: true
description: The ID of the pool to view.
- in: path
name: keyPrefix
example: riux3fkajs6ivtajxbrunelywk
schema:
type: string
minLength: 26
maxLength: 26
pattern: ^[a-z2-7]{26}$
required: true
description: The prefix of the Test Distribution pool-specific agent registration key.
get:
operationId: GetTestDistributionAgentPoolRegistrationKey
summary: Get a Test Distribution pool-specific agent registration keyPrefix information.
description: Returns information about a Test Distribution pool-specific agent registration keyPrefix.
tags:
- GradleEnterprise
responses:
'200':
description: The response contains information about the requested Test Distribution pool-specific agent registration keyPrefix.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKeyPrefix'
example:
keyPrefix: am3mbm5kamztbmrmygym5kamct
description: Created by user-x for testing
createdAt: '2021-01-01T12:59:59Z'
lastUsedAt: '2021-05-03T10:11:02Z'
lastUsedBy: agent1.localhost
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
put:
operationId: InsertTestDistributionAgentPoolRegistrationKey
summary: Insert a specific Test Distribution pool-specific agent registration key.
description: 'Inserts a specific Test Distribution pool-specific agent registration key to connect agents and query the agent pool API.
If a key with the same prefix but different key already exists (regardless of which pool it belongs to), it will return 400.
'
tags:
- GradleEnterprise
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKey'
example:
key: 46rhyue2hltfwcx36qw7gad74lar4f2clb6a4qo5a433zzx7aqwq
description: Created by user-x for testing
responses:
'200':
description: The registration key was successfully inserted.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKeyPrefix'
example:
keyPrefix: am3mbm5kamztbmrmygym5kamct
description: Created by user-x for testing
createdAt: '2021-01-01T12:59:59Z'
lastUsedAt: '2021-05-03T10:11:02Z'
lastUsedBy: agent1.localhost
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
delete:
operationId: RevokeTestDistributionAgentPoolRegistrationKey
summary: Revoke a Test Distribution pool-specific agent registration key.
description: 'Revoke the Test Distribution pool-specific agent registration key for the given prefix which uniquely identifies a Test Distribution pool-specific agent registration key.
A revoked key can no longer be used to connect agents, but it will still be queryable and returned in the list.
'
tags:
- GradleEnterprise
responses:
'200':
description: The registration key was revoked successfully.
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/test-distribution/agent-pools/{poolId}/status:
parameters:
- in: path
name: poolId
example: m4yfaq4a
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
required: true
description: The ID of the pool to view.
get:
operationId: GetTestDistributionAgentPoolStatus
summary: View the status of an Agent Pool
description: 'View the status of an Agent Pool, such as its current size.
To access this endpoint the user requires the `Test Distribution` permission.
'
tags:
- GradleEnterprise
responses:
'200':
description: The poolId referenced an existing Agent Pool whose status is described in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/TestDistributionAgentPoolStatus'
example:
id: m4yfaq4a
name: abc-agents-pool
minimumSize: 10
maximumSize: 20
connectedAgents: 15
idleAgents: 5
desiredAgents: 10
'403':
$ref: '#/components/responses/ForbiddenError'
'404':
$ref: '#/components/responses/UnauthorizedOrNotFoundError'
/api/version:
get:
operationId: GetVersion
summary: Provides the version of Develocity.
description: This endpoint can be accessed by any authenticated user.
tags:
- GradleEnterprise
responses:
'200':
$ref: '#/components/responses/SuccessfulVersionResponse'
'404':
$ref: '#/components/responses/NotFoundError'
'500':
$ref: '#/components/responses/UnexpectedError'
components:
schemas:
GradleBuildCachePerformanceWorkUnitFingerprintingSummary:
type: object
description: A summary of task and artifact transform fingerprinting. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `2.1`.
nullable: true
required:
- count
- serialDuration
properties:
count:
type: integer
description: Count of fingerprinted work units.
serialDuration:
type: integer
format: int64
description: Sum of all fingerprinting times of fingerprinted work units in milliseconds.
TestDistributionAgentPoolId:
description: The unique identifier of the agent pool.
type: string
minLength: 8
maxLength: 8
pattern: ^[a-z2-7]{8}$
MavenBuildInitializationAndDiscoveryTimeBreakdown:
type: object
description: The time breakdown of the initialization and discovery phase of a Maven build.
required:
- total
- settings
- toolchains
- other
properties:
total:
type: integer
format: int64
description: The elapsed time from the very start of the build to the start of the execution of the first project in milliseconds.
settings:
type: integer
format: int64
description: The elapsed time taken to read the settings of the build in milliseconds.
toolchains:
type: integer
format: int64
description: The elapsed time taken to read the toolchain settings of the build in milliseconds.
projectDiscovery:
type: integer
format: int64
nullable: true
description: The elapsed time taken to discover all projects included in the build in milliseconds. `null` if the build failed before the project discovery phase.
other:
type: integer
format: int64
description: Any other elapsed time between the start of the build and the start of the execution of the first project in milliseconds.
PageQuery:
type: object
properties:
pageNumber:
type: integer
format: int32
description: 'The index of the page to retrieve.
The first page''s index is zero.
'
minimum: 0
default: 0
pageSize:
type: integer
format: in32
description: The maximum number of elements to include in the fetched page.
minimum: 0
MavenBuildExecutionTimeBreakdown:
type: object
description: The time breakdown of the execution phase of a Maven build.
required:
- total
properties:
total:
type: integer
format: int64
description: The elapsed time from the start of the execution of the first project to the end of the build in milliseconds.
goalExecution:
type: integer
format: int64
nullable: true
description: The elapsed time from the start of the execution of the first project to the end of the execution of the last project in milliseconds. `null` if the build failed before the goal execution phase.
endOfBuild:
type: integer
format: int64
nullable: true
description: The elapsed time from the end of the execution of the last project to the end of the build in milliseconds. `null` if the build failed before the end of build phase.
MavenAttributes:
type: object
description: The attributes of a Maven build.
required:
- id
- buildStartTime
- buildDuration
- mavenVersion
- extensionVersion
- requestedGoals
- hasFailed
- tags
- values
- links
- develocitySettings
- buildOptions
- environment
- gradleEnterpriseSettings
properties:
id:
type: string
description: The Build Scan ID.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
mavenVersion:
type: string
description: The Maven version used.
extensionVersion:
type: string
description: The Develocity Maven extension version used.
topLevelProjectName:
type: string
description: The top level project name. `null` in case of very early build failure.
nullable: true
requestedGoals:
type: array
items:
type: string
description: The list of requested goals.
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
hasVerificationFailure:
type: boolean
description: 'Set only if the build fails: true when the build has at least one failure classified as "Verification", false otherwise. The Verification classification is meant for failures that are expected within a standard application development lifecycle. They typically represent a problem with the developer’s inputs to the build such as the source code.
'
hasNonVerificationFailure:
type: boolean
description: 'Set only if the build fails: true when the build has at least one failure classified as "Non-verification", false otherwise. The Non-verification classification is meant for failures that are typically not expected within a standard application development lifecycle, such as build configuration failures, dependency resolution failures, and infrastructure failures.
'
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
develocitySettings:
$ref: '#/components/schemas/MavenDevelocitySettings'
buildOptions:
$ref: '#/components/schemas/MavenBuildOptions'
environment:
$ref: '#/components/schemas/BuildAttributesEnvironment'
gradleEnterpriseSettings:
$ref: '#/components/schemas/MavenGradleEnterpriseSettings'
description: '**This property is deprecated, use `develocitySettings` instead.**
Settings for Develocity.
'
deprecated: true
MavenExtensions:
type: object
properties:
extensions:
type: array
description: A list of applied extensions in a Maven build.
items:
$ref: '#/components/schemas/MavenExtension'
GradleBuildCachePerformanceBuildCacheOverhead:
type: object
description: Information about the build cache overhead in this build.
required:
- uploading
- downloading
- packing
- unpacking
properties:
uploading:
type: integer
format: int64
description: Overhead of upload operations in milliseconds.
downloading:
type: integer
format: int64
description: Overhead of download operations in milliseconds.
packing:
type: integer
format: int64
description: Overhead of pack operations in milliseconds.
unpacking:
type: integer
format: int64
description: Overhead of unpack operations in milliseconds.
MavenRepositoryInstabilitiesRepository:
type: object
description: Dependency network request metrics for a single repository, including error breakdowns.
required:
- url
- networkRequestCount
- networkRequestErrorCount
- serialNetworkRequestTime
- serialNetworkRequestErrorTime
- networkRequestErrorCategories
properties:
url:
type: string
description: The URL of the repository.
networkRequestCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests performed against this repository.
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The number of dependency network requests against this repository that failed.
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests against this repository. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests against this repository that failed. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
networkRequestErrorCategories:
type: array
description: A breakdown of dependency network request errors for this repository by category.
items:
$ref: '#/components/schemas/MavenRepositoryInstabilitiesCategory'
TestPerformanceBuildPredictiveTestSelection:
type: object
description: Predictive Test Selection related data of a build.
required:
- usage
properties:
usage:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelectionUsage'
simulation:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelectionSimulation'
GradleNetworkActivity:
type: object
description: Information about the network activity of the build. It includes network activity during dependency resolution, java toolchain downloads, etc. For a comprehensive list see the Build Scan.
required:
- networkRequestCount
- serialNetworkRequestTime
- fileDownloadSize
- fileDownloadCount
properties:
networkRequestCount:
description: This represents the total count of network requests.
format: int64
type: integer
minimum: 0
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
wallClockNetworkRequestTime:
description: 'The estimate in milliseconds representing the wall clock time spent on network requests during the current build. It is calculated by comparing the critical path within non-execution and execution phases with and without network requests, converted to wall clock time. This is null when Gradle version is lower than 6.2 or the Develocity plugin version is lower than 3.12.
'
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies. It accounts only for the bytes of the files (e.g. POMs, JARs) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files.
methods:
type: object
description: A breakdown of the network activity by HTTP method, when available.
additionalProperties:
$ref: '#/components/schemas/GradleNetworkActivitySubset'
repositories:
type: object
description: 'A breakdown of the network activity by repository URL, when available. This is empty when Gradle version is lower than 4.10, Develocity plugin version is lower than 1.16, or no repositories were captured.
'
additionalProperties:
$ref: '#/components/schemas/GradleNetworkActivitySubset'
repositoryMethods:
type: object
description: A breakdown of the network activity by HTTP method and repository, when available.
additionalProperties:
$ref: '#/components/schemas/GradleNetworkActivitySubset'
NpmDependency:
allOf:
- $ref: '#/components/schemas/CommonDependency'
- type: object
GradleDeprecationEntry:
type: object
required:
- summary
- removalDetails
- usages
properties:
summary:
type: string
description: The description of the deprecation.
removalDetails:
type: string
description: The details about when the deprecated feature will be removed from Gradle.
advice:
type: string
description: The advice on how to avoid using the deprecated feature. `null` when no advice is available.
nullable: true
documentationUrl:
type: string
description: The external url pointing to some documentation about the deprecation. `null` for older Gradle/plugin combination or certain deprecation notices.
nullable: true
usages:
type: array
description: List of usages of this deprecation.
items:
$ref: '#/components/schemas/GradleDeprecationUsage'
GradleConfigurationCacheResult:
type: object
description: The configuration cache result of a Gradle build.
required:
- outcome
- dependencyResolutionDuration
properties:
outcome:
type: string
enum:
- HIT
- MISS
- FAILED
description: "The outcome of the configuration cache operation:\n * `HIT` - There was a configuration cache hit.\n * `MISS` - There was a configuration cache miss.\n * `FAILED` - There was a configuration cache related failure.\n"
entrySize:
type: integer
format: int64
nullable: true
description: The size of the configuration entry in bytes. `null` in case of certain failures or if the entry size was not captured.
checkFingerprintDuration:
type: integer
format: int64
nullable: true
description: The duration of checking the configuration cache fingerprint. `null` in case no configuration cache fingerprint check was captured.
dependencyResolutionDuration:
type: integer
format: int64
description: The duration of dependency resolution during configuration caching in seconds.
store:
type: object
nullable: true
$ref: '#/components/schemas/GradleConfigurationCacheStoreResult'
load:
type: object
nullable: true
$ref: '#/components/schemas/GradleConfigurationCacheLoadResult'
missReasons:
type: array
nullable: true
description: The reasons why the configuration cache cannot be reused. `null` if there was no configuration cache hit.
items:
type: string
BuildModels:
type: object
description: Optional requested models associated with the build.
properties:
gradleAttributes:
description: The attributes of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleAttributes'
gradleTestPerformance:
description: Test performance-related metrics of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleTestPerformance'
gradleBuildCachePerformance:
description: The build cache performance of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleBuildCachePerformance'
gradleProjects:
description: List of Gradle projects, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleProjects'
gradleNetworkActivity:
description: Information about the network activity of the build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleNetworkActivity'
gradleArtifactTransformExecutions:
description: The artifact transform execution list of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleArtifactTransformExecutions'
gradleDeprecations:
description: The deprecation list of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleDeprecations'
gradlePlugins:
description: The plugins applied in a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradlePlugins'
gradleResourceUsage:
description: The resource usage gathered while executing a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleResourceUsage'
gradleBuildProfileOverview:
description: The performance profile overview of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleBuildProfileOverview'
gradleConfigurationCache:
description: The configuration cache result of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleConfigurationCache'
gradleDependencies:
description: The dependencies of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleDependencies'
gradleDependencyCaching:
description: Dependency caching metrics of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleDependencyCaching'
gradleRepositoryInstabilities:
description: Repository instabilities of a Gradle build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/GradleRepositoryInstabilities'
mavenAttributes:
description: The attributes of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenAttributes'
mavenTestPerformance:
description: Test performance-related metrics of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenTestPerformance'
mavenBuildCachePerformance:
description: The build cache performance of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenBuildCachePerformance'
mavenModules:
description: List of Maven modules, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenModules'
mavenDependencyResolution:
description: Information about dependency resolution, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenDependencyResolution'
mavenPlugins:
description: The plugins applied in a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenPlugins'
mavenExtensions:
description: The extensions applied in a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenExtensions'
mavenRepositoryInstabilities:
description: Repository instabilities of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenRepositoryInstabilities'
mavenResourceUsage:
description: The resource usage gathered while executing a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenResourceUsage'
mavenBuildProfileOverview:
description: The performance profile overview of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenBuildProfileOverview'
mavenDependencies:
description: The dependencies of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenDependencies'
mavenDependencyCaching:
description: Dependency caching metrics of a Maven build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/MavenDependencyCaching'
bazelAttributes:
description: The attributes of a Bazel build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/BazelAttributes'
bazelCriticalPath:
description: The critical path of a Bazel build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/BazelCriticalPath'
npmAttributes:
description: The attributes of an npm build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/NpmAttributes'
npmDependencies:
description: The dependencies of an npm build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/NpmDependencies'
npmNetworkActivity:
description: Information about the network activity of the build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/NpmNetworkActivity'
pythonAttributes:
description: The attributes of a Python build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/PythonAttributes'
sbtAttributes:
description: The attributes of an sbt build, or a report of a problem encountered.
properties:
problem:
$ref: '#/components/schemas/ApiProblem'
model:
$ref: '#/components/schemas/SbtAttributes'
MavenRepositoryInstabilities:
type: object
description: Information about dependency network activity and repository instabilities observed during a Maven build, including network request totals, error counts broken down by category, and per-repository details. Populated for every build, regardless of whether the build succeeded or failed.
required:
- hasFailedDueToRepositoryInstability
- networkRequestCount
- networkRequestErrorCount
- serialNetworkRequestTime
- serialNetworkRequestErrorTime
- networkRequestErrorCategories
- repositories
properties:
hasFailedDueToRepositoryInstability:
type: boolean
description: Whether the build failure was caused by repository instability (i.e. one or more dependency network request errors). Always `false` for successful builds.
networkRequestCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests performed during the build.
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests that failed during the build.
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests that failed. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
networkRequestErrorCategories:
type: array
description: A breakdown of dependency network request errors by category. Empty if no dependency network requests failed.
items:
$ref: '#/components/schemas/MavenRepositoryInstabilitiesCategory'
repositories:
type: array
description: Per-repository network request totals and error breakdowns for every repository observed during the build.
items:
$ref: '#/components/schemas/MavenRepositoryInstabilitiesRepository'
GradleProjects:
type: array
items:
$ref: '#/components/schemas/GradleProject'
description: List of Gradle projects including structural relationships.
TestPerformanceTask:
type: object
description: Test task
required:
- taskPath
- taskType
- wallClockExecutionTime
- serialExecutionTime
- tests
- testAcceleration
properties:
taskPath:
type: string
description: The path of the test task
taskType:
type: string
description: The fully qualified name of the task type
wallClockExecutionTime:
type: integer
format: int64
description: The total execution time of the test task in millis. This is the time elapsed between the start and end of the entire test task.
serialExecutionTime:
type: integer
format: int64
description: The serial execution time of the test task in millis. This is the sum of all serial test class durations and includes the setup and cleanup durations of the test task.
tests:
$ref: '#/components/schemas/WorkUnitTestPerformanceTests'
testAcceleration:
$ref: '#/components/schemas/TestPerformanceWorkUnitTestAcceleration'
MavenDependencyCaching:
type: object
description: Summary of dependency files resolved by source for a Maven build.
required:
- downloadedFileCount
- downloadedFileSize
- cachedFileCount
- cachedFileSize
properties:
downloadedFileCount:
type: integer
format: int64
minimum: 0
description: The number of resolved dependency files downloaded from remote repositories.
downloadedFileSize:
type: integer
format: int64
minimum: 0
description: The size in bytes of resolved dependency files downloaded from remote repositories.
cachedFileCount:
type: integer
format: int64
minimum: 0
description: The number of resolved dependency files retrieved from local cache.
cachedFileSize:
type: integer
format: int64
minimum: 0
description: The size in bytes of resolved dependency files retrieved from local cache.
SbtBuildOptions:
type: object
description: sbt build options for this build.
required:
- useCoursierEnabled
- offlineModeEnabled
- turboEnabled
- parallelExecutionEnabled
- semanticDbScalacPluginEnabled
- interactiveModeEnabled
properties:
useCoursierEnabled:
type: boolean
description: Indicates whether Coursier was used for dependency resolution.
offlineModeEnabled:
type: boolean
description: Indicates whether the build was configured to run offline.
turboEnabled:
type: boolean
description: Indicates whether the build was configured to use turbo mode.
parallelExecutionEnabled:
type: boolean
description: Indicates whether the build was configured to use parallel tasks execution.
semanticDbScalacPluginEnabled:
type: boolean
description: Indicates whether the projects in the build were configured to use the SemanticDB Scalac plugin.
interactiveModeEnabled:
type: boolean
description: Indicates whether the build was run from the sbt shell.
GradleRepositoryInstabilitiesRepository:
type: object
description: Dependency network request metrics for a single repository, including error breakdowns.
required:
- url
- networkRequestCount
- networkRequestErrorCount
- serialNetworkRequestTime
- serialNetworkRequestErrorTime
- networkRequestErrorCategories
properties:
url:
type: string
description: The URL of the repository.
networkRequestCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests performed against this repository.
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The number of dependency network requests against this repository that failed.
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests against this repository. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests against this repository that failed. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
networkRequestErrorCategories:
type: array
description: A breakdown of dependency network request errors for this repository by category.
items:
$ref: '#/components/schemas/GradleRepositoryInstabilitiesCategory'
TestDistributionAgentPoolRegistrationKeyDescription:
description: Optional description of a Test Distribution pool-specific agent registration key.
type: object
properties:
description:
type: string
maxLength: 100
description: Description of the registration key to help identify it later.
example: Used by xyz
GradleBuildCachePerformanceTaskAvoidanceSavingsSummary:
type: object
description: A breakdown of avoidance savings for tasks.
required:
- total
- ratio
- upToDate
- localBuildCache
- remoteBuildCache
properties:
total:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused in milliseconds.
ratio:
type: number
format: double
description: The ratio of the total avoidance savings against the potential serial execution time (which is the actual serial execution time plus the total avoidance savings). Quantifies the effect of avoidance savings in this build. The bigger the ratio is, the more time is saved when running the build.
upToDate:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to build incrementalism in milliseconds.
localBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused from the local build cache in milliseconds.
remoteBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused from the remote build cache in milliseconds.
MavenTestPerformance:
type: object
description: Test performance metrics of a Maven build.
required:
- tests
- serialTestGoalsExecutionTime
- testAcceleration
- testGoals
properties:
tests:
$ref: '#/components/schemas/BuildTestPerformanceTests'
serialTestGoalsExecutionTime:
type: integer
format: int64
description: The sum of the serial execution times in millis of test goals run in the build.
testAcceleration:
$ref: '#/components/schemas/TestPerformanceBuildTestAcceleration'
testGoals:
type: array
items:
$ref: '#/components/schemas/TestPerformanceGoal'
GradleBuildCachePerformanceTaskExecutionEntry:
type: object
required:
- taskPath
- taskType
- avoidanceOutcome
- duration
- hasFailed
properties:
taskPath:
type: string
description: The full task path.
taskType:
type: string
description: The fully qualified class name of the task.
avoidanceOutcome:
type: string
enum:
- avoided_up_to_date
- avoided_from_local_cache
- avoided_from_remote_cache
- executed_cacheable
- executed_not_cacheable
- executed_unknown_cacheability
- avoided_unknown_reason
- lifecycle
- no-source
- skipped
description: "The avoidance outcome of this task with respect to performance:\n * `avoided_up_to_date` - Task whose execution is avoided due to build incrementalism\n * `avoided_from_local_cache` - Task whose execution is avoided due to reusing a local build cache entry\n * `avoided_from_remote_cache` - Task whose execution is avoided due to reusing a remote build cache entry\n * `avoided_unknown_reason` - Task which was avoided for an unknown reason\n * `executed_cacheable` - Task which is executed but is cacheable\n * `executed_not_cacheable` - Task which is executed but is not cacheable\n * `executed_unknown_cacheability` - Task which is executed and whose cacheability can not be determined\n * `lifecycle` - Lifecycle task\n * `no-source` - No-source task\n * `skipped` - Skipped task\n"
duration:
type: integer
format: int64
description: The task duration in milliseconds.
fingerprintingDuration:
type: integer
format: int64
description: The task fingerprinting duration in milliseconds. This duration is part of the complete task execution duration. `null` if the task is not fingerprinted, or the information is not available.
nullable: true
avoidanceSavings:
type: integer
format: int64
description: The task avoidance savings in milliseconds, which can be negative. Negative values indicate that it takes more time to reuse outputs than it did to create them originally. `null` if the information is not available.
nullable: true
nonCacheabilityCategory:
type: string
enum:
- build_cache_not_enabled
- cache-if_condition_not_matched
- disabled_to_ensure_correctness
- do-not-cache-if_condition_matched
- multiple_outputs_declared
- no_outputs_declared
- non_cacheable_inputs
- non_cacheable_task_action
- non_cacheable_task_implementation
- non_cacheable_tree_output
- overlapping_outputs
- task_has_no_actions
- task_output_caching_not_enabled
- unknown
description: "The category of the non-cacheability reason:\n * `build_cache_not_enabled` - Caching is not enabled for the build\n * `cache-if_condition_not_matched` - Caching is disabled for the task via `org.gradle.api.tasks.TaskOutputs#cacheIf`\n * `disabled_to_ensure_correctness` - The task failed validation. Available since Gradle 7.0\n * `do-not-cache-if_condition_matched` - Caching is disabled for the task via `org.gradle.api.tasks.TaskOutputs#doNotCacheIf`\n * `multiple_outputs_declared` - The task declares multiple outputs\n * `no_outputs_declared` - The task has no outputs declared\n * `non_cacheable_inputs` - One of the task inputs is not cacheable, either because some type used as an input to the task is loaded via a custom classloader, or a Java lambda is used as an input. Available since Gradle 5.0 and before Gradle 7.5\n * `non_cacheable_task_action` - One of the task actions is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5\n * `non_cacheable_task_implementation` - The task implementation is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5\n * `non_cacheable_tree_output` - The task has a `org.gradle.api.file.FileTree` or a `org.gradle.api.internal.file.collections.DirectoryFileTree` as an output. Available since Gradle 5.0\n * `overlapping_outputs` - The tasks outputs overlaps with another task. As Gradle cannot safely determine which task each output file belongs to, it disables caching \n * `task_has_no_actions` - The task does not declare any actions\n * `task_output_caching_not_enabled` - Caching is not enabled for the task\n * `unknown` - Reason for disabled caching is not known\n\n`null` when the task is cacheable or if the information is not available.\n"
nullable: true
nonCacheabilityReason:
type: string
description: The human-readable reason for a non-cacheable task. `null` when the task is cacheable or if the information is not available.
nullable: true
skipReasonMessage:
type: string
description: The detailed reason why the task is skipped. `null` if the task is not skipped or Gradle versions <7.6 are used.
nullable: true
cacheArtifactSize:
type: integer
format: int64
description: 'The number of bytes of the produced or consumed cache artifact.
For a task execution where the outputs are successfully stored to a local or remote cache, this is the size of the stored cache artifact. For a task execution where the outputs are successfully loaded from a local or remote cache, this is the size of the loaded cache artifact.
`null` if the task is not cacheable, or if the attempt to store or load the artifact from cache does not succeed.
'
nullable: true
cacheArtifactRejectedReason:
description: "The reason why the cache artifact is rejected:\n * `artifact_size_too_large` - The size of the artifact is larger than the remote build cache can accept.\n\nThe value is `null` if the task is not cacheable, or if the attempt to store the artifact does not succeed.\n"
nullable: true
type: string
enum:
- artifact_size_too_large
cacheKey:
type: string
description: The build cache key. `null` if no build cache key was computed (e.g. when the task is skipped).
nullable: true
hasFailed:
type: boolean
description: True when the task failed, false otherwise.
TestDistributionAgentPoolConfiguration:
description: An agent pool configuration.
type: object
required:
- name
- minimumSize
- maximumSize
- capabilities
properties:
name:
type: string
description: The alias or display name of the agent pool.
minLength: 1
example: functional-test-agents
minimumSize:
type: integer
format: int32
minimum: 0
maximumSize:
type: integer
format: int32
minimum: 0
orderIndex:
description: The order in which the agent pool is considered for allocation. Lower values are considered first.
type: integer
format: int32
nullable: true
minimum: 0
capabilities:
type: array
items:
type: string
pattern: ^([-\w.]+)(?:=([-\w.]+))?$
example:
- jdk=17
- os=linux
- functional-test
restrictAccessToProjectGroups:
type: boolean
description: 'Controls whether this pool can be used by everyone, or only the assigned project groups.
A `true` value implies that `projectGroupIds` is present and has at least one entry.
Conversely, a `false` value implies that `projectGroupIds` is empty.
'
default: false
projectGroupIds:
type: array
description: 'Controls which project groups can use this pool.
If it is empty, then `restrictAccessToProjectGroups` must be `false`.
Conversely, if it has values then `restrictAccessToProjectGroups` must be `true`.
'
items:
type: string
pattern: ^[^\\s]{1,215}$
example: project-group-a
BuildModelNames:
description: 'The list of build models to return in the response for each build.
If not provided, no models are returned.
'
type: array
items:
$ref: '#/components/schemas/BuildModelName'
TestDistributionAgentPoolPage:
description: A list of agent pools.
type: object
required:
- content
properties:
content:
type: array
description: A list of agent pool IDs.
items:
$ref: '#/components/schemas/TestDistributionAgentPoolConfigurationWithId'
MavenDependency:
allOf:
- $ref: '#/components/schemas/CommonDependency'
- type: object
AvailabilityWaitTimeoutSecs:
type: integer
minimum: 0
description: The time in seconds the server should wait for ingestion before returning a wait timeout response.
BuildModelQuery:
type: object
properties:
availabilityWaitTimeoutSecs:
$ref: '#/components/schemas/AvailabilityWaitTimeoutSecs'
BazelCriticalPath:
type: object
description: The reported actions of the critical path.
properties:
actions:
type: array
description: The actions of the critical path. Null when the build failed early, or when the build profile was not available to Develocity.
items:
type: object
required:
- name
- category
- duration
properties:
name:
description: The name of the action.
type: string
category:
description: The category of the action.
type: string
duration:
description: The duration of the action, as milliseconds.
type: integer
format: int64
GradleTestPerformance:
type: object
description: Test performance metrics of a Gradle build.
required:
- tests
- serialTestTasksExecutionTime
- testAcceleration
- testTasks
properties:
tests:
$ref: '#/components/schemas/BuildTestPerformanceTests'
serialTestTasksExecutionTime:
type: integer
format: int64
description: The sum of the serial execution times in millis of test tasks run in the build.
testAcceleration:
$ref: '#/components/schemas/TestPerformanceBuildTestAcceleration'
testTasks:
type: array
items:
$ref: '#/components/schemas/TestPerformanceTask'
ReplicationConfiguration:
description: Cached data replication configuration description. May be `null` if replication is not configured.
type: object
nullable: true
required:
- source
- preemptive
properties:
source:
type: string
description: The name of the Build Cache Node which is the source of data.
preemptive:
type: boolean
description: Indicates if preemptive replication is enabled from the source.
NpmCommand:
type: object
description: The command run on an npm build.
required:
- command
properties:
command:
type: string
nullable: false
description: The command that was run (e.g. in "npm install", this would be "install").
arguments:
type: array
items:
type: string
description: The arguments passed to the command (e.g. in "npm run script.js", this would be ["script.js"]).
GradleBuildCachePerformanceBuildCaches:
type: object
description: Information about the local and remote build caches used in the build. `null` if the build cache is globally disabled.
nullable: true
required:
- local
- remote
- overhead
properties:
local:
$ref: '#/components/schemas/GradleBuildCachePerformanceBuildCacheLocalInfo'
remote:
$ref: '#/components/schemas/GradleBuildCachePerformanceBuildCacheRemoteInfo'
overhead:
$ref: '#/components/schemas/GradleBuildCachePerformanceBuildCacheOverhead'
GradleDeprecationOwner:
type: object
required:
- type
properties:
location:
type: string
description: The location of the deprecation usage. Can be a plugin id, task path, script file path, script URI. `null` if the owner type is unknown.
nullable: true
type:
type: string
enum:
- plugin
- script
- task
- unknown
description: "The type of the deprecation owner:\n * `plugin` - The owner of the deprecation is a plugin.\n * `script` - The owner of the deprecation is a script.\n * `task` - The owner of the deprecation is a task.\n * `unknown` - Unknown deprecation owner type when none of the other options match.\n"
ResourceUsageMetric:
type: object
required:
- max
- average
- median
- p5
- p25
- p75
- p95
properties:
max:
description: The max value of the metric.
type: integer
format: int64
average:
description: The average value of the metric.
type: integer
format: int64
median:
description: The median (or 50th percentile) value of the metric.
type: integer
format: int64
p5:
description: The 5th percentile value of the metric.
type: integer
format: int64
p25:
description: The 25th percentile value of the metric.
type: integer
format: int64
p75:
description: The 75th percentile value of the metric.
type: integer
format: int64
p95:
description: The 95th percentile value of the metric.
type: integer
format: int64
PredictiveTestSelectionMode:
type: string
enum:
- relevant
- remaining
description: "Develocity PTS selection mode of a build:\n * `relevant` - PTS selects only relevant tests (default)\n * `remaining` - PTS runs alls remaining tests\n"
CommonDependency:
type: object
required:
- scheme
- type
- name
properties:
scheme:
type: string
description: 'The scheme used to identify the dependency.
'
type:
type: string
description: 'The type of the dependency.
'
namespace:
type: string
nullable: true
description: 'A prefix used to qualify the dependency name.
'
name:
type: string
description: The name of the dependency.
version:
type: string
nullable: true
description: The version of the dependency.
qualifiers:
type: object
nullable: true
description: 'Additional information to qualify the identity of the dependency. The names and their meanings are type-specific.
'
additionalProperties:
type: string
subpath:
type: string
nullable: true
description: Subpath within a dependency.
purl:
type: string
nullable: true
description: The [package URL](https://github.com/package-url/purl-spec) identifier for the dependency.
repository:
type: object
nullable: true
description: The repository where the dependency was resolved from.
properties:
url:
type: string
nullable: true
description: The URL of the repository.
type:
type: string
nullable: true
description: The type of the repository.
enum:
- maven
- ivy
- flatDir
- npm
resolutionSource:
type: string
nullable: true
description: A classification of the source this repository uses to resolve dependencies.
enum:
- remote
- local
- unknown
DevelocityVersion:
title: DevelocityVersion
type: object
allOf:
- $ref: '#/components/schemas/GradleEnterpriseVersion'
MavenBuildCachePerformanceBuildCacheRemoteInfo:
type: object
description: Information about the remote build cache used in the build, if it is configured in the build. `null` if the remote build cache is not configured.
nullable: true
required:
- isEnabled
properties:
isEnabled:
type: boolean
description: Indicates whether the remote build cache is enabled.
isPushEnabled:
type: boolean
description: Indicates whether pushing to the remote build cache is enabled. `null` if the remote build cache is disabled.
nullable: true
isDisabledDueToError:
type: boolean
description: Indicates whether the remote build cache is disabled during the build due to an error occurring in loading or storing remote build cache entries. `null` if the remote build cache is disabled.
url:
type: string
description: URL of the remote build cache. `null` if the remote build cache is disabled.
nullable: true
GradleArtifactTransformAttribute:
type: object
required:
- name
- from
- to
properties:
name:
type: string
description: The name of the attribute.
from:
type: string
description: The input attribute value.
to:
type: string
description: The requested attributed value.
Builds:
type: array
items:
$ref: '#/components/schemas/Build'
description: List of builds with common attributes.
BuildAttributesEnvironment:
type: object
description: The environment where the build is executed.
required:
- operatingSystem
- numberOfCpuCores
- jreVersion
- jvmVersion
- jvmMaxMemoryHeapSize
- jvmLocale
properties:
username:
type: string
description: Operating system username of the build user. `null` if no username is captured.
nullable: true
operatingSystem:
type: string
description: Operating system of the build machine.
numberOfCpuCores:
type: integer
description: Number of cores available to the build JVM.
jreVersion:
type: string
description: Version of the Java runtime executing the build.
jvmVersion:
type: string
description: Version of the Java Virtual Machine executing the build.
jvmMaxMemoryHeapSize:
type: integer
format: int64
description: Maximum heap memory available to the build JVM in bytes.
jvmCharset:
type: string
description: The default charset of the JVM executing the build. `null` if capturing is not possible.
nullable: true
jvmLocale:
type: string
description: The locale of the JVM executing the build.
publicHostname:
type: string
description: The hostname of the build machine, as seen on the network. `null` if capturing is not possible.
nullable: true
localHostname:
type: string
description: The hostname of the build machine, as specified by itself. `null` if capturing is not possible.
nullable: true
localIpAddresses:
type: array
items:
type: string
description: The local IP addresses of the build machine. `null` if capturing is not possible.
nullable: true
TestDistributionAgentPoolRegistrationKeyPrefixPage:
description: A list of Test Distribution pool-specific agent registration key prefixes.
type: object
required:
- content
properties:
content:
type: array
items:
$ref: '#/components/schemas/TestDistributionAgentPoolRegistrationKeyPrefix'
GradleDependencies:
type: object
description: 'Dependencies of a Gradle build. While there are many possible types of dependencies, initial support is for library dependencies of the software. Dependency identifiers are based on the package url (purl) [specification](https://github.com/package-url/purl-spec).
'
properties:
dependencies:
type: array
description: List of dependencies of a Gradle build.
items:
$ref: '#/components/schemas/GradleDependency'
BuildAttributesLink:
type: object
description: A Build Scan link.
required:
- label
- url
properties:
label:
type: string
description: The label of the Build Scan link.
url:
type: string
description: The url of the Build Scan link.
MavenBuildCachePerformanceGoalFingerprintingSummary:
type: object
description: A summary of goal fingerprinting. Fingerprinted goals are part of the `goalExecution.avoidedGoals` or `goalExecution.executedGoals` buckets.
required:
- count
- serialDuration
properties:
count:
type: integer
description: Count of fingerprinted goals.
serialDuration:
type: integer
format: int64
description: Sum of all fingerprinting times of fingerprinted goals in milliseconds.
MavenBuildCachePerformanceBuildCacheLocalInfo:
type: object
description: Information about the local build cache used in the build, if it is configured in the build. `null` if the local build cache is not configured.
nullable: true
required:
- isEnabled
properties:
isEnabled:
type: boolean
description: Indicates whether the local build cache is enabled.
isPushEnabled:
type: boolean
description: Indicates whether pushing to the local build cache is enabled. `null` if the local build cache is disabled.
nullable: true
isDisabledDueToError:
type: boolean
description: Indicates whether the local cache is disabled due to an error occurring in loading or storing local build cache entries. `null` if the local build cache is disabled.
directory:
type: string
description: Location of the local build cache. Can be relative or absolute depending on its value. `null` if the local build cache is disabled.
nullable: true
WorkUnitTestPerformanceTests:
type: object
description: Test-related data of a task/goal.
required:
- failedTestClassesCount
- testClassesCount
properties:
failedTestClassesCount:
type: integer
description: Number of failed test classes of a task/goal.
testClassesCount:
type: integer
description: Number of test classes of a task/goal.
BuildModelName:
description: Build model names that can be requested when fetching builds.
type: string
enum:
- gradle-artifact-transform-executions
- gradle-attributes
- gradle-build-cache-performance
- gradle-build-profile-overview
- gradle-configuration-cache
- gradle-deprecations
- gradle-dependencies
- gradle-dependency-caching
- gradle-network-activity
- gradle-plugins
- gradle-projects
- gradle-repository-instabilities
- gradle-resource-usage
- gradle-test-performance
- maven-attributes
- maven-build-cache-performance
- maven-build-profile-overview
- maven-dependencies
- maven-dependency-caching
- maven-dependency-resolution
- maven-extensions
- maven-modules
- maven-plugins
- maven-repository-instabilities
- maven-resource-usage
- maven-test-performance
- bazel-attributes
- bazel-critical-path
- npm-attributes
- npm-dependencies
- npm-network-activity
- python-attributes
- sbt-attributes
GradlePlugin:
type: object
required:
- className
- projects
properties:
id:
type: string
description: The plugin ID. May be `null`.
className:
type: string
description: The fully qualified class name of the plugin.
version:
type: string
description: The plugin version. May be `null`.
nullable: true
projects:
type: array
description: The paths of the projects where the plugin is applied. Will always be an array of size 1 for a single project build.
items:
type: string
GradleBuildCachePerformanceWorkUnitAvoidanceSavingsSummary:
type: object
description: A breakdown of avoidance savings for tasks and artifact transforms.
required:
- total
- ratio
- upToDate
- localBuildCache
- remoteBuildCache
properties:
total:
type: integer
format: int64
description: The estimated reduction in serial execution time of the work units due to their outputs being reused in milliseconds.
ratio:
type: number
format: double
description: The ratio of the total avoidance savings against the potential serial execution time (which is the actual serial execution time plus the total avoidance savings). Quantifies the effect of avoidance savings in this build. The bigger the ratio is, the more time is saved when running the build.
upToDate:
type: integer
format: int64
description: The estimated reduction in serial execution time of the work units due to build incrementalism in milliseconds.
localBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the work units due to their outputs being reused from the local build cache in milliseconds.
remoteBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the work units due to their outputs being reused from the remote build cache in milliseconds.
MavenBuildProfileOverview:
type: object
description: The performance profile overview of a Maven build.
required:
- breakdown
properties:
breakdown:
$ref: '#/components/schemas/MavenBuildTimeBreakdown'
memoryUsage:
$ref: '#/components/schemas/MavenBuildJvmMemoryUsage'
ApiProblem:
type: object
description: 'Response detailing why a request was rejected.
Adheres to the [RFC-7807](https://datatracker.ietf.org/doc/html/rfc7807) standard (colloquially known as "Problem JSON") for the response format.
'
required:
- type
- title
- status
properties:
status:
type: integer
description: HTTP status code of the problem response.
type:
type: string
description: A URN (Uniform Resource Name) identifying the type of the problem.
title:
type: string
description: The underlying reason for the problem.
detail:
type: string
description: A longer and comprehensive description of the problem. May be `null` if not available.
nullable: true
MavenDependencyResolutionSubset:
type: object
properties:
networkRequestCount:
description: This represents the total count of network requests for this subset of requests.
format: int64
type: integer
minimum: 0
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests for this subset of requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies from this subset of requests. It accounts only for the bytes of the files (e.g. POMs, JARs) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files from this subset of requests.
wallClockNetworkRequestTime:
description: The estimate in milliseconds representing the wall clock time spent on network requests during the current build for this subset of requests.
format: int64
type: integer
minimum: 0
TestAccelerationFeatureUsageStatus:
type: string
enum:
- unavailable
- disabled
- enabled
description: "Develocity extension status of a build / work unit:\n * `unavailable` - Feature status is unknown (e.g. for older Gradle plugin / Maven extension versions) or feature could not be used due to an unexpected error\n * `disabled` - The extension was enabled on none of the tasks in the build / for the task in question\n * `enabled` - The extension was enabled on at least one of the tasks in the build / for the task in question**\n"
GradleProject:
type: object
description: A Gradle project.
required:
- name
- path
properties:
name:
type: string
description: The name of the project.
path:
type: string
description: The path of the project.
parent:
type: integer
nullable: true
description: The index of the parent of this Gradle project in the GradleProjects array. `null` if this project has no parent (i.e. root project of a build).
TestPerformanceBuildTestDistribution:
type: object
description: Test Distribution related data of a build.
required:
- usageStatus
- wallClockSavings
properties:
usageStatus:
$ref: '#/components/schemas/TestAccelerationFeatureUsageStatus'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the Test Distribution request, than it would have taken to directly execute the tests.
nullable: true
TestPerformanceBuildTestAcceleration:
type: object
description: Test acceleration data of a build.
required:
- predictiveTestSelection
- testDistribution
- wallClockSavings
properties:
predictiveTestSelection:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelection'
testDistribution:
$ref: '#/components/schemas/TestPerformanceBuildTestDistribution'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the test acceleration requests, than it would have taken to directly execute the tests.
nullable: true
ProjectReference:
type: object
description: A container for a project ID.
required:
- id
properties:
id:
$ref: '#/components/schemas/ProjectId'
TestPerformanceWorkUnitTestDistribution:
type: object
description: Test Distribution related data of a work unit.
required:
- usageStatus
- wallClockSavings
properties:
usageStatus:
$ref: '#/components/schemas/TestAccelerationFeatureUsageStatus'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the Test Distribution request, than it would have taken to directly execute the tests.
nullable: true
remoteTestClassesCount:
type: integer
description: The number of test classes that have been executed remotely by Test Distribution. Null if Test Distribution was disabled / unavailable.
nullable: true
MavenBuildTimeBreakdown:
type: object
description: The build time breakdown of a Maven build.
required:
- total
- initializationAndDiscovery
properties:
total:
type: integer
format: int64
description: Total duration of the build in milliseconds.
initializationAndDiscovery:
$ref: '#/components/schemas/MavenBuildInitializationAndDiscoveryTimeBreakdown'
execution:
$ref: '#/components/schemas/MavenBuildExecutionTimeBreakdown'
NodeConfiguration:
description: A Build Cache Node configuration description.
type: object
required:
- enabled
properties:
enabled:
type: boolean
description: Indicates if the Build Cache Node is enabled.
replication:
$ref: '#/components/schemas/ReplicationConfiguration'
MemoryPoolUsage:
type: object
description: Memory usage of a JVM memory pool.
required:
- name
- peakMemory
- maxMemory
properties:
name:
type: string
description: The name of the memory pool.
peakMemory:
type: integer
format: int64
description: The peak memory usage of this memory pool while running the build, in bytes.
maxMemory:
type: integer
format: int64
description: The maximum amount of memory in bytes that can be used for memory management. `-1` if the maximum memory size is undefined.
ProjectId:
type: string
description: The unique identifier for the project. Must not contain whitespace.
minLength: 1
maxLength: 256
pattern: ^\S+$
GradleGradleEnterpriseSettings:
type: object
description: '**This property is deprecated, use `develocitySettings` instead.**
Settings for Develocity.
'
deprecated: true
properties:
backgroundPublicationEnabled:
type: boolean
description: Indicates whether background Build Scan publication is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.4`. See https://gradle.com/help/gradle-plugin-configuring-background-uploading.
nullable: true
buildOutputCapturingEnabled:
type: boolean
description: Indicates whether build logging output capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.7`. See https://gradle.com/help/gradle-plugin-capturing-build-and-test-outputs.
nullable: true
taskInputsFileCapturingEnabled:
type: boolean
description: Indicates whether task input file snapshots capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `2.1`. See https://gradle.com/help/gradle-plugin-capturing-task-input-files.
nullable: true
testOutputCapturingEnabled:
type: boolean
description: Indicates whether test logging output capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.7`. See https://gradle.com/help/gradle-plugin-capturing-build-and-test-outputs.
nullable: true
resourceUsageCapturingEnabled:
type: boolean
description: Indicates whether resource usage capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.18`. See https://gradle.com/help/gradle-plugin-capturing-resource-usage.
nullable: true
SkipUnavailableModels:
type: boolean
description: Will skip build models that are not available at the time of the handling of the call.
MavenBuildCachePerformanceBuildCacheOverhead:
type: object
description: Information about the build cache overhead in this build.
required:
- uploading
- downloading
- packing
- unpacking
properties:
uploading:
type: integer
format: int64
description: Overhead of upload operations in milliseconds.
downloading:
type: integer
format: int64
description: Overhead of download operations in milliseconds.
packing:
type: integer
format: int64
description: Overhead of pack operations in milliseconds.
unpacking:
type: integer
format: int64
description: Overhead of unpack operations in milliseconds.
MavenDependencyResolution:
type: object
description: Information about dependency resolution.
required:
- serialDependencyResolutionTime
- networkRequestCount
- serialNetworkRequestTime
- wallClockNetworkRequestTime
- fileDownloadSize
- fileDownloadCount
properties:
serialDependencyResolutionTime:
description: The total cumulative time, in milliseconds, spent resolving dependencies. The process of resolving a dependency involves fetching metadata from remote repositories, determining the appropriate version to use, and ultimately fetching the dependency artifact.
format: int64
type: integer
minimum: 0
networkRequestCount:
description: This represents the total count of network requests made during configuration resolution.
format: int64
type: integer
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
wallClockNetworkRequestTime:
description: The estimate in milliseconds representing the wall clock time spent on network requests during the current build. It is calculated by comparing the critical path of project executions with and without network requests, converted to wall clock time.
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies. It accounts only for the bytes of the files (e.g. POMs, JARs) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files.
methods:
type: object
description: A breakdown of the network activity by HTTP method, when available.
additionalProperties:
$ref: '#/components/schemas/MavenDependencyResolutionSubset'
repositories:
type: object
description: 'A breakdown of the network activity by repository URL. This is empty when no repositories were captured.
'
additionalProperties:
$ref: '#/components/schemas/MavenDependencyResolutionSubset'
repositoryMethods:
type: object
description: A breakdown of the network activity by HTTP method and repository, when available.
additionalProperties:
$ref: '#/components/schemas/MavenDependencyResolutionSubset'
NpmDependencies:
type: object
description: 'Dependencies of an npm build. While there are many possible types of dependencies, initial support is for library dependencies of the software. Dependency identifiers are based on the package url (purl) [specification](https://github.com/package-url/purl-spec).
'
properties:
dependencies:
type: array
description: List of dependencies of an npm build.
items:
$ref: '#/components/schemas/NpmDependency'
GradleBuildTimeBreakdown:
type: object
description: The build time breakdown of a Gradle build.
required:
- total
- initialization
properties:
total:
type: integer
format: int64
description: Total duration of the build in milliseconds.
initialization:
type: integer
format: int64
description: The elapsed time from the very start of the build to the moment when any kind of configuration starts in milliseconds.
configuration:
type: integer
format: int64
nullable: true
description: The elapsed time to build plugins, execute build scripts, configure projects and create the task execution plan in milliseconds. `null` if the build failed before the configuration phase.
execution:
type: integer
format: int64
description: The elapsed time from the start of the execution of the first task of the main build to the end of the execution of the last task of the main build in milliseconds. `null` if the build failed before the execution phase.
endOfBuild:
type: integer
format: int64
nullable: true
description: The elapsed time from the end of the execution of the last task of the main build to the end of the build in milliseconds. `null` if there was no end of build phase. `null` if the build failed before the end of build phase.
MavenDependencies:
type: object
description: 'Dependencies of a Maven build. While there are many possible types of dependencies, initial support is for library dependencies of the software. Dependency identifiers are based on the package url (purl) [specification](https://github.com/package-url/purl-spec).
'
properties:
dependencies:
type: array
description: List of dependencies of a Maven build.
items:
$ref: '#/components/schemas/MavenDependency'
GradleDependencyCaching:
type: object
description: Summary of dependency files resolved by source for a Gradle build.
required:
- downloadedFileCount
- downloadedFileSize
- cachedFileCount
- cachedFileSize
properties:
downloadedFileCount:
type: integer
format: int64
minimum: 0
description: The number of resolved dependency files downloaded from remote repositories.
downloadedFileSize:
type: integer
format: int64
minimum: 0
description: The size in bytes of resolved dependency files downloaded from remote repositories.
cachedFileCount:
type: integer
format: int64
minimum: 0
description: The number of resolved dependency files retrieved from local cache.
cachedFileSize:
type: integer
format: int64
minimum: 0
description: The size in bytes of resolved dependency files retrieved from local cache.
PageMetadata:
type: object
description: 'Information about the current and available page of elements.
Pages are returned from list operations which could contain a lot of elements.
One page contains a subset of the available elements.
API users can retrieve all pages in order to retrieve all of the available elements.
'
required:
- number
- size
- totalElements
- totalPages
properties:
number:
type: integer
format: int32
description: The index of the current page. Page indexes start at zero.
minimum: 0
size:
type: integer
format: int32
description: The number of elements in the current page.
minimum: 0
totalPages:
type: integer
format: int32
description: The total number of pages.
minimum: 0
totalElements:
type: integer
format: int32
description: The total number of elements across all pages.
minimum: 0
TestPerformanceGoal:
type: object
description: Test goal
required:
- goalPath
- goalType
- wallClockExecutionTime
- serialExecutionTime
- tests
- testAcceleration
properties:
goalPath:
type: string
description: The path of the test goal
goalType:
type: string
description: The fully qualified name of the goal type
wallClockExecutionTime:
type: integer
format: int64
description: The total execution time of the test goal in millis. This is the time elapsed between the start and end of the entire test goal.
serialExecutionTime:
type: integer
format: int64
description: The serial execution time of the test goal in millis. This is the sum of all serial test class durations and includes the setup and cleanup durations of the test goal.
tests:
$ref: '#/components/schemas/WorkUnitTestPerformanceTests'
testAcceleration:
$ref: '#/components/schemas/TestPerformanceWorkUnitTestAcceleration'
MavenBuildOptions:
type: object
description: Maven build options for this build.
required:
- errorsEnabled
- maxNumberOfThreads
- nonRecursiveEnabled
- noSnapshotsUpdatesEnabled
- offlineModeEnabled
- updateSnapshotsEnabled
properties:
batchModeEnabled:
type: boolean
description: Indicates whether the build is configured to run in non-interactive (batch) mode. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#batch-mode.
nullable: true
daemonEnabled:
type: boolean
description: Indicates whether the build runs with the Maven Daemon. `null` if Develocity Maven extension version is < `1.24`. See https://github.com/apache/maven-mvnd.
nullable: true
debugEnabled:
type: boolean
description: Indicates whether the build is configured to produce execution debug output. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#debug.
nullable: true
errorsEnabled:
type: boolean
description: Indicates whether the build is configured to produce execution error messages. See https://maven.apache.org/ref/current/maven-embedder/cli.html#errors.
failAtEndEnabled:
type: boolean
description: Indicates whether the build is configured to only fail at the end. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#fail-at-end.
nullable: true
failFastEnabled:
type: boolean
description: Indicates whether the build is configured to fail at the first error. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#fail-fast.
nullable: true
failNeverEnabled:
type: boolean
description: Indicates whether the build is configured to never fail, regardless of errors produced. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#fail-never.
nullable: true
laxChecksumsEnabled:
type: boolean
description: Indicates whether the build is configured to only warn if checksums don't match. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#lax-checksums.
nullable: true
maxNumberOfThreads:
type: integer
description: Maximum number of threads used when executing the build. See https://cwiki.apache.org/confluence/display/MAVEN/Parallel+builds+in+Maven+3.
nonRecursiveEnabled:
type: boolean
description: Indicates whether the build is configured to not recurse into sub-projects. See https://maven.apache.org/ref/current/maven-embedder/cli.html#non-recursive.
rerunGoalsEnabled:
type: boolean
description: Indicates whether the build is configured to rerun goals without checking the build cache. `null` if Develocity Maven extension version is < `1.13`. See https://gradle.com/help/maven-extension-rerunning-goals.
nullable: true
noSnapshotsUpdatesEnabled:
type: boolean
description: Indicates whether the build is configured to suppress snapshot updates. See https://maven.apache.org/ref/current/maven-embedder/cli.html#no-snapshot-updates.
offlineModeEnabled:
type: boolean
description: Indicates whether the build is configured to run offline. See https://maven.apache.org/ref/current/maven-embedder/cli.html#offline.
quietEnabled:
type: boolean
description: Indicates whether the build is configured to run in quiet mode. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#quiet.
nullable: true
strictChecksumsEnabled:
type: boolean
description: Indicates whether the build is configured to fail if checksums don't match. `null` if capturing is not possible. See https://maven.apache.org/ref/current/maven-embedder/cli.html#strict-checksums.
nullable: true
updateSnapshotsEnabled:
type: boolean
description: Indicates whether the build is configured to force a check for missing releases and updated snapshots on remote repositories. See https://maven.apache.org/ref/current/maven-embedder/cli.html#update-snapshots.
rerunGoals:
type: boolean
description: '**This property is deprecated, use `rerunGoalsEnabled` instead.**
Indicates whether the build is configured to rerun goals without checking the build cache. `null` if Develocity Maven extension version is < `1.13`. See https://gradle.com/help/maven-extension-rerunning-goals.
'
nullable: true
deprecated: true
resumeEnabled:
type: boolean
description: Indicates whether the build resumes from the last failed subproject. `null` if Develocity Maven extension version is < `2.2` or Maven version is < Maven 4.
nullable: true
MavenBuildJvmMemoryUsage:
type: object
description: Memory usage stats of the Maven JVM while running the build.
required:
- totalGarbageCollectionTime
properties:
totalGarbageCollectionTime:
type: integer
format: int64
description: The total garbage collection time.
memoryPools:
type: array
description: A list of all the heap memory pools of the JVM build process and their peak usage.
items:
$ref: '#/components/schemas/MemoryPoolUsage'
ProjectGroupId:
type: string
description: The unique identifier for the project group configured for project-level access control in Develocity. Must not contain whitespace.
minLength: 1
maxLength: 215
pattern: ^\S+$
GradleDependency:
allOf:
- $ref: '#/components/schemas/CommonDependency'
- type: object
GradleArtifactTransformExecutions:
type: object
properties:
artifactTransformExecutions:
type: array
description: A list of executed artifact transforms with performance related information. `null` if artifact transform execution capturing is not supported.
nullable: true
items:
$ref: '#/components/schemas/GradleArtifactTransformExecutionEntry'
GradlePlugins:
type: object
properties:
plugins:
type: array
description: A list of applied plugins in a Gradle build.
items:
$ref: '#/components/schemas/GradlePlugin'
GradleArtifactTransformExecutionEntry:
type: object
required:
- artifactTransformExecutionName
- transformActionType
- inputArtifactName
- changedAttributes
- outcome
- avoidanceOutcome
- duration
properties:
artifactTransformExecutionName:
type: string
description: Artifact transform execution name.
transformActionType:
type: string
description: The fully qualified class name of the artifact transform action.
inputArtifactName:
type: string
description: The name of the input artifact transformed by this transform.
changedAttributes:
type: array
description: The list of changed attributes merged from all transform execution requests.
items:
$ref: '#/components/schemas/GradleArtifactTransformAttribute'
outcome:
type: string
enum:
- failed
- success
- from_cache
- up_to_date
- unknown
- skipped
description: "The outcome of this artifact transform execution:\n * `failed` - Artifact transform execution which failed\n * `success` - Artifact transform execution which was successfully executed\n * `from_cache` - Artifact transform execution which was taken from cache\n * `up_to_date` - Artifact transform execution which was up-to-date\n * `unknown` - Artifact transform execution whose outcome is unknown\n * `skipped` - Artifact transform execution which was skipped. **This is not emitted anymore, replaced by `up_to_date`.**\n"
avoidanceOutcome:
type: string
enum:
- avoided_up_to_date
- avoided_from_local_cache
- avoided_from_remote_cache
- executed_cacheable
- executed_not_cacheable
- executed_unknown_cacheability
- avoided_unknown_cachebility
- avoided_unknown_reason
- skipped
description: "The avoidance outcome of this artifact transform execution with respect to performance:\n * `avoided_up_to_date` - Artifact transform execution whose execution is avoided due to build incrementalism\n * `avoided_from_local_cache` - Artifact transform execution whose execution is avoided due to reusing a local build cache entry\n * `avoided_from_remote_cache` - Artifact transform execution whose execution is avoided due to reusing a remote build cache entry\n * `avoided_unknown_reason` - Artifact transform execution which was avoided for an unknown reason\n * `executed_cacheable` - Artifact transform execution which is executed but is cacheable\n * `executed_not_cacheable` - Artifact transform execution which is executed but is not cacheable\n * `executed_unknown_cacheability` - Artifact transform execution which is executed and whose cacheability can not be determined\n * `skipped` - Skipped artifact transform execution. **This is not emitted anymore, replaced by `up_to_date`.**\n"
duration:
type: integer
format: int64
description: The artifact transform execution duration in milliseconds.
fingerprintingDuration:
type: integer
format: int64
description: The artifact transform execution fingerprinting duration in milliseconds. This duration is part of the complete artifact transform execution duration. `null` if the artifact transform is not fingerprinted.
avoidanceSavings:
type: integer
format: int64
description: The artifact transform execution avoidance savings in milliseconds, which can be negative. Negative values indicate that it takes more time to reuse outputs than it did to create them originally. `null` if the information is not available.
nonCacheabilityCategory:
type: string
enum:
- build_cache_not_enabled
- disabled_to_ensure_correctness
- not_cacheable
- unknown
description: "The category of the non-cacheability reason:\n * `build_cache_not_enabled` - Caching is not enabled for the build\n * `disabled_to_ensure_correctness` - The artifact transform failed validation\n * `not_cacheable` - Caching is not enabled for this artifact transform\n * `unknown` - Reason for disabled caching is not known\n\n`null` when the artifact transform execution is cacheable\n"
nullable: true
nonCacheabilityReason:
type: string
description: The human-readable reason for a non-cacheable artifact transform execution. `null` when the artifact transform execution is cacheable.
nullable: true
cacheArtifactSize:
type: integer
format: int64
description: 'The number of bytes of the produced or consumed cache artifact.
For an artifact transform execution where the outputs are successfully stored to a local or remote cache, this is the size of the stored cache artifact. For an artifact transform execution execution where the outputs are successfully loaded from a local or remote cache, this is the size of the loaded cache artifact.
`null` if the an artifact transform execution is not cacheable, or if the attempt to store or load the artifact from cache does not succeed.
'
nullable: true
cacheArtifactRejectedReason:
description: "The reason why the cache artifact is rejected:\n * `artifact_size_too_large` - The size of the artifact is larger than the remote build cache can accept.\n\nThe value is `null` if the transform execution is not cacheable, or if the attempt to store the artifact does not succeed.\n"
enum:
- artifact_size_too_large
nullable: true
type: string
skipReasonMessage:
type: string
description: The detailed reason why the transform execution is skipped. `null` if the transform execution is not skipped.
nullable: true
cacheKey:
type: string
description: The build cache key. `null` if no build cache key was computed.
nullable: true
SbtDevelocitySettings:
type: object
description: Settings for Develocity.
required:
- backgroundPublicationEnabled
properties:
backgroundPublicationEnabled:
type: boolean
description: Indicates whether background Build Scan publication is enabled for the build. See https://gradle.com/help/sbt-plugin-switches-background-build-scan-publication.
buildOutputCapturingEnabled:
type: boolean
description: Indicates whether to capture build logging output for the build. `null` if Develocity sbt plugin version is < `1.0`. See https://gradle.com/help/sbt-plugin-capturing-build-output.
nullable: true
resourceUsageCapturingEnabled:
type: boolean
description: Indicates whether resource usage capturing is enabled for the build. `null` if Develocity sbt plugin version is < `1.1`. See https://gradle.com/help/sbt-plugin-capturing-resource-usage.
nullable: true
KeySecretPair:
description: A Build Cache Node key and secret pair.
type: object
required:
- key
- secret
properties:
key:
type: string
description: A unique identifier for the Build Cache Node in Develocity.
secret:
type: string
description: The secret associated with the Build Cache Node.
TestPerformanceWorkUnitPredictiveTestSelectionSimulation:
type: object
description: Groups data from the three PTS simulation profiles (task/goal level).
required:
- conservative
- standard
- fast
properties:
conservative:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelectionSimulationData'
standard:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelectionSimulationData'
fast:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelectionSimulationData'
ProjectGroup:
type: object
description: A group of projects that can be assigned to users.
required:
- id
properties:
id:
$ref: '#/components/schemas/ProjectGroupId'
displayName:
type: string
description: The label used when displaying the project group.
maxLength: 266
description:
type: string
description: The description of the project group.
maxLength: 1024
identityProviderAttributeValue:
type: string
description: 'The value of an identity provider attribute this project group is associated with.
Users who have this value in the identity provider attribute will be assigned this project group.
'
minLength: 1
maxLength: 256
projects:
type: array
items:
$ref: '#/components/schemas/ProjectReference'
Project:
type: object
description: A project configured for project-level access control in Develocity.
required:
- id
properties:
id:
$ref: '#/components/schemas/ProjectId'
displayName:
type: string
description: The label used when displaying the project.
maxLength: 266
description:
type: string
description: The description of the project group.
maxLength: 1024
TestPerformanceBuildPredictiveTestSelectionSimulation:
type: object
description: Groups data from the three PTS simulation profiles (build level).
required:
- conservative
- standard
- fast
properties:
conservative:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelectionSimulationData'
standard:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelectionSimulationData'
fast:
$ref: '#/components/schemas/TestPerformanceBuildPredictiveTestSelectionSimulationData'
GradleRepositoryInstabilities:
type: object
description: Information about dependency network activity and repository instabilities observed during a Gradle build, including network request totals, error counts broken down by category, and per-repository details. Populated for every build, regardless of whether the build succeeded or failed.
required:
- hasFailedDueToRepositoryInstability
- networkRequestCount
- networkRequestErrorCount
- serialNetworkRequestTime
- serialNetworkRequestErrorTime
- networkRequestErrorCategories
- repositories
properties:
hasFailedDueToRepositoryInstability:
type: boolean
description: Whether the build failure was caused by repository instability (i.e. one or more dependency network request errors). Always `false` for successful builds.
networkRequestCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests performed during the build.
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The total number of dependency network requests that failed during the build.
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests that failed. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
networkRequestErrorCategories:
type: array
description: A breakdown of dependency network request errors by category. Empty if no dependency network requests failed.
items:
$ref: '#/components/schemas/GradleRepositoryInstabilitiesCategory'
repositories:
type: array
description: Per-repository network request totals and error breakdowns for every repository observed during the build.
items:
$ref: '#/components/schemas/GradleRepositoryInstabilitiesRepository'
TestPerformanceWorkUnitPredictiveTestSelection:
type: object
description: Predictive Test Selection related data of a work unit.
required:
- usage
properties:
usage:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelectionUsage'
simulation:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelectionSimulation'
GradleBuildCachePerformanceBuildCacheLocalInfo:
type: object
description: Information about the local build cache used in the build.
required:
- isEnabled
properties:
isEnabled:
type: boolean
description: Indicates whether the local build cache is enabled.
isPushEnabled:
type: boolean
description: Indicates whether pushing to the local build cache is enabled. `null` if the local build cache is disabled.
nullable: true
isDisabledDueToError:
type: boolean
description: Indicates whether the local cache is disabled due to an error occurring in loading or storing local build cache entries. `null` if the local build cache is disabled.
directory:
type: string
description: Location of the local build cache. Can be relative or absolute depending on its value. `null` if the local build cache is disabled.
nullable: true
MavenBuildCachePerformanceGoalExecution:
type: array
description: A list of executed goals with performance related information.
items:
$ref: '#/components/schemas/MavenBuildCachePerformanceGoalExecutionEntry'
MavenResourceUsage:
type: object
properties:
totalMemory:
type: integer
format: int64
description: The physical memory of the system in bytes. Can be `null` if the metrics could not be captured.
nullable: true
total:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
description: 'The resource usage breakdown spanning the entire duration of the build.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the build.
'
nullable: true
nonExecution:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
description: 'The resource usage breakdown spanning the non-execution phase of the build.
This includes the time to start and initialize Maven and discover all projects.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the non-execution phase of build.
'
nullable: true
execution:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
nullable: true
description: 'The resource usage breakdown spanning the execution phase of the build.
This represents the elapsed time from the start of the execution of the first Maven project to the end of the build.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the execution phase of the build.
'
GradleConfigurationCacheLoadResult:
type: object
description: The configuration cache load result of a Gradle build.
required:
- duration
- hasFailed
properties:
duration:
type: integer
format: int64
description: The duration of the configuration cache load operation in milliseconds.
hasFailed:
type: boolean
description: True when the configuration cache load operation fails, false otherwise.
GradleAttributes:
type: object
description: The attributes of a Gradle build.
required:
- id
- buildStartTime
- buildDuration
- gradleVersion
- pluginVersion
- requestedTasks
- hasFailed
- tags
- values
- links
- develocitySettings
- buildOptions
- environment
- gradleEnterpriseSettings
properties:
id:
type: string
description: The Build Scan ID.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
gradleVersion:
type: string
description: The Gradle version used.
pluginVersion:
type: string
description: The Develocity Gradle plugin version used.
rootProjectName:
type: string
description: The root project name. `null` in case of very early build failure.
nullable: true
requestedTasks:
type: array
items:
type: string
description: The list of requested tasks.
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
hasVerificationFailure:
type: boolean
description: 'Set only if the build fails: true when the build has at least one failure classified as "Verification", false otherwise. The Verification classification is meant for failures that are expected within a standard application development lifecycle. They typically represent a problem with the developer’s inputs to the build such as the source code.
'
hasNonVerificationFailure:
type: boolean
description: 'Set only if the build failed: true when the build has at least one failure classified as "Non-verification", false otherwise. The Non-verification classification is meant for failures that are typically not expected within a standard application development lifecycle, such as build configuration failures, dependency resolution failures, and infrastructure failures.
'
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
develocitySettings:
$ref: '#/components/schemas/GradleDevelocitySettings'
buildOptions:
$ref: '#/components/schemas/GradleBuildOptions'
environment:
$ref: '#/components/schemas/BuildAttributesEnvironment'
gradleEnterpriseSettings:
$ref: '#/components/schemas/GradleGradleEnterpriseSettings'
description: '**This property is deprecated, use `develocitySettings` instead.**
Settings for Develocity.
'
deprecated: true
GradleBuildDaemonJvmMemoryUsage:
type: object
description: Memory usage stats of the Gradle Daemon JVM while running the build.
required:
- totalGarbageCollectionTime
properties:
totalGarbageCollectionTime:
type: integer
format: int64
description: The total garbage collection time.
memoryPools:
type: array
description: A list of all the heap memory pools of the JVM build process and their peak usage.
items:
$ref: '#/components/schemas/MemoryPoolUsage'
GradleBuildCachePerformanceBuildCacheRemoteInfo:
type: object
description: Information about the remote build cache used in the build.
required:
- isEnabled
properties:
type:
type: string
description: The type of the connector used to communicate with the remote build cache. `null` if the remote build cache is disabled.
nullable: true
className:
type: string
description: The class name of the connector. `null` if the remote build cache is disabled.
nullable: true
isEnabled:
type: boolean
description: Indicates whether the remote build cache is enabled.
isPushEnabled:
type: boolean
description: Indicates whether pushing to the remote build cache is enabled. `null` if the remote build cache is disabled.
nullable: true
isDisabledDueToError:
type: boolean
description: Indicates whether the remote build cache is disabled during the build due to an error occurring in loading or storing remote build cache entries. `null` if the remote build cache is disabled.
url:
type: string
description: URL of the remote build cache. `null` if the remote build cache is disabled or if the given type is not supported or it doesn't have the concept of a URL.
nullable: true
MavenExtension:
type: object
required:
- type
properties:
groupId:
type: string
description: The extension group ID. May be null if it cannot be retrieved by the Develocity extension.
nullable: true
artifactId:
type: string
description: The extension artifact ID. May be null if it cannot be retrieved by the Develocity extension.
nullable: true
version:
type: string
description: The extension version. May be null if it cannot be retrieved by the Develocity extension.
nullable: true
type:
type: string
description: 'The extension application type. * `CORE` - A core extension, provided in the lib folder of the Maven installation. * `MAVEN_EXT_CLASSPATH` - A core extension provided via the -Dmaven.ext.class.path system property. * `LIB_EXT` - A core extension, provided in the lib/ext folder of the Maven installation. * `PROJECT` - A project extension, provided via a declaration in .mvn/extensions.xml in the Maven working directory. * `POM` - A build extension, provided via a declaration in the build section of the top level project pom.xml * `UNKNOWN` - An extension for which none of the other types match.
'
enum:
- CORE
- MAVEN_EXT_CLASSPATH
- LIB_EXT
- PROJECT
- POM
- UNKNOWN
TestDistributionAgentPoolStatus:
description: The status of an agent pool.
type: object
required:
- id
- name
- minimumSize
- maximumSize
- connectedAgents
- idleAgents
- desiredAgents
properties:
id:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
name:
type: string
description: The alias or display name of the agent pool.
minLength: 1
minimumSize:
type: integer
format: int32
maximumSize:
type: integer
format: int32
connectedAgents:
type: integer
format: int32
idleAgents:
type: integer
format: int32
desiredAgents:
type: integer
format: int32
BuildQuery:
type: object
properties:
models:
$ref: '#/components/schemas/BuildModelNames'
allModels:
type: boolean
default: false
description: 'Whether to include all build models for the build.
If set to `true`, the value of the `models` parameter is ignored.
'
availabilityWaitTimeoutSecs:
$ref: '#/components/schemas/AvailabilityWaitTimeoutSecs'
skipUnavailableModels:
$ref: '#/components/schemas/SkipUnavailableModels'
MavenModules:
type: array
items:
$ref: '#/components/schemas/MavenModule'
description: List of Maven modules including structural relationships.
TestPerformanceWorkUnitTestAcceleration:
type: object
description: Test acceleration data of a work unit.
required:
- predictiveTestSelection
- testDistribution
- wallClockSavings
properties:
predictiveTestSelection:
$ref: '#/components/schemas/TestPerformanceWorkUnitPredictiveTestSelection'
testDistribution:
$ref: '#/components/schemas/TestPerformanceWorkUnitTestDistribution'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the test acceleration requests, than it would have taken to directly execute the tests.
nullable: true
TestPerformanceWorkUnitPredictiveTestSelectionSimulationData:
type: object
description: Data related to a Predictive Test Selection simulation (task/goal level).
required:
- wallClockSavingsPotential
- serialTimeSavingsPotential
- avoidableTestClassesCount
- unavoidableTestClassesCount
- testClassesCountSelectedDueToInsufficientData
- failedTestClassesPredictedCount
properties:
wallClockSavingsPotential:
type: integer
format: int64
description: The PTS wallclock savings potential in milliseconds.
serialTimeSavingsPotential:
type: integer
format: int64
description: The PTS serial time savings potential in milliseconds.
avoidableTestClassesCount:
type: integer
format: int64
description: The number test classes that can be avoided by PTS.
unavoidableTestClassesCount:
type: integer
format: int64
description: The number of test classes that cannot be avoided by PTS.
testClassesCountSelectedDueToInsufficientData:
type: integer
format: int64
description: The number of test classes that were selected because of insufficient data.
failedTestClassesPredictedCount:
type: integer
format: int64
description: The number of test classes with failed prediction.
GradleDeprecations:
type: object
properties:
deprecations:
type: array
description: A list of Gradle Build Tool deprecations with details and usage information. `null` if deprecation capturing is not supported.
nullable: true
items:
$ref: '#/components/schemas/GradleDeprecationEntry'
MavenRepositoryInstabilitiesCategory:
type: object
description: Dependency network request error metrics for a single error category.
required:
- categoryName
- networkRequestErrorCount
- serialNetworkRequestErrorTime
properties:
categoryName:
type: string
description: 'The identifier of the error category (e.g. `Missing`, `Uncategorized`, `Status: Unauthorized`). New categories may be introduced in the future without a schema change.'
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The number of dependency network requests that failed and were classified under this category.
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests that failed and were classified under this category. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
GradleBuildCachePerformanceTaskFingerprintingSummary:
type: object
description: A summary of task fingerprinting. Fingerprinted tasks are part of the `taskExecution.avoidedTasks` or `taskExecution.executedTasks`, or `taskExecution.noSourceTasks` buckets. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `2.1`.
nullable: true
required:
- count
- serialDuration
properties:
count:
type: integer
description: Count of fingerprinted tasks.
serialDuration:
type: integer
format: int64
description: Sum of all fingerprinting times of fingerprinted tasks in milliseconds.
Permission:
type: string
description: A permission [config value](https://gradle.com/help/helm-admin-permissions).
minLength: 1
maxLength: 256
pattern: ^\S+$
TestDistributionAgentPoolConfigurationWithId:
description: An agent pool configuration.
type: object
required:
- id
- name
- minimumSize
- maximumSize
- capabilities
- orderIndex
properties:
id:
$ref: '#/components/schemas/TestDistributionAgentPoolId'
name:
type: string
description: The alias or display name of the agent pool.
minLength: 1
example: functional-test-agents
minimumSize:
type: integer
format: int32
minimum: 0
maximumSize:
type: integer
format: int32
minimum: 0
orderIndex:
description: The order in which the agent pool is considered for allocation. Lower values are considered first.
type: integer
format: int32
minimum: 0
capabilities:
type: array
items:
type: string
pattern: ^([-\w.]+)(?:=([-\w.]+))?$
example:
- jdk=17
- os=linux
- functional-test
restrictAccessToProjectGroups:
type: boolean
description: 'Controls whether this pool can be used by everyone, or only the assigned project groups.
A `true` value implies that `projectGroupIds` is present and has at least one entry.
Conversely, a `false` value implies that `projectGroupIds` is empty.
'
default: false
projectGroupIds:
type: array
description: 'Controls which project groups can use this pool.
If it is empty, then `restrictAccessToProjectGroups` must be `false`.
Conversely, if it has values then `restrictAccessToProjectGroups` must be `true`.
'
items:
type: string
pattern: ^[^\\s]{1,215}$
example: project-group-a
SbtAttributes:
type: object
description: The attributes of an sbt build.
required:
- id
- buildStartTime
- buildDuration
- sbtVersion
- pluginVersion
- rootProjectName
- requestedCommands
- hasFailed
- tags
- values
- links
- develocitySettings
- buildOptions
- environment
properties:
id:
type: string
description: The Build Scan ID.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
sbtVersion:
type: string
description: The sbt version used.
pluginVersion:
type: string
description: The Develocity sbt plugin version used.
rootProjectName:
type: string
description: The name of the root project, as reported by sbt.
requestedCommands:
type: array
items:
type: string
description: The list of requested commands.
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
hasVerificationFailure:
type: boolean
description: 'Set only if the build fails: true when the build has at least one failure classified as "Verification", false otherwise. The Verification classification is meant for failures that are expected within a standard application development lifecycle. They typically represent a problem with the developer’s inputs to the build such as the source code.
'
hasNonVerificationFailure:
type: boolean
description: 'Set only if the build fails: true when the build has at least one failure classified as "Non-verification", false otherwise. The Non-verification classification is meant for failures that are typically not expected within a standard application development lifecycle, such as build configuration failures, dependency resolution failures, and infrastructure failures.
'
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
develocitySettings:
$ref: '#/components/schemas/SbtDevelocitySettings'
buildOptions:
$ref: '#/components/schemas/SbtBuildOptions'
environment:
$ref: '#/components/schemas/BuildAttributesEnvironment'
TestDistributionAgentPoolRegistrationKeyPrefix:
description: A Test Distribution pool-specific agent registration key prefix.
type: object
required:
- keyPrefix
- createdAt
properties:
keyPrefix:
type: string
minLength: 26
maxLength: 26
pattern: ^[a-z2-7]{26}$
description: The registration key prefix.
description:
type: string
maxLength: 100
description: Description of the registration key to help identify it later.
example: Used by xyz
createdAt:
type: string
format: date-time
description: When the key was created
lastUsedAt:
type: string
format: date-time
nullable: true
description: When the key was last used
lastUsedBy:
type: string
nullable: true
description: Who used the key last
revokedAt:
type: string
format: date-time
nullable: true
description: When the key was revoked, a non-null value implies that the key is revoked and can no longer be used to authenticate.
GradleBuildProfileOverview:
type: object
description: The performance profile overview of a Gradle build.
required:
- breakdown
properties:
breakdown:
$ref: '#/components/schemas/GradleBuildTimeBreakdown'
memoryUsage:
$ref: '#/components/schemas/GradleBuildDaemonJvmMemoryUsage'
GradleEnterpriseVersion:
title: GradleEnterpriseVersion
type: object
description: '**This object is deprecated, use `DevelocityVersion` instead.**
'
deprecated: true
required:
- string
- year
- release
- patch
properties:
string:
type: string
description: The complete version string of format `YEAR.RELEASE.PATCH`, where the patch component is omitted when `0` (e.g. `2022.3`, `2022.3.1`).
year:
type: integer
description: The gregorian calendar year of the release.
release:
type: integer
description: The sequence number of the release for that year, starting with 1.
minimum: 1
patch:
type: integer
description: The patch level of the release, starting with 0.
minimum: 0
example:
'2022.3':
value:
string: '2022.3'
year: 2022
release: 3
patch: 0
2022.3.1:
value:
string: 2022.3.1
year: 2022
release: 3
patch: 1
MavenPlugin:
type: object
required:
- groupId
- artifactId
- version
- executedGoals
- modules
properties:
groupId:
type: string
description: The plugin group ID.
artifactId:
type: string
description: The plugin artifact ID.
name:
type: string
description: The name of the plugin. May be `null` in cases where this is not defined or captured.
nullable: true
version:
type: string
description: The plugin version.
executedGoals:
type: array
description: The list of executed plugin goals. May be empty if none of the plugin goals are executed in this build.
items:
type: string
modules:
type: array
description: The list of short form coordinates of the modules where the plugin is applied, in the format `groupId:artifactId`.
items:
type: string
goalPrefix:
type: string
description: The prefix defined by the plugin for its goals. Can be `null` if not specified by the plugin.
nullable: true
requiredMavenVersion:
type: string
description: The required Maven version for the plugin. Can be `null` if not specified by the plugin.
nullable: true
GradleBuildCachePerformanceTaskExecution:
type: array
description: A list of executed tasks with performance related information.
items:
$ref: '#/components/schemas/GradleBuildCachePerformanceTaskExecutionEntry'
GradleNetworkActivitySubset:
type: object
properties:
networkRequestCount:
description: This represents the total count of network requests for this subset of requests.
format: int64
type: integer
minimum: 0
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests for this subset of requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies from this subset of requests. It accounts only for the bytes of the files (e.g. POMs, JARs) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files from this subset of requests.
wallClockNetworkRequestTime:
description: The estimate in milliseconds representing the wall clock time spent on network requests during the current build for this subset of requests.
format: int64
type: integer
minimum: 0
NpmNetworkActivity:
type: object
description: Information about the network activity of the build.
required:
- networkRequestCount
- serialNetworkRequestTime
- wallClockNetworkRequestTime
- fileDownloadSize
- fileDownloadCount
properties:
networkRequestCount:
description: This represents the total count of network requests made during dependency resolution.
format: int64
type: integer
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
wallClockNetworkRequestTime:
description: The estimate in milliseconds representing the wall clock time spent on network requests during the current build.
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies. It accounts only for the bytes of the files (e.g. TGZs, pakuments) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files.
methods:
type: object
description: A breakdown of the network activity by HTTP method, when available.
additionalProperties:
$ref: '#/components/schemas/NpmNetworkActivitySubset'
registries:
type: object
description: 'A breakdown of the network activity by registry URL. This is empty when no registries were captured.
'
additionalProperties:
$ref: '#/components/schemas/NpmNetworkActivitySubset'
registryMethods:
type: object
description: A breakdown of the network activity by HTTP method and registry, when available.
additionalProperties:
$ref: '#/components/schemas/NpmNetworkActivitySubset'
MavenGradleEnterpriseSettings:
type: object
description: '**This property is deprecated, use `develocitySettings` instead.**
Settings for Develocity.
'
deprecated: true
properties:
backgroundPublicationEnabled:
type: boolean
description: Indicates whether background Build Scan publication is enabled for the build. `null` if Develocity Maven extension version is < `1.6`. See https://gradle.com/help/maven-extension-configuring-background-uploading.
nullable: true
buildOutputCapturingEnabled:
type: boolean
description: Indicates whether to capture build logging output for the build. `null` if Develocity Maven extension version is < `1.11`. See https://gradle.com/help/maven-extension-capturing-build-and-test-outputs.
nullable: true
goalInputsFileCapturingEnabled:
type: boolean
description: Indicates whether to capture goal input file snapshots for the build. `null` if Develocity Maven extension version is < `1.1`. See https://gradle.com/help/maven-extension-capturing-goal-input-files.
nullable: true
testOutputCapturingEnabled:
type: boolean
description: Indicates whether to capture test logging output for the build. `null` if Develocity Maven extension version is < `1.11`. See https://gradle.com/help/maven-extension-capturing-build-and-test-outputs.
nullable: true
resourceUsageCapturingEnabled:
type: boolean
description: Indicates whether resource usage capturing is enabled for the build. `null` if Develocity Maven extension version is < `1.22`. See https://gradle.com/help/maven-extension-capturing-resource-usage.
nullable: true
MavenBuildCachePerformanceGoalExecutionEntry:
type: object
required:
- goalName
- mojoType
- goalExecutionId
- goalProjectName
- avoidanceOutcome
- duration
- hasFailed
properties:
goalName:
type: string
description: The goal name.
mojoType:
type: string
description: The fully qualified class name of the Mojo that provides the implementation of this goal.
goalExecutionId:
type: string
description: The goal execution ID.
goalProjectName:
type: string
description: The goal project name.
avoidanceOutcome:
type: string
enum:
- avoided_from_local_cache
- avoided_from_remote_cache
- executed_cacheable
- executed_not_cacheable
- executed_unknown_cacheability
- skipped
description: "The avoidance outcome of this task with respect to performance:\n * `avoided_from_local_cache` - Goal whose execution is avoided due to reusing a local build cache entry\n * `avoided_from_remote_cache` - Goal whose execution is avoided due to reusing a remote build cache entry\n * `executed_cacheable` - Goal which is executed but is cacheable\n * `executed_not_cacheable` - Goal which is executed but is not cacheable\n * `executed_unknown_cacheability` - Goal which is executed and whose cacheability cannot be determined\n * `skipped` - Skipped goal\n"
duration:
type: integer
format: int64
description: The goal duration in milliseconds.
fingerprintingDuration:
type: integer
format: int64
description: The goal fingerprinting duration in milliseconds. This duration is part of the complete task execution duration. `null` if the goal is not fingerprinted.
nullable: true
avoidanceSavings:
type: integer
format: int64
description: The goal avoidance savings in milliseconds, which can be negative. Negative values indicate that it takes more time to reuse outputs than it did to create them originally. `null` if the information is not available.
nullable: true
nonCacheabilityCategory:
type: string
enum:
- build_cache_disabled_by_user
- goal_execution_marked_non_cacheable
- goal_not_supported
- no_gradle_enterprise_server_configured
- no_develocity_server_configured
- non_clean_build
- not_entitled
- offline_build
- unknown
- unknown_entitlements
description: "The category of the non-cacheability reason:\n * `build_cache_disabled_by_user` - The build cache is disabled by the user\n * `goal_execution_marked_non_cacheable` - The goal execution is marked as non-cacheable\n * `goal_not_supported` - The goal does not support build caching\n * `no_gradle_enterprise_server_configured` - No Develocity server is configured **Deprecated, use `no_develocity_server_configured` instead**\n * `no_develocity_server_configured` - No Develocity server is configured\n * `non_clean_build` - The `clean` lifecycle is not executed \n * `not_entitled` - The Develocity license entitlements does not allow Maven build caching\n * `offline_build` - The build is run in offline mode\n * `unknown` - Reason for disabled caching is not known\n * `unknown_entitlements` - The Develocity license entitlements cannot be checked\n\n`null` when the goal execution is cacheable or if the information is not available.\n"
nullable: true
nonCacheabilityReason:
type: string
description: The human-readable reason for a non-cacheable goal execution. `null` when the goal execution is cacheable or if the information is not available.
nullable: true
cacheArtifactSize:
type: integer
format: int64
description: 'The number of bytes of the produced or consumed cache artifact.
For a goal execution where the outputs are successfully stored to a local or remote cache, this is the size of the stored cache artifact. For a goal execution where the outputs are successfully loaded from a local or remote cache, this is the size of the loaded cache artifact.
`null` if the goal execution is not cacheable, or if the attempt to store or load the artifact from cache does not succeed.
'
nullable: true
cacheArtifactRejectedReason:
description: "The reason why the cache artifact has been rejected:\n * `artifact_size_too_large` - The size of the artifact is larger than the remote build cache can accept.\n\n`null` if the goal is not cacheable, or if the attempt to store the artifact does not succeed.\n"
nullable: true
type: string
enum:
- artifact_size_too_large
cacheKey:
type: string
description: Build cache key. `null` if no build cache key was computed (e.g. when fingerprinting failed).
nullable: true
hasFailed:
type: boolean
description: True when the goal failed, false otherwise.
MavenModule:
type: object
description: A Maven module.
required:
- name
- groupId
- artifactId
- version
properties:
name:
type: string
description: The name of the module.
groupId:
type: string
description: The group ID of the module.
artifactId:
type: string
description: The artifact ID of the module.
version:
type: string
description: The version of the module.
parent:
type: integer
nullable: true
description: The index of the parent of this Maven module in the MavenModules array. `null` if this module has no parent (i.e. top level project).
GradleRepositoryInstabilitiesCategory:
type: object
description: Dependency network request error metrics for a single error category.
required:
- categoryName
- networkRequestErrorCount
- serialNetworkRequestErrorTime
properties:
categoryName:
type: string
description: 'The identifier of the error category (e.g. `Missing`, `Uncategorized`, `Status: Unauthorized`). New categories may be introduced in the future without a schema change.'
networkRequestErrorCount:
type: integer
format: int64
minimum: 0
description: The number of dependency network requests that failed and were classified under this category.
serialNetworkRequestErrorTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests that failed and were classified under this category. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
TestPerformanceBuildPredictiveTestSelectionSimulationData:
type: object
description: Data related to a Predictive Test Selection simulation (build level).
required:
- wallClockSavingsPotential
- serialTimeSavingsPotential
- workUnitFailuresPredictedCount
- workUnitFailuresMissedCount
- avoidableTestClassesCount
- unavoidableTestClassesCount
- testClassesCountSelectedDueToInsufficientData
properties:
wallClockSavingsPotential:
type: integer
format: int64
description: The PTS wallclock savings potential in milliseconds.
serialTimeSavingsPotential:
type: integer
format: int64
description: The PTS serial time savings potential in milliseconds.
workUnitFailuresPredictedCount:
type: integer
format: int64
description: The number of predicted task failures.
workUnitFailuresMissedCount:
type: integer
format: int64
description: The number of task failures that were missed in the prediction.
avoidableTestClassesCount:
type: integer
format: int64
description: The number test classes that can be avoided by PTS.
unavoidableTestClassesCount:
type: integer
format: int64
description: The number of test classes that cannot be avoided by PTS.
testClassesCountSelectedDueToInsufficientData:
type: integer
format: int64
description: The number of test classes that were selected because of insufficient data.
TestPerformanceBuildPredictiveTestSelectionUsage:
type: object
description: Groups PTS usage data (build level).
required:
- status
- selectionMode
- wallClockSavings
- serialTimeSavings
properties:
status:
$ref: '#/components/schemas/TestAccelerationFeatureUsageStatus'
selectionMode:
$ref: '#/components/schemas/PredictiveTestSelectionMode'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the Predictive Test Selection request, than it would have taken to directly execute the tests.
nullable: true
serialTimeSavings:
type: integer
format: int64
description: The serial time savings in milliseconds. This is the sum of test duration estimates from not selected test classes.
nullable: true
GradleDevelocitySettings:
type: object
description: Settings for Develocity.
properties:
backgroundPublicationEnabled:
type: boolean
description: Indicates whether background Build Scan publication is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.4`. See https://gradle.com/help/gradle-plugin-configuring-background-uploading.
nullable: true
buildOutputCapturingEnabled:
type: boolean
description: Indicates whether build logging output capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.7`. See https://gradle.com/help/gradle-plugin-capturing-build-and-test-outputs.
nullable: true
fileFingerprintCapturingEnabled:
type: boolean
description: Indicates whether file fingerprint capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `2.1`. See https://gradle.com/help/gradle-plugin-capturing-task-input-files/.
nullable: true
testOutputCapturingEnabled:
type: boolean
description: Indicates whether test logging output capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.7`. See https://gradle.com/help/gradle-plugin-capturing-build-and-test-outputs.
nullable: true
resourceUsageCapturingEnabled:
type: boolean
description: Indicates whether resource usage capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `3.18`. See https://gradle.com/help/gradle-plugin-capturing-resource-usage.
nullable: true
taskInputsFileCapturingEnabled:
deprecated: true
type: boolean
description: 'Indicates whether task input file snapshots capturing is enabled for the build. `null` if Gradle version is < `5.0` or Develocity Gradle plugin version is < `2.1`. See https://gradle.com/help/gradle-plugin-capturing-task-input-files.
**This property is deprecated, use `fileFingerprintCapturingEnabled` instead.**
'
nullable: true
GradleBuildCachePerformance:
type: object
description: The build cache performance of a Gradle build.
required:
- id
- buildTime
- effectiveTaskExecutionTime
- effectiveWorkUnitExecutionTime
- serialTaskExecutionTime
- serialWorkUnitExecutionTime
- serializationFactor
- taskExecution
- avoidanceSavingsSummary
- taskAvoidanceSavingsSummary
- workUnitAvoidanceSavingsSummary
properties:
id:
type: string
description: The Build Scan ID.
buildTime:
type: integer
format: int64
description: Wall clock duration of the build in milliseconds.
effectiveTaskExecutionTime:
type: integer
format: int64
description: Wall clock time spent executing tasks in milliseconds. It is the time spent between the start of the first task in the execution phase and the end of the last task of the execution phase, removing any interval where no task is being executed.
effectiveWorkUnitExecutionTime:
type: integer
format: int64
description: Wall clock time spent executing work units (tasks and artifact transforms) in milliseconds. It is the time spent between the start of the first work unit in the execution phase and the end of the last work unit of the execution phase, removing any interval where no work unit is being executed.
serialTaskExecutionTime:
type: integer
format: int64
description: Wall clock time of all task executions in milliseconds. It is the sum of all individual task durations.
serialWorkUnitExecutionTime:
type: integer
format: int64
description: Wall clock time of all work unit executions (tasks and artifact transforms) in milliseconds. It is the sum of all individual work unit durations.
serializationFactor:
type: number
format: double
description: The ratio of `serialWorkUnitExecutionTime` over the `effectiveWorkUnitExecutionTime`. Quantifies the effect of work unit parallelization. A value equal to `1` means that no parallelization occurred. A value greater than `1` means that work units are executed faster due to parallelization.
taskExecution:
$ref: '#/components/schemas/GradleBuildCachePerformanceTaskExecution'
taskFingerprintingSummary:
$ref: '#/components/schemas/GradleBuildCachePerformanceTaskFingerprintingSummary'
workUnitFingerprintingSummary:
$ref: '#/components/schemas/GradleBuildCachePerformanceWorkUnitFingerprintingSummary'
avoidanceSavingsSummary:
$ref: '#/components/schemas/GradleBuildCachePerformanceAvoidanceSavingsSummary'
taskAvoidanceSavingsSummary:
$ref: '#/components/schemas/GradleBuildCachePerformanceTaskAvoidanceSavingsSummary'
workUnitAvoidanceSavingsSummary:
$ref: '#/components/schemas/GradleBuildCachePerformanceWorkUnitAvoidanceSavingsSummary'
buildCaches:
$ref: '#/components/schemas/GradleBuildCachePerformanceBuildCaches'
Build:
type: object
description: A build with common attributes.
required:
- id
- availableAt
- buildToolType
- buildToolVersion
- buildAgentVersion
properties:
id:
type: string
description: The Build Scan ID.
availableAt:
type: integer
format: int64
description: A unix-epoch-time in milliseconds referring to the instant that Develocity completed receiving and processing the build.
buildToolType:
type: string
description: The build tool type of the build.
buildToolVersion:
type: string
description: The build tool version used.
buildAgentVersion:
type: string
description: The build agent version used.
models:
$ref: '#/components/schemas/BuildModels'
ProjectsPage:
type: object
description: A paged list of projects configured for project-level access control in Develocity.
required:
- content
- page
properties:
content:
type: array
description: A list of projects configured for project-level access control in Develocity.
items:
$ref: '#/components/schemas/Project'
page:
$ref: '#/components/schemas/PageMetadata'
BuildAttributesValue:
type: object
description: A Build Scan value.
required:
- name
properties:
name:
type: string
description: The name of the Build Scan value.
value:
type: string
description: The value of the Build Scan value. `null` if the Build Scan value is not set.
NpmAttributes:
type: object
description: The attributes of an npm build.
required:
- id
- buildStartTime
- buildDuration
- npmVersion
- npmAgentVersion
- command
- links
- tags
- values
- hasFailed
properties:
id:
type: string
description: The Build Scan ID.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
exitCode:
type: integer
format: int32
nullable: true
description: The exit code of the npm process.
nodejsVersion:
type: string
description: The Node.js version used.
npmVersion:
type: string
description: The npm version used.
npmAgentVersion:
type: string
description: The version of the Develocity npm agent.
command:
$ref: '#/components/schemas/NpmCommand'
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
user:
type: string
nullable: true
description: The username of the user that ran the build.
host:
type: string
nullable: true
description: The hostname of the user that ran the build, if set.
packageName:
type: string
description: The name of the package. `null` in case of very early build failure.
nullable: true
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
hasVerificationFailure:
type: boolean
description: 'Set only if the build failed: true when the build has at least one failure classified as "Verification", false otherwise. The Verification classification is meant for failures that are expected within a standard application development lifecycle. They typically represent a problem with the developer’s inputs to the build such as the source code.
'
hasNonVerificationFailure:
type: boolean
description: 'Set only if the build failed: true when the build has at least one failure classified as "Non-verification", false otherwise. The Non-verification classification is meant for failures that are typically not expected within a standard application development lifecycle, such as build configuration failures, dependency resolution failures, and infrastructure failures.
'
GradleConfigurationCache:
type: object
description: The configuration cache result of a Gradle build. `null` if configuration cache was not used.
properties:
result:
type: object
nullable: true
$ref: '#/components/schemas/GradleConfigurationCacheResult'
MavenBuildCachePerformance:
type: object
description: The build cache performance of a Maven build.
required:
- id
- buildTime
- effectiveProjectExecutionTime
- serialProjectExecutionTime
- serializationFactor
- goalExecution
- goalFingerprintingSummary
- avoidanceSavingsSummary
properties:
id:
type: string
description: The Build Scan ID.
buildTime:
type: integer
format: int64
description: Wall clock duration of the build in milliseconds.
effectiveProjectExecutionTime:
type: integer
format: int64
description: Wall clock time spent executing projects in milliseconds. It is the time spent between the start of the first project execution and the end of the last project execution, removing any interval where no project is being executed.
serialProjectExecutionTime:
type: integer
format: int64
description: Wall clock time of all project executions in milliseconds. It is the sum of all individual project durations.
serializationFactor:
type: number
format: double
description: The ratio of `serialProjectExecutionTime` over the `effectiveProjectExecutionTime`. Quantifies the effect of project parallelization. A value equal to `1` means that no parallelization occurs. A value greater than `1` means that projects are executed faster due to parallelization.
goalExecution:
$ref: '#/components/schemas/MavenBuildCachePerformanceGoalExecution'
goalFingerprintingSummary:
$ref: '#/components/schemas/MavenBuildCachePerformanceGoalFingerprintingSummary'
avoidanceSavingsSummary:
$ref: '#/components/schemas/MavenBuildCachePerformanceAvoidanceSavingsSummary'
buildCaches:
$ref: '#/components/schemas/MavenBuildCachePerformanceBuildCaches'
GradleResourceUsage:
type: object
properties:
totalMemory:
type: integer
format: int64
description: The physical memory of the system in bytes. Can be `null` if the metrics could not be captured.
nullable: true
total:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
description: 'The resource usage breakdown spanning the entire duration of the build.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the build.
'
nullable: true
nonExecution:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
description: 'The resource usage breakdown spanning the non-execution phase of the build.
This includes the time to start and initialize Gradle and configure the build model (e.g. execute build scripts and plugins).
It also includes the build time of the buildSrc project and included builds contributing to build logic, including the execution of their tasks.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the non-execution phase of the build.
'
nullable: true
execution:
type: object
$ref: '#/components/schemas/ResourceUsageBreakdown'
description: 'The resource usage breakdown spanning the execution phase of the build.
This represents the elapsed time from the start of the execution of the first Gradle task to the end of the build.
Can be `null` if resource usage data is not available, because its capturing was not enabled or no data points were captured for the execution phase of the build.
'
nullable: true
TestDistributionAgentPoolRegistrationKey:
description: A Test Distribution pool-specific agent registration key.
type: object
required:
- key
properties:
key:
type: string
minLength: 52
maxLength: 52
pattern: ^[a-z2-7]{52}$
description: The agent API key.
description:
type: string
maxLength: 100
description: Description of the registration key to help identify it later.
example: Used by xyz
MavenBuildCachePerformanceAvoidanceSavingsSummary:
type: object
description: A breakdown of avoidance savings.
required:
- total
- ratio
- localBuildCache
- remoteBuildCache
properties:
total:
type: integer
format: int64
description: The estimated reduction in serial execution time of the goals due to their outputs being reused in milliseconds.
ratio:
type: number
format: double
description: The ratio of the total avoidance savings against the potential serial execution time (which is the actual serial execution time plus the total avoidance savings). Quantifies the effect of avoidance savings in this build. The bigger the ratio is, the more time is saved when running the build.
localBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the goals due to their outputs being reused from the local build cache in milliseconds.
remoteBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the goals due to their outputs being reused from the remote build cache in milliseconds.
TestPerformanceWorkUnitPredictiveTestSelectionUsage:
type: object
description: Predictive Test Selection related data of a work unit.
required:
- status
- selectionMode
- wallClockSavings
- serialTimeSavings
- nonSelectedTestClassesCount
properties:
status:
$ref: '#/components/schemas/TestAccelerationFeatureUsageStatus'
selectionMode:
$ref: '#/components/schemas/PredictiveTestSelectionMode'
wallClockSavings:
type: integer
format: int64
description: The wall-clock savings in milliseconds, which can be negative. Negative values indicate that it took more time to make the Predictive Test Selection request, than it would have taken to directly execute the tests.
nullable: true
serialTimeSavings:
type: integer
format: int64
description: The serial time savings in milliseconds. This is the sum of test duration estimates from not selected test classes.
nullable: true
nonSelectedTestClassesCount:
type: integer
description: The number of test classes that have not been selected by Predictive Test Selection. Null if Predictive Test Selection was disabled / unavailable.
nullable: true
NpmNetworkActivitySubset:
type: object
properties:
networkRequestCount:
description: This represents the total count of network requests for this subset of requests.
format: int64
type: integer
minimum: 0
serialNetworkRequestTime:
description: The duration in milliseconds representing the sum of times for potentially parallel network requests for this subset of requests. It does not reflect wall clock time but offers a rough estimation of network activity.
format: int64
type: integer
minimum: 0
fileDownloadSize:
type: integer
format: int64
minimum: 0
description: The total number of bytes downloaded for dependencies from this subset of requests. It accounts only for the bytes of the files (e.g. TGZs, pakuments) downloaded and not the total network transfer.
fileDownloadCount:
type: integer
format: int64
minimum: 0
description: The total number of successfully downloaded files from this subset of requests.
wallClockNetworkRequestTime:
description: The estimate in milliseconds representing the wall clock time spent on network requests during the current build for this subset of requests.
format: int64
type: integer
minimum: 0
ResourceUsageBreakdown:
type: object
properties:
allProcessesCpu:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the overall CPU load, expressed as a percentage between 0 and 100.
Can be `null` if the metrics could not be captured.
'
nullable: true
buildProcessCpu:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the CPU load of the build process, expressed as a percentage between 0 and 100.
Can be `null` if the metrics could not be captured.
'
nullable: true
buildChildProcessesCpu:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the CPU load of the descendant processes of the build process, expressed as a percentage between 0 and 100.
Can be `null` if the metrics could not be captured.
'
nullable: true
allProcessesMemory:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for overall memory used all processes, in bytes.
Can be `null` if the metrics could not be captured.
'
nullable: true
buildProcessMemory:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the memory used by the build process, in bytes.
Can be `null` if the metrics could not be captured.
'
nullable: true
buildChildProcessesMemory:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the memory used by the descendant processes of the build process, in bytes.
Can be `null` if the metrics could not be captured.
'
nullable: true
diskReadThroughput:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the disk read throughput, in bytes/s.
Can be `null` if the metrics could not be captured.
'
nullable: true
diskWriteThroughput:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the disk write throughput, in bytes/s.
Can be `null` if the metrics could not be captured.
'
nullable: true
networkUploadThroughput:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the network upload throughput, in bytes/s.
Can be `null` if the metrics could not be captured.
'
nullable: true
networkDownloadThroughput:
type: object
$ref: '#/components/schemas/ResourceUsageMetric'
description: 'The resource usage metrics for the network download throughput, in bytes/s.
Can be `null` if the metrics could not be captured.
'
nullable: true
MavenDevelocitySettings:
type: object
description: Settings for Develocity.
properties:
backgroundPublicationEnabled:
type: boolean
description: Indicates whether background Build Scan publication is enabled for the build. `null` if Develocity Maven extension version is < `1.6`. See https://gradle.com/help/maven-extension-configuring-background-uploading.
nullable: true
buildOutputCapturingEnabled:
type: boolean
description: Indicates whether to capture build logging output for the build. `null` if Develocity Maven extension version is < `1.11`. See https://gradle.com/help/maven-extension-capturing-build-and-test-outputs.
nullable: true
fileFingerprintCapturingEnabled:
type: boolean
description: Indicates whether file fingerprint capturing is enabled for the build. `null` if Develocity Maven extension version is < `1.1`. See https://gradle.com/help/maven-extension-capturing-goal-input-files/.
nullable: true
goalInputsFileCapturingEnabled:
type: boolean
description: 'Indicates whether to capture goal input file snapshots for the build. `null` if Develocity Maven extension version is < `1.1`. See https://gradle.com/help/maven-extension-capturing-goal-input-files.
**This property is deprecated, use `fileFingerprintCapturingEnabled` instead.**
'
nullable: true
deprecated: true
testOutputCapturingEnabled:
type: boolean
description: Indicates whether to capture test logging output for the build. `null` if Develocity Maven extension version is < `1.11`. See https://gradle.com/help/maven-extension-capturing-build-and-test-outputs.
nullable: true
resourceUsageCapturingEnabled:
type: boolean
description: Indicates whether resource usage capturing is enabled for the build. `null` if Develocity Maven extension version is < `1.22`. See https://gradle.com/help/maven-extension-capturing-resource-usage.
nullable: true
GradleBuildOptions:
type: object
description: Gradle build options for this build.
required:
- configurationOnDemandEnabled
- continuousBuildEnabled
- continueOnFailureEnabled
- daemonEnabled
- dryRunEnabled
- excludedTasks
- maxNumberOfGradleWorkers
- offlineModeEnabled
- parallelProjectExecutionEnabled
- refreshDependenciesEnabled
- rerunTasksEnabled
properties:
buildCacheEnabled:
type: boolean
description: Indicates whether the build cache is enabled for the build. `null` if Gradle version is < `3.1` or Develocity Gradle plugin version is < `1.3`. See https://docs.gradle.org/current/javadoc/org/gradle/StartParameter.html#isBuildCacheEnabled--.
nullable: true
configurationCacheEnabled:
type: boolean
description: Indicates whether the configuration cache is enabled for the build. `null` if Gradle version is < `6.6` or Develocity Gradle plugin version is < `3.4`. See https://docs.gradle.org/current/userguide/configuration_cache.html.
nullable: true
configurationOnDemandEnabled:
type: boolean
description: Indicates whether configuration on demand mode is enabled for the build. See https://docs.gradle.org/current/userguide/configuration_on_demand.html.
continuousBuildEnabled:
type: boolean
description: Indicates whether continuous build mode is running for the build. See https://docs.gradle.org/current/userguide/command_line_interface.html#sec:continuous_build.
continueOnFailureEnabled:
type: boolean
description: Indicates whether continue on failure mode is set for the build. See https://docs.gradle.org/current/userguide/command_line_interface.html#sec:continue_build_on_failure.
daemonEnabled:
type: boolean
description: Indicates whether the build is run with the Gradle Daemon. See https://docs.gradle.org/current/userguide/gradle_daemon.html.
dryRunEnabled:
type: boolean
description: Indicates whether the dry run flag is set for the build. See https://docs.gradle.org/current/userguide/command_line_interface.html#sec:command_line_execution_options.
excludedTasks:
type: array
items:
type: string
description: The list of excluded tasks. See https://docs.gradle.org/current/userguide/command_line_interface.html#sec:excluding_tasks_from_the_command_line.
fileSystemWatchingEnabled:
type: boolean
description: Indicates whether file system watching is enabled for the build. `null` if Gradle version is < `6.6` or Develocity Gradle plugin version is < `3.4`. See https://docs.gradle.org/current/userguide/file_system_watching.html.
nullable: true
isolatedProjectsEnabled:
type: boolean
description: Indicates whether the 'Isolated Projects' feature was enabled for the build. May be `null` if Gradle version is < `8.3` or Develocity Gradle plugin version is < `3.15`. See https://docs.gradle.org/current/userguide/isolated_projects.html.
nullable: true
maxNumberOfGradleWorkers:
type: integer
description: The maximum number of build workers used to run the build. See https://docs.gradle.org/current/userguide/command_line_interface.html#sec:command_line_performance.
offlineModeEnabled:
type: boolean
description: Indicates whether the offline mode is set for the build. See https://docs.gradle.org/current/userguide/dependency_caching.html#sec:controlling-dependency-caching-command-line.
parallelProjectExecutionEnabled:
type: boolean
description: Indicates whether parallel project execution is enabled for the build. See https://docs.gradle.org/current/userguide/configuration_on_demand.html#sec:parallel_execution.
refreshDependenciesEnabled:
type: boolean
description: Indicates whether the build is set to refresh all dependencies in the dependency cache. See https://docs.gradle.org/current/userguide/dependency_caching.html#sec:refreshing-dependencies.
rerunTasksEnabled:
type: boolean
description: Indicates whether the build is forced to run all the tasks, ignoring any up-to-date checks. https://docs.gradle.org/current/userguide/command_line_interface.html#sec:rerun_tasks.
GradleConfigurationCacheStoreResult:
type: object
description: The configuration cache store result of a Gradle build.
required:
- duration
- hasFailed
properties:
duration:
type: integer
format: int64
description: The duration of the configuration cache store operation in milliseconds. Does not include dependency resolution time.
hasFailed:
type: boolean
description: True when the configuration cache store operation fails, false otherwise.
GradleDeprecationUsage:
type: object
required:
- owner
properties:
contextualAdvice:
type: string
description: Advice on how to avoid using the deprecated feature, that is specific to this particular usage. `null` when no advice is available.
nullable: true
owner:
$ref: '#/components/schemas/GradleDeprecationOwner'
description: Owner of the deprecation usage. `null` when no owner is available.
GradleBuildCachePerformanceAvoidanceSavingsSummary:
type: object
description: '**This is deprecated, use `taskAvoidanceSavingsSummary` instead.**
A breakdown of avoidance savings.
'
deprecated: true
required:
- total
- ratio
- upToDate
- localBuildCache
- remoteBuildCache
properties:
total:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused in milliseconds.
ratio:
type: number
format: double
description: The ratio of the total avoidance savings against the potential serial execution time (which is the actual serial execution time plus the total avoidance savings). Quantifies the effect of avoidance savings in this build. The bigger the ratio is, the more time is saved when running the build.
upToDate:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to build incrementalism in milliseconds.
localBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused from the local build cache in milliseconds.
remoteBuildCache:
type: integer
format: int64
description: The estimated reduction in serial execution time of the tasks due to their outputs being reused from the remote build cache in milliseconds.
BuildTestPerformanceTests:
type: object
description: Test-related data of a build.
required:
- testClassesCount
properties:
testClassesCount:
type: integer
description: Number of test classes of a build.
PythonAttributes:
type: object
description: The attributes of a Python build.
required:
- id
- buildStartTime
- buildDuration
- pythonVersion
- pythonAgentVersion
- command
- links
- tags
- values
- hasFailed
properties:
id:
type: string
description: The Build Scan ID.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
exitCode:
type: integer
format: int32
description: The exit code of the Python process.
exception:
type: string
nullable: true
description: The exception message thrown by the Python process, if any.
pythonVersion:
type: string
description: The Python version used in the build.
pythonAgentVersion:
type: string
description: The version of the Develocity Python agent.
command:
type: array
items:
type: string
description: The command and arguments requested in the build.
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
user:
type: string
nullable: true
description: The username of the user that ran the build.
host:
type: string
nullable: true
description: The hostname of the user that ran the build, if set.
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
projectName:
type: string
description: The name of the project. `null` in case of very early build failure.
nullable: true
MavenPlugins:
type: object
properties:
plugins:
type: array
description: A list of applied plugins in a Maven build.
items:
$ref: '#/components/schemas/MavenPlugin'
MavenBuildCachePerformanceBuildCaches:
type: object
description: Information about the local and remote build caches used in the build, if it is configured in the build. `null` if the build cache configuration cannot be captured (e.g. very early build failure).
nullable: true
required:
- overhead
properties:
local:
$ref: '#/components/schemas/MavenBuildCachePerformanceBuildCacheLocalInfo'
remote:
$ref: '#/components/schemas/MavenBuildCachePerformanceBuildCacheRemoteInfo'
overhead:
$ref: '#/components/schemas/MavenBuildCachePerformanceBuildCacheOverhead'
ProjectGroupsPage:
type: object
description: A paged list of project groups configured for project-level access control in Develocity.
required:
- content
- page
properties:
content:
type: array
description: A list of project groups configured for project-level access control in Develocity.
items:
$ref: '#/components/schemas/ProjectGroup'
page:
$ref: '#/components/schemas/PageMetadata'
BazelAttributes:
type: object
description: The attributes of a Bazel build.
required:
- id
- buildStartTime
- buildDuration
- bazelVersion
- command
- tags
- values
- links
- hasFailed
properties:
id:
type: string
description: The Build Scan ID.
invocationId:
type: string
nullable: true
description: The Bazel-provided build invocation ID. Null when not known.
buildStartTime:
type: integer
format: int64
description: The time when the build starts, as milliseconds since Epoch.
buildDuration:
type: integer
format: int64
description: The duration of the build, as milliseconds.
bazelVersion:
type: string
description: The Bazel version used.
command:
type: string
description: The Bazel command used (e.g. build, test, run).
targetPatterns:
type: array
items:
type: string
description: The list of requested target patterns.
exitCode:
type: integer
format: int32
nullable: true
description: The exit code of the Bazel process.
user:
type: string
nullable: true
description: The BUILD_USER workspace value, if set.
host:
type: string
nullable: true
description: The BUILD_HOST workspace value, if set.
tags:
type: array
items:
type: string
description: The list of Build Scan tags.
values:
type: array
items:
$ref: '#/components/schemas/BuildAttributesValue'
description: The list of Build Scan values.
links:
type: array
items:
$ref: '#/components/schemas/BuildAttributesLink'
description: The list of Build Scan links.
moduleName:
type: string
description: The name of the module, or workspace. `null` in case of very early build failure.
nullable: true
hasFailed:
type: boolean
description: True when the build fails, false otherwise.
responses:
UnexpectedError:
description: The server encountered an unexpected error.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
UnexpectedErrorResponse:
$ref: '#/components/examples/UnexpectedErrorApiProblemExample'
BadRequestError:
description: The request cannot be fulfilled due to a problem.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
RequestValidationApiProblemResponse:
$ref: '#/components/examples/RequestValidationApiProblemExample'
AccessTokenForbidden:
description: The current user or authenticating access token does not have sufficient access or lifetime to create the requested access token.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
MissingPermissionResponse:
value:
type: urn:gradle:enterprise:api:problems:forbidden
title: Missing requested permission.
detail: The permissions [administerGe] were requested for the access token, but were not granted to this user.
status: 403
MissingProjectResponse:
value:
type: urn:gradle:enterprise:api:problems:forbidden
title: Missing requested projects.
detail: The projects [project-a, project-b] were requested for the access token, but were not assigned to this user.
status: 403
InsufficientLifetimeResponse:
value:
type: urn:gradle:enterprise:api:problems:forbidden
title: Requested expiration exceeds current.
detail: The access token used to authenticate this request expires at 2024-02-14T01:44:51.225701Z, which is sooner than the requested expiration time of PT12H from now.
status: 403
UnauthenticatedError:
description: Something was wrong with the request.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
RequestValidationApiProblemResponse:
$ref: '#/components/examples/UnauthenticatedExample'
NotFoundError:
description: The referenced resource either does not exist or the permissions to know about it are missing.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
NotFoundResponse:
$ref: '#/components/examples/NotFoundApiProblemExample'
NotReadyError:
description: The server is not ready to handle the request.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
IngestionNotCompletedResponse:
$ref: '#/components/examples/IngestionNotCompletedApiProblemExample'
ForbiddenError:
description: The authenticated user has insufficient permissions.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
ForbiddenUserResponse:
$ref: '#/components/examples/ForbiddenUserExample'
UnauthorizedOrNotFoundError:
description: No API key was specified in the request, the key has been revoked, or the user bearing the key lacks permissions for this operation.
SuccessfulVersionResponse:
description: Successful version response
content:
application/json:
schema:
$ref: '#/components/schemas/DevelocityVersion'
BadRequest:
description: The request body is malformed or contains invalid values for at least one of the properties.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
CapabilityValidationProblemResponse:
$ref: '#/components/examples/CapabilityValidationProblemExample'
NodeNotSignedInError:
description: The node was not signed in with Develocity.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ApiProblem'
examples:
NodeNotSignedInResponse:
$ref: '#/components/examples/NodeNotSignedInProblemExample'
examples:
UnexpectedErrorApiProblemExample:
value:
type: urn:gradle:enterprise:api:problems:unexpected-error
title: Encountered an internal server error.
detail: 'The ingestion of build 9r4d13f0r3v3r failed.
'
status: 500
CapabilityValidationProblemExample:
value:
type: urn:gradle:enterprise:validation
title: Invalid request parameters
detail: One or more capabilities have an invalid format.
status: 400
UnauthenticatedExample:
value:
type: urn:gradle:enterprise:api:problems:client-error
title: Something was wrong with the request
status: 401
NodeNotSignedInProblemExample:
value:
type: urn:gradle:enterprise:api:problems:node-not-signed-in
title: Node with name not-signed-in-node1 must be signed-in before this operation can be performed.
status: 503
RequestValidationApiProblemExample:
value:
type: urn:gradle:enterprise:api:problems:validation
title: Request validation failed.
detail: 'Numeric instance is lower than the required minimum (minimum: 1, found: 0) (Additional info: Query parameter: maxWaitSecs).
'
status: 400
IngestionNotCompletedApiProblemExample:
value:
type: urn:gradle:enterprise:api:problems:build-processing-incomplete
title: Build processing is incomplete.
detail: 'The data of build 9r4d13f0r3v3r is not yet available for viewing. Please try again later.
'
status: 503
ForbiddenUserExample:
value:
type: urn:gradle:enterprise:forbidden
title: Insufficient permissions
detail: User must have the Administer Projects permission to access this endpoint.
status: 403
NotFoundApiProblemExample:
value:
type: urn:gradle:enterprise:api:problems:not-found
title: The requested resource is not found or the permissions to know about it are missing.
status: 404
securitySchemes:
DevelocityAccessKeyOrToken:
type: http
scheme: bearer
bearerFormat: Bearer <>
description: "All requests require a Develocity access key or token as a bearer token. \nGiven an access key of `l3an7wk3j4ze5v4mi7rvgjf2p7g44nvlswg4cpvdonjs7rzd4kmq`, the required header is `Authorization: Bearer l3an7wk3j4ze5v4mi7rvgjf2p7g44nvlswg4cpvdonjs7rzd4kmq`.\n\nPlease consult the [Develocity API User Manual](https://gradle.com/help/api-access-control) for guidance on how to provision access keys or tokens and check user permissions.\n"