@@ -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/SecurityFindingsData'
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+ SecurityFindingsAttributes:
47289+ description: The JSON object containing all attributes of the security finding.
47290+ properties:
47291+ attributes:
47292+ additionalProperties: {}
47293+ description: The custom attributes of the security finding.
47294+ example:
47295+ severity: high
47296+ status: open
47297+ type: object
47298+ tags:
47299+ description: List of tags associated with the security finding.
47300+ example:
47301+ - team:platform
47302+ - env:prod
47303+ items:
47304+ type: string
47305+ type: array
47306+ timestamp:
47307+ description: The Unix timestamp at which the detection changed for the resource.
47308+ Same value as @detection_changed_at.
47309+ example: 1765901760
47310+ format: int64
47311+ type: integer
47312+ type: object
47313+ SecurityFindingsData:
47314+ description: A single security finding.
47315+ properties:
47316+ attributes:
47317+ $ref: '#/components/schemas/SecurityFindingsAttributes'
47318+ id:
47319+ description: The unique ID of the security finding.
47320+ example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==
47321+ type: string
47322+ type:
47323+ $ref: '#/components/schemas/SecurityFindingsDataType'
47324+ type: object
47325+ SecurityFindingsDataType:
47326+ default: finding
47327+ description: The type of the security finding resource.
47328+ enum:
47329+ - finding
47330+ example: finding
47331+ type: string
47332+ x-enum-varnames:
47333+ - FINDING
47334+ SecurityFindingsLinks:
47335+ description: Links for pagination.
47336+ properties:
47337+ next:
47338+ description: Link for the next page of results. Note that paginated requests
47339+ can also be made using the POST endpoint.
47340+ example: https://app.datadoghq.com/api/v2/security/findings?page[cursor]=eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==&page[limit]=25
47341+ type: string
47342+ type: object
47343+ SecurityFindingsMeta:
47344+ description: Metadata about the response.
47345+ properties:
47346+ elapsed:
47347+ description: The time elapsed in milliseconds.
47348+ example: 548
47349+ format: int64
47350+ type: integer
47351+ page:
47352+ $ref: '#/components/schemas/SecurityFindingsPage'
47353+ request_id:
47354+ description: The identifier of the request.
47355+ example: pddv1ChZwVlMxMUdYRFRMQ1lyb3B4MGNYbFlnIi0KHQu35LDbucx
47356+ type: string
47357+ status:
47358+ $ref: '#/components/schemas/SecurityFindingsStatus'
47359+ type: object
47360+ SecurityFindingsPage:
47361+ description: Pagination information.
47362+ properties:
47363+ after:
47364+ description: The cursor used to get the next page of results.
47365+ example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=
47366+ type: string
47367+ type: object
47368+ SecurityFindingsSearchRequest:
47369+ description: The request body for searching security findings.
47370+ properties:
47371+ data:
47372+ $ref: '#/components/schemas/SecurityFindingsSearchRequestData'
47373+ type: object
47374+ SecurityFindingsSearchRequestData:
47375+ description: Request data for searching security findings.
47376+ properties:
47377+ attributes:
47378+ $ref: '#/components/schemas/SecurityFindingsSearchRequestDataAttributes'
47379+ type: object
47380+ SecurityFindingsSearchRequestDataAttributes:
47381+ description: Request attributes for searching security findings.
47382+ properties:
47383+ filter:
47384+ default: '*'
47385+ description: The search query following log search syntax.
47386+ example: '@severity:(critical OR high) @status:open team:platform'
47387+ type: string
47388+ page:
47389+ $ref: '#/components/schemas/SecurityFindingsSearchRequestPage'
47390+ sort:
47391+ $ref: '#/components/schemas/SecurityFindingsSort'
47392+ type: object
47393+ SecurityFindingsSearchRequestPage:
47394+ description: Pagination attributes for the search request.
47395+ properties:
47396+ cursor:
47397+ description: Get the next page of results with a cursor provided in the
47398+ previous query.
47399+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
47400+ type: string
47401+ limit:
47402+ default: 10
47403+ description: The maximum number of security findings in the response.
47404+ example: 25
47405+ format: int64
47406+ maximum: 150
47407+ minimum: 1
47408+ type: integer
47409+ type: object
47410+ SecurityFindingsSort:
47411+ default: -@detection_changed_at
47412+ description: The sort parameters when querying security findings.
47413+ enum:
47414+ - '@detection_changed_at'
47415+ - -@detection_changed_at
47416+ type: string
47417+ x-enum-varnames:
47418+ - DETECTION_CHANGED_AT_ASC
47419+ - DETECTION_CHANGED_AT_DESC
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:
@@ -58490,6 +58645,8 @@ components:
5849058645 apm_service_catalog_read: View service catalog and service definitions.
5849158646 apm_service_catalog_write: Add, modify, and delete service catalog definitions
5849258647 when those definitions are maintained by Datadog.
58648+ appsec_vm_read: View infrastructure, application code, and library vulnerability
58649+ findings.
5849358650 billing_read: View your organization's billing information.
5849458651 cases_read: View Cases.
5849558652 cases_write: Create and update cases.
@@ -80641,6 +80798,98 @@ paths:
8064180798 operator: OR
8064280799 permissions:
8064380800 - security_monitoring_cws_agent_rules_read
80801+ /api/v2/security/findings:
80802+ get:
80803+ description: 'Get a list of security findings that match a search query.
80804+
80805+
80806+ This endpoint requires one of the following permissions:
80807+
80808+ - `security_monitoring_findings_read`
80809+
80810+ - `appsec_vm_read`
80811+
80812+
80813+ ### Query Syntax
80814+
80815+
80816+ This endpoint uses the logs query syntax. Findings attributes (living in the
80817+ custom. namespace) are prefixed by @ when queried. Tags are queried without
80818+ a prefix.
80819+
80820+
80821+ Example: `@severity:(critical OR high) @status:open team:platform`'
80822+ operationId: ListSecurityFindings
80823+ parameters:
80824+ - description: The search query following log search syntax.
80825+ example: '@severity:(critical OR high) @status:open team:platform'
80826+ in: query
80827+ name: filter[query]
80828+ required: false
80829+ schema:
80830+ default: '*'
80831+ type: string
80832+ - description: Get the next page of results with a cursor provided in the previous
80833+ query.
80834+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
80835+ in: query
80836+ name: page[cursor]
80837+ required: false
80838+ schema:
80839+ type: string
80840+ - description: The maximum number of findings in the response.
80841+ example: 25
80842+ in: query
80843+ name: page[limit]
80844+ required: false
80845+ schema:
80846+ default: 10
80847+ format: int64
80848+ maximum: 150
80849+ minimum: 1
80850+ type: integer
80851+ - description: Sorts by @detection_changed_at.
80852+ in: query
80853+ name: sort
80854+ required: false
80855+ schema:
80856+ $ref: '#/components/schemas/SecurityFindingsSort'
80857+ responses:
80858+ '200':
80859+ content:
80860+ application/json:
80861+ schema:
80862+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
80863+ description: OK
80864+ '400':
80865+ $ref: '#/components/responses/BadRequestResponse'
80866+ '403':
80867+ $ref: '#/components/responses/ForbiddenResponse'
80868+ '429':
80869+ $ref: '#/components/responses/TooManyRequestsResponse'
80870+ security:
80871+ - apiKeyAuth: []
80872+ appKeyAuth: []
80873+ - AuthZ:
80874+ - security_monitoring_findings_read
80875+ - AuthZ:
80876+ - appsec_vm_read
80877+ summary: List security findings
80878+ tags:
80879+ - Security Monitoring
80880+ x-pagination:
80881+ cursorParam: page[cursor]
80882+ cursorPath: meta.page.after
80883+ limitParam: page[limit]
80884+ resultsPath: data
80885+ x-permission:
80886+ operator: OR
80887+ permissions:
80888+ - security_monitoring_findings_read
80889+ - appsec_vm_read
80890+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
80891+
80892+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8064480893 /api/v2/security/findings/cases:
8064580894 delete:
8064680895 description: 'Detach security findings from their case.
@@ -80860,6 +81109,70 @@ paths:
8086081109 x-unstable: '**Note**: This endpoint is in beta and is subject to change.
8086181110
8086281111 Please check the documentation regularly for updates.'
81112+ /api/v2/security/findings/search:
81113+ post:
81114+ description: 'Get a list of security findings that match a search query.
81115+
81116+
81117+ This endpoint requires one of the following permissions:
81118+
81119+ - `security_monitoring_findings_read`
81120+
81121+ - `appsec_vm_read`
81122+
81123+
81124+ ### Query Syntax
81125+
81126+
81127+ The API uses the logs query syntax. Findings attributes (living in the custom.
81128+ namespace) are prefixed by @ when queried. Tags are queried without a prefix.
81129+
81130+
81131+ Example: `@severity:(critical OR high) @status:open team:platform`'
81132+ operationId: SearchSecurityFindings
81133+ requestBody:
81134+ content:
81135+ application/json:
81136+ schema:
81137+ $ref: '#/components/schemas/SecurityFindingsSearchRequest'
81138+ required: true
81139+ responses:
81140+ '200':
81141+ content:
81142+ application/json:
81143+ schema:
81144+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
81145+ description: OK
81146+ '400':
81147+ $ref: '#/components/responses/BadRequestResponse'
81148+ '403':
81149+ $ref: '#/components/responses/ForbiddenResponse'
81150+ '429':
81151+ $ref: '#/components/responses/TooManyRequestsResponse'
81152+ security:
81153+ - apiKeyAuth: []
81154+ appKeyAuth: []
81155+ - AuthZ:
81156+ - security_monitoring_findings_read
81157+ - AuthZ:
81158+ - appsec_vm_read
81159+ summary: Search security findings
81160+ tags:
81161+ - Security Monitoring
81162+ x-codegen-request-body-name: body
81163+ x-pagination:
81164+ cursorParam: body.data.attributes.page.cursor
81165+ cursorPath: meta.page.after
81166+ limitParam: body.data.attributes.page.limit
81167+ resultsPath: data
81168+ x-permission:
81169+ operator: OR
81170+ permissions:
81171+ - security_monitoring_findings_read
81172+ - appsec_vm_read
81173+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
81174+
81175+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8086381176 /api/v2/security/sboms:
8086481177 get:
8086581178 description: 'Get a list of assets SBOMs for an organization.
0 commit comments