@@ -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 logs 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.
@@ -80542,6 +80699,98 @@ paths:
8054280699 operator: OR
8054380700 permissions:
8054480701 - security_monitoring_cws_agent_rules_read
80702+ /api/v2/security/findings:
80703+ get:
80704+ description: 'Get a list of security findings that match a search query.
80705+
80706+
80707+ This endpoint requires one of the following permissions:
80708+
80709+ - `security_monitoring_findings_read`
80710+
80711+ - `appsec_vm_read`
80712+
80713+
80714+ ### Query Syntax
80715+
80716+
80717+ This endpoint uses the logs query syntax. Findings attributes (living in the
80718+ custom. namespace) are prefixed by @ when queried. Tags are queried without
80719+ a prefix.
80720+
80721+
80722+ Example: `@severity:(critical OR high) @status:open team:platform`'
80723+ operationId: ListSecurityFindings
80724+ parameters:
80725+ - description: The search query following logs syntax.
80726+ example: '@severity:(critical OR high) @status:open team:platform'
80727+ in: query
80728+ name: filter[query]
80729+ required: false
80730+ schema:
80731+ default: '*'
80732+ type: string
80733+ - description: Get the next page of results with a cursor provided in the previous
80734+ query.
80735+ example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==
80736+ in: query
80737+ name: page[cursor]
80738+ required: false
80739+ schema:
80740+ type: string
80741+ - description: The maximum number of findings in the response.
80742+ example: 25
80743+ in: query
80744+ name: page[limit]
80745+ required: false
80746+ schema:
80747+ default: 10
80748+ format: int64
80749+ maximum: 150
80750+ minimum: 1
80751+ type: integer
80752+ - description: Sorts by @detection_changed_at.
80753+ in: query
80754+ name: sort
80755+ required: false
80756+ schema:
80757+ $ref: '#/components/schemas/SecurityFindingSort'
80758+ responses:
80759+ '200':
80760+ content:
80761+ application/json:
80762+ schema:
80763+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
80764+ description: OK
80765+ '400':
80766+ $ref: '#/components/responses/BadRequestResponse'
80767+ '403':
80768+ $ref: '#/components/responses/ForbiddenResponse'
80769+ '429':
80770+ $ref: '#/components/responses/TooManyRequestsResponse'
80771+ security:
80772+ - apiKeyAuth: []
80773+ appKeyAuth: []
80774+ - AuthZ:
80775+ - security_monitoring_findings_read
80776+ - AuthZ:
80777+ - appsec_vm_read
80778+ summary: List security findings
80779+ tags:
80780+ - Security Monitoring
80781+ x-pagination:
80782+ cursorParam: page[cursor]
80783+ cursorPath: meta.page.after
80784+ limitParam: page[limit]
80785+ resultsPath: data
80786+ x-permission:
80787+ operator: OR
80788+ permissions:
80789+ - security_monitoring_findings_read
80790+ - appsec_vm_read
80791+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
80792+
80793+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8054580794 /api/v2/security/findings/cases:
8054680795 delete:
8054780796 description: 'Detach security findings from their case.
@@ -80761,6 +81010,70 @@ paths:
8076181010 x-unstable: '**Note**: This endpoint is in beta and is subject to change.
8076281011
8076381012 Please check the documentation regularly for updates.'
81013+ /api/v2/security/findings/search:
81014+ post:
81015+ description: 'Get a list of security findings that match a search query.
81016+
81017+
81018+ This endpoint requires one of the following permissions:
81019+
81020+ - `security_monitoring_findings_read`
81021+
81022+ - `appsec_vm_read`
81023+
81024+
81025+ ### Query Syntax
81026+
81027+
81028+ The API uses the logs query syntax. Findings attributes (living in the custom.
81029+ namespace) are prefixed by @ when queried. Tags are queried without a prefix.
81030+
81031+
81032+ Example: `@severity:(critical OR high) @status:open team:platform`'
81033+ operationId: SearchSecurityFindings
81034+ requestBody:
81035+ content:
81036+ application/json:
81037+ schema:
81038+ $ref: '#/components/schemas/SecurityFindingsSearchRequest'
81039+ required: true
81040+ responses:
81041+ '200':
81042+ content:
81043+ application/json:
81044+ schema:
81045+ $ref: '#/components/schemas/ListSecurityFindingsResponse'
81046+ description: OK
81047+ '400':
81048+ $ref: '#/components/responses/BadRequestResponse'
81049+ '403':
81050+ $ref: '#/components/responses/ForbiddenResponse'
81051+ '429':
81052+ $ref: '#/components/responses/TooManyRequestsResponse'
81053+ security:
81054+ - apiKeyAuth: []
81055+ appKeyAuth: []
81056+ - AuthZ:
81057+ - security_monitoring_findings_read
81058+ - AuthZ:
81059+ - appsec_vm_read
81060+ summary: Search security findings
81061+ tags:
81062+ - Security Monitoring
81063+ x-codegen-request-body-name: body
81064+ x-pagination:
81065+ cursorParam: body.data.attributes.page.cursor
81066+ cursorPath: meta.page.after
81067+ limitParam: body.data.attributes.page.limit
81068+ resultsPath: data
81069+ x-permission:
81070+ operator: OR
81071+ permissions:
81072+ - security_monitoring_findings_read
81073+ - appsec_vm_read
81074+ x-unstable: '**Note**: This endpoint is in beta and subject to change.
81075+
81076+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
8076481077 /api/v2/security/sboms:
8076581078 get:
8076681079 description: 'Get a list of assets SBOMs for an organization.
0 commit comments