@@ -30917,6 +30917,19 @@ components:
3091730917 example: /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2
3091830918 type: string
3091930919 type: object
30920+ ListSecurityFindingsResponse:
30921+ description: The expected response schema when listing security findings.
30922+ properties:
30923+ data:
30924+ description: Array of security findings matching the search query.
30925+ items:
30926+ $ref: '#/components/schemas/SecurityFindingsData'
30927+ type: array
30928+ links:
30929+ $ref: '#/components/schemas/SecurityFindingsLinks'
30930+ meta:
30931+ $ref: '#/components/schemas/SecurityFindingsMeta'
30932+ type: object
3092030933 ListTagsResponse:
3092130934 description: List tags response.
3092230935 properties:
@@ -47811,6 +47824,148 @@ components:
4781147824 meta:
4781247825 $ref: '#/components/schemas/SecurityFilterMeta'
4781347826 type: object
47827+ SecurityFindingsAttributes:
47828+ description: The JSON object containing all attributes of the security finding.
47829+ properties:
47830+ attributes:
47831+ additionalProperties: {}
47832+ description: The custom attributes of the security finding.
47833+ example:
47834+ severity: high
47835+ status: open
47836+ type: object
47837+ tags:
47838+ description: List of tags associated with the security finding.
47839+ example:
47840+ - team:platform
47841+ - env:prod
47842+ items:
47843+ type: string
47844+ type: array
47845+ timestamp:
47846+ description: The Unix timestamp at which the detection changed for the resource.
47847+ Same value as @detection_changed_at.
47848+ example: 1765901760
47849+ format: int64
47850+ type: integer
47851+ type: object
47852+ SecurityFindingsData:
47853+ description: A single security finding.
47854+ properties:
47855+ attributes:
47856+ $ref: '#/components/schemas/SecurityFindingsAttributes'
47857+ id:
47858+ description: The unique ID of the security finding.
47859+ example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==
47860+ type: string
47861+ type:
47862+ $ref: '#/components/schemas/SecurityFindingsDataType'
47863+ type: object
47864+ SecurityFindingsDataType:
47865+ default: finding
47866+ description: The type of the security finding resource.
47867+ enum:
47868+ - finding
47869+ example: finding
47870+ type: string
47871+ x-enum-varnames:
47872+ - FINDING
47873+ SecurityFindingsLinks:
47874+ description: Links for pagination.
47875+ properties:
47876+ next:
47877+ description: Link for the next page of results. Note that paginated requests
47878+ can also be made using the POST endpoint.
47879+ example: https://app.datadoghq.com/api/v2/security/findings?page[cursor]=eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==&page[limit]=25
47880+ type: string
47881+ type: object
47882+ SecurityFindingsMeta:
47883+ description: Metadata about the response.
47884+ properties:
47885+ elapsed:
47886+ description: The time elapsed in milliseconds.
47887+ example: 548
47888+ format: int64
47889+ type: integer
47890+ page:
47891+ $ref: '#/components/schemas/SecurityFindingsPage'
47892+ request_id:
47893+ description: The identifier of the request.
47894+ example: pddv1ChZwVlMxMUdYRFRMQ1lyb3B4MGNYbFlnIi0KHQu35LDbucx
47895+ type: string
47896+ status:
47897+ $ref: '#/components/schemas/SecurityFindingsStatus'
47898+ type: object
47899+ SecurityFindingsPage:
47900+ description: Pagination information.
47901+ properties:
47902+ after:
47903+ description: The cursor used to get the next page of results.
47904+ example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=
47905+ type: string
47906+ type: object
47907+ SecurityFindingsSearchRequest:
47908+ description: The request body for searching security findings.
47909+ properties:
47910+ data:
47911+ $ref: '#/components/schemas/SecurityFindingsSearchRequestData'
47912+ type: object
47913+ SecurityFindingsSearchRequestData:
47914+ description: Request data for searching security findings.
47915+ properties:
47916+ attributes:
47917+ $ref: '#/components/schemas/SecurityFindingsSearchRequestDataAttributes'
47918+ type: object
47919+ SecurityFindingsSearchRequestDataAttributes:
47920+ description: Request attributes for searching security findings.
47921+ properties:
47922+ filter:
47923+ default: '*'
47924+ description: The search query following log search syntax.
47925+ example: '@severity:(critical OR high) @status:open team:platform'
47926+ type: string
47927+ page:
47928+ $ref: '#/components/schemas/SecurityFindingsSearchRequestPage'
47929+ sort:
47930+ $ref: '#/components/schemas/SecurityFindingsSort'
47931+ type: object
47932+ SecurityFindingsSearchRequestPage:
47933+ description: Pagination attributes for the search request.
47934+ properties:
47935+ cursor:
47936+ description: Get the next page of results with a cursor provided in the
47937+ previous query.
47938+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
47939+ type: string
47940+ limit:
47941+ default: 10
47942+ description: The maximum number of security findings in the response.
47943+ example: 25
47944+ format: int64
47945+ maximum: 150
47946+ minimum: 1
47947+ type: integer
47948+ type: object
47949+ SecurityFindingsSort:
47950+ default: -@detection_changed_at
47951+ description: The sort parameters when querying security findings.
47952+ enum:
47953+ - '@detection_changed_at'
47954+ - -@detection_changed_at
47955+ type: string
47956+ x-enum-varnames:
47957+ - DETECTION_CHANGED_AT_ASC
47958+ - DETECTION_CHANGED_AT_DESC
47959+ SecurityFindingsStatus:
47960+ description: The status of the response.
47961+ enum:
47962+ - done
47963+ - timeout
47964+ example: done
47965+ type: string
47966+ x-enum-varnames:
47967+ - DONE
47968+ - TIMEOUT
4781447969 SecurityMonitoringFilter:
4781547970 description: The rule's suppression filter.
4781647971 properties:
@@ -59411,6 +59566,8 @@ components:
5941159566 apm_service_catalog_read: View service catalog and service definitions.
5941259567 apm_service_catalog_write: Add, modify, and delete service catalog definitions
5941359568 when those definitions are maintained by Datadog.
59569+ appsec_vm_read: View infrastructure, application code, and library vulnerability
59570+ findings.
5941459571 billing_read: View your organization's billing information.
5941559572 cases_read: View Cases.
5941659573 cases_write: Create and update cases.
@@ -82013,6 +82170,98 @@ paths:
8201382170 operator: OR
8201482171 permissions:
8201582172 - security_monitoring_cws_agent_rules_read
82173+ /api/v2/security/findings:
82174+ get:
82175+ description: 'Get a list of security findings that match a search query.
82176+
82177+
82178+ This endpoint requires one of the following permissions:
82179+
82180+ - `security_monitoring_findings_read`
82181+
82182+ - `appsec_vm_read`
82183+
82184+
82185+ ### Query Syntax
82186+
82187+
82188+ This endpoint uses the logs query syntax. Findings attributes (living in the
82189+ custom. namespace) are prefixed by @ when queried. Tags are queried without
82190+ a prefix.
82191+
82192+
82193+ Example: `@severity:(critical OR high) @status:open team:platform`'
82194+ operationId: ListSecurityFindings
82195+ parameters:
82196+ - description: The search query following log search syntax.
82197+ example: '@severity:(critical OR high) @status:open team:platform'
82198+ in: query
82199+ name: filter[query]
82200+ required: false
82201+ schema:
82202+ default: '*'
82203+ type: string
82204+ - description: Get the next page of results with a cursor provided in the previous
82205+ query.
82206+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
82207+ in: query
82208+ name: page[cursor]
82209+ required: false
82210+ schema:
82211+ type: string
82212+ - description: The maximum number of findings in the response.
82213+ example: 25
82214+ in: query
82215+ name: page[limit]
82216+ required: false
82217+ schema:
82218+ default: 10
82219+ format: int64
82220+ maximum: 150
82221+ minimum: 1
82222+ type: integer
82223+ - description: Sorts by @detection_changed_at.
82224+ in: query
82225+ name: sort
82226+ required: false
82227+ schema:
82228+ $ref: '#/components/schemas/SecurityFindingsSort'
82229+ responses:
82230+ '200':
82231+ content:
82232+ application/json:
82233+ schema:
82234+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
82235+ description: OK
82236+ '400':
82237+ $ref: '#/components/responses/BadRequestResponse'
82238+ '403':
82239+ $ref: '#/components/responses/ForbiddenResponse'
82240+ '429':
82241+ $ref: '#/components/responses/TooManyRequestsResponse'
82242+ security:
82243+ - apiKeyAuth: []
82244+ appKeyAuth: []
82245+ - AuthZ:
82246+ - security_monitoring_findings_read
82247+ - AuthZ:
82248+ - appsec_vm_read
82249+ summary: List security findings
82250+ tags:
82251+ - Security Monitoring
82252+ x-pagination:
82253+ cursorParam: page[cursor]
82254+ cursorPath: meta.page.after
82255+ limitParam: page[limit]
82256+ resultsPath: data
82257+ x-permission:
82258+ operator: OR
82259+ permissions:
82260+ - security_monitoring_findings_read
82261+ - appsec_vm_read
82262+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
82263+
82264+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8201682265 /api/v2/security/findings/cases:
8201782266 delete:
8201882267 description: 'Detach security findings from their case.
@@ -82232,6 +82481,70 @@ paths:
8223282481 x-unstable: '**Note**: This endpoint is in beta and is subject to change.
8223382482
8223482483 Please check the documentation regularly for updates.'
82484+ /api/v2/security/findings/search:
82485+ post:
82486+ description: 'Get a list of security findings that match a search query.
82487+
82488+
82489+ This endpoint requires one of the following permissions:
82490+
82491+ - `security_monitoring_findings_read`
82492+
82493+ - `appsec_vm_read`
82494+
82495+
82496+ ### Query Syntax
82497+
82498+
82499+ The API uses the logs query syntax. Findings attributes (living in the custom.
82500+ namespace) are prefixed by @ when queried. Tags are queried without a prefix.
82501+
82502+
82503+ Example: `@severity:(critical OR high) @status:open team:platform`'
82504+ operationId: SearchSecurityFindings
82505+ requestBody:
82506+ content:
82507+ application/json:
82508+ schema:
82509+ $ref: '#/components/schemas/SecurityFindingsSearchRequest'
82510+ required: true
82511+ responses:
82512+ '200':
82513+ content:
82514+ application/json:
82515+ schema:
82516+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
82517+ description: OK
82518+ '400':
82519+ $ref: '#/components/responses/BadRequestResponse'
82520+ '403':
82521+ $ref: '#/components/responses/ForbiddenResponse'
82522+ '429':
82523+ $ref: '#/components/responses/TooManyRequestsResponse'
82524+ security:
82525+ - apiKeyAuth: []
82526+ appKeyAuth: []
82527+ - AuthZ:
82528+ - security_monitoring_findings_read
82529+ - AuthZ:
82530+ - appsec_vm_read
82531+ summary: Search security findings
82532+ tags:
82533+ - Security Monitoring
82534+ x-codegen-request-body-name: body
82535+ x-pagination:
82536+ cursorParam: body.data.attributes.page.cursor
82537+ cursorPath: meta.page.after
82538+ limitParam: body.data.attributes.page.limit
82539+ resultsPath: data
82540+ x-permission:
82541+ operator: OR
82542+ permissions:
82543+ - security_monitoring_findings_read
82544+ - appsec_vm_read
82545+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
82546+
82547+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8223582548 /api/v2/security/sboms:
8223682549 get:
8223782550 description: 'Get a list of assets SBOMs for an organization.
0 commit comments