@@ -30705,6 +30705,19 @@ components:
3070530705 example: /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2
3070630706 type: string
3070730707 type: object
30708+ ListSecurityFindingsResponse:
30709+ description: The expected response schema when listing security findings.
30710+ properties:
30711+ data:
30712+ description: Array of security findings matching the search query.
30713+ items:
30714+ $ref: '#/components/schemas/SecurityFinding'
30715+ type: array
30716+ links:
30717+ $ref: '#/components/schemas/SecurityFindingsLinks'
30718+ meta:
30719+ $ref: '#/components/schemas/SecurityFindingsMeta'
30720+ type: object
3070830721 ListTagsResponse:
3070930722 description: List tags response.
3071030723 properties:
@@ -47272,6 +47285,148 @@ components:
4727247285 meta:
4727347286 $ref: '#/components/schemas/SecurityFilterMeta'
4727447287 type: object
47288+ SecurityFinding:
47289+ description: A single security finding.
47290+ properties:
47291+ attributes:
47292+ $ref: '#/components/schemas/SecurityFindingAttributes'
47293+ id:
47294+ description: The unique ID of the security finding.
47295+ example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==
47296+ type: string
47297+ type:
47298+ $ref: '#/components/schemas/SecurityFindingType'
47299+ type: object
47300+ SecurityFindingAttributes:
47301+ description: The JSON object containing all attributes of the security finding.
47302+ properties:
47303+ attributes:
47304+ additionalProperties: {}
47305+ description: The custom attributes of the security finding.
47306+ example:
47307+ severity: high
47308+ status: open
47309+ type: object
47310+ tags:
47311+ description: List of tags associated with the security finding.
47312+ example:
47313+ - team:platform
47314+ - env:prod
47315+ items:
47316+ type: string
47317+ type: array
47318+ timestamp:
47319+ description: The Unix timestamp at which the detection changed for the resource.
47320+ Same value as @detection_changed_at.
47321+ example: 1765901760
47322+ format: int64
47323+ type: integer
47324+ type: object
47325+ SecurityFindingSort:
47326+ default: -@detection_changed_at
47327+ description: The sort parameters when querying security findings.
47328+ enum:
47329+ - '@detection_changed_at'
47330+ - -@detection_changed_at
47331+ type: string
47332+ x-enum-varnames:
47333+ - DETECTION_CHANGED_AT_ASC
47334+ - DETECTION_CHANGED_AT_DESC
47335+ SecurityFindingType:
47336+ default: finding
47337+ description: The type of the security finding resource.
47338+ enum:
47339+ - finding
47340+ example: finding
47341+ type: string
47342+ x-enum-varnames:
47343+ - FINDING
47344+ SecurityFindingsLinks:
47345+ description: Links for pagination.
47346+ properties:
47347+ next:
47348+ description: Link for the next page of results. Note that paginated requests
47349+ can also be made using the POST endpoint.
47350+ example: https://app.datadoghq.com/api/v2/security/findings?page[cursor]=eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==&page[limit]=25
47351+ type: string
47352+ type: object
47353+ SecurityFindingsMeta:
47354+ description: Metadata about the response.
47355+ properties:
47356+ elapsed:
47357+ description: The time elapsed in milliseconds.
47358+ example: 548
47359+ format: int64
47360+ type: integer
47361+ page:
47362+ $ref: '#/components/schemas/SecurityFindingsPage'
47363+ request_id:
47364+ description: The identifier of the request.
47365+ example: pddv1ChZwVlMxMUdYRFRMQ1lyb3B4MGNYbFlnIi0KHQu35LDbucx
47366+ type: string
47367+ status:
47368+ $ref: '#/components/schemas/SecurityFindingsStatus'
47369+ type: object
47370+ SecurityFindingsPage:
47371+ description: Pagination information.
47372+ properties:
47373+ after:
47374+ description: The cursor used to get the next page of results.
47375+ example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=
47376+ type: string
47377+ type: object
47378+ SecurityFindingsSearchRequest:
47379+ description: The request body for searching security findings.
47380+ properties:
47381+ data:
47382+ $ref: '#/components/schemas/SecurityFindingsSearchRequestData'
47383+ type: object
47384+ SecurityFindingsSearchRequestData:
47385+ description: Request data for searching security findings.
47386+ properties:
47387+ attributes:
47388+ $ref: '#/components/schemas/SecurityFindingsSearchRequestDataAttributes'
47389+ type: object
47390+ SecurityFindingsSearchRequestDataAttributes:
47391+ description: Request attributes for searching security findings.
47392+ properties:
47393+ filter:
47394+ default: '*'
47395+ description: The search query following log search syntax.
47396+ example: '@severity:(critical OR high) @status:open team:platform'
47397+ type: string
47398+ page:
47399+ $ref: '#/components/schemas/SecurityFindingsSearchRequestPage'
47400+ sort:
47401+ $ref: '#/components/schemas/SecurityFindingSort'
47402+ type: object
47403+ SecurityFindingsSearchRequestPage:
47404+ description: Pagination attributes for the search request.
47405+ properties:
47406+ cursor:
47407+ description: Get the next page of results with a cursor provided in the
47408+ previous query.
47409+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
47410+ type: string
47411+ limit:
47412+ default: 10
47413+ description: The maximum number of security findings in the response.
47414+ example: 25
47415+ format: int64
47416+ maximum: 150
47417+ minimum: 1
47418+ type: integer
47419+ type: object
47420+ SecurityFindingsStatus:
47421+ description: The status of the response.
47422+ enum:
47423+ - done
47424+ - timeout
47425+ example: done
47426+ type: string
47427+ x-enum-varnames:
47428+ - DONE
47429+ - TIMEOUT
4727547430 SecurityMonitoringFilter:
4727647431 description: The rule's suppression filter.
4727747432 properties:
@@ -58406,6 +58561,8 @@ components:
5840658561 apm_service_catalog_read: View service catalog and service definitions.
5840758562 apm_service_catalog_write: Add, modify, and delete service catalog definitions
5840858563 when those definitions are maintained by Datadog.
58564+ appsec_vm_read: View infrastructure, application code, and library vulnerability
58565+ findings.
5840958566 billing_read: View your organization's billing information.
5841058567 cases_read: View Cases.
5841158568 cases_write: Create and update cases.
@@ -80557,6 +80714,98 @@ paths:
8055780714 operator: OR
8055880715 permissions:
8055980716 - security_monitoring_cws_agent_rules_read
80717+ /api/v2/security/findings:
80718+ get:
80719+ description: 'Get a list of security findings that match a search query.
80720+
80721+
80722+ This endpoint requires one of the following permissions:
80723+
80724+ - `security_monitoring_findings_read`
80725+
80726+ - `appsec_vm_read`
80727+
80728+
80729+ ### Query Syntax
80730+
80731+
80732+ This endpoint uses the logs query syntax. Findings attributes (living in the
80733+ custom. namespace) are prefixed by @ when queried. Tags are queried without
80734+ a prefix.
80735+
80736+
80737+ Example: `@severity:(critical OR high) @status:open team:platform`'
80738+ operationId: ListSecurityFindings
80739+ parameters:
80740+ - description: The search query following log search syntax.
80741+ example: '@severity:(critical OR high) @status:open team:platform'
80742+ in: query
80743+ name: filter[query]
80744+ required: false
80745+ schema:
80746+ default: '*'
80747+ type: string
80748+ - description: Get the next page of results with a cursor provided in the previous
80749+ query.
80750+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
80751+ in: query
80752+ name: page[cursor]
80753+ required: false
80754+ schema:
80755+ type: string
80756+ - description: The maximum number of findings in the response.
80757+ example: 25
80758+ in: query
80759+ name: page[limit]
80760+ required: false
80761+ schema:
80762+ default: 10
80763+ format: int64
80764+ maximum: 150
80765+ minimum: 1
80766+ type: integer
80767+ - description: Sorts by @detection_changed_at.
80768+ in: query
80769+ name: sort
80770+ required: false
80771+ schema:
80772+ $ref: '#/components/schemas/SecurityFindingSort'
80773+ responses:
80774+ '200':
80775+ content:
80776+ application/json:
80777+ schema:
80778+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
80779+ description: OK
80780+ '400':
80781+ $ref: '#/components/responses/BadRequestResponse'
80782+ '403':
80783+ $ref: '#/components/responses/ForbiddenResponse'
80784+ '429':
80785+ $ref: '#/components/responses/TooManyRequestsResponse'
80786+ security:
80787+ - apiKeyAuth: []
80788+ appKeyAuth: []
80789+ - AuthZ:
80790+ - security_monitoring_findings_read
80791+ - AuthZ:
80792+ - appsec_vm_read
80793+ summary: List security findings
80794+ tags:
80795+ - Security Monitoring
80796+ x-pagination:
80797+ cursorParam: page[cursor]
80798+ cursorPath: meta.page.after
80799+ limitParam: page[limit]
80800+ resultsPath: data
80801+ x-permission:
80802+ operator: OR
80803+ permissions:
80804+ - security_monitoring_findings_read
80805+ - appsec_vm_read
80806+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
80807+
80808+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8056080809 /api/v2/security/findings/cases:
8056180810 delete:
8056280811 description: 'Detach security findings from their case.
@@ -80776,6 +81025,70 @@ paths:
8077681025 x-unstable: '**Note**: This endpoint is in beta and is subject to change.
8077781026
8077881027 Please check the documentation regularly for updates.'
81028+ /api/v2/security/findings/search:
81029+ post:
81030+ description: 'Get a list of security findings that match a search query.
81031+
81032+
81033+ This endpoint requires one of the following permissions:
81034+
81035+ - `security_monitoring_findings_read`
81036+
81037+ - `appsec_vm_read`
81038+
81039+
81040+ ### Query Syntax
81041+
81042+
81043+ The API uses the logs query syntax. Findings attributes (living in the custom.
81044+ namespace) are prefixed by @ when queried. Tags are queried without a prefix.
81045+
81046+
81047+ Example: `@severity:(critical OR high) @status:open team:platform`'
81048+ operationId: SearchSecurityFindings
81049+ requestBody:
81050+ content:
81051+ application/json:
81052+ schema:
81053+ $ref: '#/components/schemas/SecurityFindingsSearchRequest'
81054+ required: true
81055+ responses:
81056+ '200':
81057+ content:
81058+ application/json:
81059+ schema:
81060+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
81061+ description: OK
81062+ '400':
81063+ $ref: '#/components/responses/BadRequestResponse'
81064+ '403':
81065+ $ref: '#/components/responses/ForbiddenResponse'
81066+ '429':
81067+ $ref: '#/components/responses/TooManyRequestsResponse'
81068+ security:
81069+ - apiKeyAuth: []
81070+ appKeyAuth: []
81071+ - AuthZ:
81072+ - security_monitoring_findings_read
81073+ - AuthZ:
81074+ - appsec_vm_read
81075+ summary: Search security findings
81076+ tags:
81077+ - Security Monitoring
81078+ x-codegen-request-body-name: body
81079+ x-pagination:
81080+ cursorParam: body.data.attributes.page.cursor
81081+ cursorPath: meta.page.after
81082+ limitParam: body.data.attributes.page.limit
81083+ resultsPath: data
81084+ x-permission:
81085+ operator: OR
81086+ permissions:
81087+ - security_monitoring_findings_read
81088+ - appsec_vm_read
81089+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
81090+
81091+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8077981092 /api/v2/security/sboms:
8078081093 get:
8078181094 description: 'Get a list of assets SBOMs for an organization.
0 commit comments