diff --git a/docs/reference/api/openapi-v1.yaml b/docs/reference/api/openapi-v1.yaml
index b208edca..36167bc5 100644
--- a/docs/reference/api/openapi-v1.yaml
+++ b/docs/reference/api/openapi-v1.yaml
@@ -248,7 +248,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the team to retrieve mappings for
in: path
name: uuid
@@ -509,7 +510,9 @@ paths:
When creating projects, parentUUID or parentName and
parentVersion can place the new project under a parent,
projectTags can apply tags, and isLatest can mark it as
- the latest version. The isActive parameter sets the project's active
+ the latest version. accessTeams can grant teams access to the new project,
+ following the same rules as accessTeams when creating a project via
+ PUT /api/v1/project. The isActive parameter sets the project's active
state whenever it is provided, including when the target project already exists, so
clients should send it only when they intend to change that state.
[{\"name\": \"\
+ Team A\"}, {\"uuid\": \"...\"}]."
autoCreate:
type: boolean
default: false
@@ -596,7 +604,9 @@ paths:
When creating projects, parentUUID or parentName and
parentVersion can place the new project under a parent,
projectTags can apply tags, and isLatest can mark it as
- the latest version. The isActive parameter sets the project's active
+ the latest version. accessTeams can grant teams access to the new project,
+ following the same rules as accessTeams when creating a project via
+ PUT /api/v1/project. The isActive parameter sets the project's active
state whenever it is provided, including when the target project already exists, so
clients should send it only when they intend to change that state.
@@ -931,7 +941,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: "The MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384,\
\ SHA3-512, BLAKE2b-256, BLAKE2b-384, BLAKE2b-512, BLAKE3, Streebog-256,\
\ or Streebog-512 hash of the component to retrieve"
@@ -1007,7 +1018,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The group of the component
in: query
name: group
@@ -1104,7 +1116,13 @@ paths:
- component
/v1/component/project/{projectUuid}/dependencyGraph/{componentUuids}:
get:
- description: Requires permission VIEW_PORTFOLIO
+ deprecated: true + description: |- +Requires permission VIEW_PORTFOLIO.
+
+ Deprecated! Use /api/v2/projects/{uuid}/dependency-graph
+ for the graph structure, and /api/v2/projects/{uuid}/components for component details.
+
Requires permission VIEW_PORTFOLIO
+ deprecated: true + description: |- +Requires permission VIEW_PORTFOLIO
+
+ Deprecated! Use /api/v2/projects/{uuid}/dependency-graph
+ of the component's project for the graph structure,
+ and /api/v2/projects/{uuid}/components for component details.
+
Requires permission VIEW_PORTFOLIO
+ deprecated: true + description: |- +Requires permission VIEW_PORTFOLIO
+
+ Deprecated! Use /api/v2/projects/{uuid}/dependency-graph
+ for the graph structure, and /api/v2/projects/{uuid}/components for component details.
+
Requires permission VIEW_PORTFOLIO
+ deprecated: true + description: |- +Requires permission VIEW_PORTFOLIO
+Deprecated! Use /api/v2/projects instead.
pageSize.
@@ -5244,7 +5316,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name to filter on. Must be exact match.
in: query
name: name
@@ -5310,7 +5383,10 @@ paths:
- project
/v1/project/concise/{uuid}/children:
get:
- description: Requires permission VIEW_PORTFOLIO
+ deprecated: true + description: |- +Requires permission VIEW_PORTFOLIO
+Deprecated! Use /api/v2/projects?parent_uuid={uuid} instead.
pageSize.
@@ -5349,7 +5425,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: UUID of the project
in: path
name: uuid
@@ -5529,7 +5606,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The tag to query on
in: path
name: tag
@@ -5610,7 +5688,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the project which descendants will be excluded
in: path
name: uuid
@@ -5831,7 +5910,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the project to get the children from
in: path
name: uuid
@@ -5916,7 +5996,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The classifier to query on
in: path
name: classifier
@@ -6021,7 +6102,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The tag to query on
in: path
name: tag
@@ -6101,6 +6183,10 @@ paths:
$ref: "#/components/schemas/ProblemDetails"
description: Access to the requested project is forbidden
"404":
+ content:
+ application/problem+json:
+ schema:
+ $ref: "#/components/schemas/ProblemDetails"
description: The project or project property could not be found
security:
- ApiKeyAuth: []
@@ -6138,6 +6224,10 @@ paths:
$ref: "#/components/schemas/ProblemDetails"
description: Access to the requested project is forbidden
"404":
+ content:
+ application/problem+json:
+ schema:
+ $ref: "#/components/schemas/ProblemDetails"
description: The project could not be found
security:
- ApiKeyAuth: []
@@ -6178,7 +6268,11 @@ paths:
$ref: "#/components/schemas/ProblemDetails"
description: Access to the requested project is forbidden
"404":
- description: The project could not be found
+ content:
+ application/problem+json:
+ schema:
+ $ref: "#/components/schemas/ProblemDetails"
+ description: The project or project property could not be found
security:
- ApiKeyAuth: []
- BearerAuth: []
@@ -6218,6 +6312,10 @@ paths:
$ref: "#/components/schemas/ProblemDetails"
description: Access to the requested project is forbidden
"404":
+ content:
+ application/problem+json:
+ schema:
+ $ref: "#/components/schemas/ProblemDetails"
description: The project could not be found
"409":
description: A property with the specified project/group/name combination
@@ -6270,7 +6368,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
responses:
"200":
content:
@@ -6424,7 +6523,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The type of repositories to retrieve
in: path
name: type
@@ -6569,7 +6669,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the project
in: path
name: uuid
@@ -6795,7 +6896,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
responses:
"200":
content:
@@ -6917,7 +7019,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name of the tag to get collection projects for
in: path
name: name
@@ -7029,7 +7132,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name of the tag to get notification rules for
in: path
name: name
@@ -7177,7 +7281,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name of the tag to get policies for.
in: path
name: name
@@ -7325,7 +7430,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name of the tag to get projects for.
in: path
name: name
@@ -7475,7 +7581,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Name of the tag to get vulnerabilities for.
in: path
name: name
@@ -7565,7 +7672,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
responses:
"200":
content:
@@ -7802,7 +7910,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
responses:
"200":
content:
@@ -8638,7 +8747,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Optionally includes suppressed violations
in: query
name: suppressed
@@ -8826,7 +8936,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the component
in: path
name: uuid
@@ -8911,7 +9022,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the project
in: path
name: uuid
@@ -8996,7 +9108,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
responses:
"200":
content:
@@ -9114,7 +9227,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: The UUID of the component to retrieve vulnerabilities for
in: path
name: uuid
@@ -9372,7 +9486,8 @@ paths:
schema:
type: string
enum:
- - "asc, desc"
+ - asc
+ - desc
- description: Optional case-insensitive substring match on project name.
in: query
name: searchText
@@ -9949,6 +10064,15 @@ components:
BomSubmitRequest:
type: object
properties:
+ accessTeams:
+ type: array
+ description: Teams to grant access to the project when it is created via
+ autoCreate. Either uuid or name of a team must be specified. Only teams
+ which the authenticated principal is a member of can be assigned. Principals
+ with ACCESS_MANAGEMENT permission can assign any team. Ignored when the
+ project already exists.
+ items:
+ $ref: "#/components/schemas/Team"
autoCreate:
type: boolean
bom:
@@ -10727,22 +10851,67 @@ components:
CreateNotificationRuleRequest:
type: object
properties:
+ enabled:
+ type: boolean
+ filterExpression:
+ type: string
+ maxLength: 2048
+ minLength: 0
level:
type: string
enum:
- INFORMATIONAL
- WARNING
- ERROR
+ logSuccessfulPublish:
+ type: boolean
name:
type: string
minLength: 1
+ notifyChildren:
+ type: boolean
+ notifyOn:
+ type: array
+ items:
+ type: string
+ enum:
+ - CONFIGURATION
+ - DATASOURCE_MIRRORING
+ - REPOSITORY
+ - INTEGRATION
+ - FILE_SYSTEM
+ - ANALYZER
+ - NEW_VULNERABILITY
+ - NEW_VULNERABLE_DEPENDENCY
+ - VULNERABILITY_RETRACTED
+ - PROJECT_AUDIT_CHANGE
+ - BOM_CONSUMED
+ - BOM_PROCESSED
+ - BOM_PROCESSING_FAILED
+ - BOM_VALIDATION_FAILED
+ - VEX_CONSUMED
+ - VEX_PROCESSED
+ - POLICY_VIOLATION
+ - PROJECT_CREATED
+ - USER_CREATED
+ - USER_DELETED
+ - NEW_VULNERABILITIES_SUMMARY
+ - NEW_POLICY_VIOLATIONS_SUMMARY
+ uniqueItems: true
publisher:
$ref: "#/components/schemas/Publisher"
+ publisherConfig:
+ type: string
scope:
type: string
enum:
- SYSTEM
- PORTFOLIO
+ tags:
+ type: array
+ items:
+ $ref: "#/components/schemas/Tag"
+ uniqueItems: true
required:
- level
- name
@@ -10912,24 +11081,73 @@ components:
CreateScheduledNotificationRuleRequest:
type: object
properties:
+ enabled:
+ type: boolean
+ filterExpression:
+ type: string
+ maxLength: 2048
+ minLength: 0
level:
type: string
enum:
- INFORMATIONAL
- WARNING
- ERROR
+ logSuccessfulPublish:
+ type: boolean
name:
type: string
maxLength: 255
minLength: 1
pattern: "^[\\p{IsWhite_Space}\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]*$"
+ notifyChildren:
+ type: boolean
+ notifyOn:
+ type: array
+ items:
+ type: string
+ enum:
+ - CONFIGURATION
+ - DATASOURCE_MIRRORING
+ - REPOSITORY
+ - INTEGRATION
+ - FILE_SYSTEM
+ - ANALYZER
+ - NEW_VULNERABILITY
+ - NEW_VULNERABLE_DEPENDENCY
+ - VULNERABILITY_RETRACTED
+ - PROJECT_AUDIT_CHANGE
+ - BOM_CONSUMED
+ - BOM_PROCESSED
+ - BOM_PROCESSING_FAILED
+ - BOM_VALIDATION_FAILED
+ - VEX_CONSUMED
+ - VEX_PROCESSED
+ - POLICY_VIOLATION
+ - PROJECT_CREATED
+ - USER_CREATED
+ - USER_DELETED
+ - NEW_VULNERABILITIES_SUMMARY
+ - NEW_POLICY_VIOLATIONS_SUMMARY
+ uniqueItems: true
publisher:
$ref: "#/components/schemas/Publisher"
+ publisherConfig:
+ type: string
+ scheduleCron:
+ type: string
+ scheduleSkipUnchanged:
+ type: boolean
scope:
type: string
enum:
- SYSTEM
- PORTFOLIO
+ tags:
+ type: array
+ items:
+ $ref: "#/components/schemas/Tag"
+ uniqueItems: true
required:
- level
- name
diff --git a/docs/reference/api/openapi-v2.yaml b/docs/reference/api/openapi-v2.yaml
index 11ef70ea..797b7327 100644
--- a/docs/reference/api/openapi-v2.yaml
+++ b/docs/reference/api/openapi-v2.yaml
@@ -41,6 +41,25 @@ info:
instead of exact counts (type `EXACT`). Which type to expect is usually
documented in the operation's description.
+ ## Filtering
+
+ Items in a collection can be filtered using query parameters.
+ When multiple filter parameters are given, an item must match all of them.
+
+ Filters that accept multiple values take them as repeated parameters,
+ e.g. `?