Skip to content

Commit 4904971

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit a5ffad8 of spec repo
1 parent 42f8411 commit 4904971

15 files changed

Lines changed: 1285 additions & 0 deletions

.generator/schemas/v2/openapi.yaml

Lines changed: 302 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58040,6 +58040,191 @@ components:
5804058040
- type
5804158041
- attributes
5804258042
type: object
58043+
NetworkHealthInsight:
58044+
description: A single network health insight describing a service-to-service connectivity issue.
58045+
properties:
58046+
attributes:
58047+
$ref: "#/components/schemas/NetworkHealthInsightAttributes"
58048+
id:
58049+
description: Unique identifier for this network health insight.
58050+
example: example-insight-id
58051+
type: string
58052+
type:
58053+
$ref: "#/components/schemas/NetworkHealthInsightsType"
58054+
required:
58055+
- type
58056+
- id
58057+
- attributes
58058+
type: object
58059+
NetworkHealthInsightAttributes:
58060+
description: Detailed attributes of a network health insight.
58061+
properties:
58062+
account_id:
58063+
description: AWS account identifier where the certificate is located. Only set for `tls-cert` insights.
58064+
example: "123456789012"
58065+
type: string
58066+
certificate_id:
58067+
description: ARN or identifier of the certificate. Only set for `tls-cert` insights.
58068+
example: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f"
58069+
type: string
58070+
certificate_lifetime_percent:
58071+
description: |-
58072+
Percentage of the certificate's validity period that has elapsed, ranging from 0 to 100.
58073+
Only set for `tls-cert` insights.
58074+
example: 96.7
58075+
format: double
58076+
type: number
58077+
client_region:
58078+
description: AWS region where the client is located. Only set for `tls-cert` insights.
58079+
example: us-west-2
58080+
type: string
58081+
client_service:
58082+
description: |-
58083+
Name of the service making the request (DNS query or TLS-secured connection).
58084+
Set to `N/A` when the client service cannot be determined.
58085+
example: network-logger
58086+
type: string
58087+
days_until_expiration:
58088+
description: |-
58089+
Number of days remaining until the certificate expires. Negative values indicate the
58090+
certificate has already expired. Only set for `tls-cert` insights.
58091+
example: 3
58092+
format: int64
58093+
type: integer
58094+
dns_query:
58095+
description: Domain name that was being resolved when the DNS failure occurred. Only set for `dns` insights.
58096+
example: kafka-broker.internal.domain.com
58097+
type: string
58098+
dns_server:
58099+
description: DNS server that received the failing query. Only set for `dns` insights.
58100+
example: cluster-dns
58101+
type: string
58102+
domain_name:
58103+
description: Domain name covered by the certificate. Only set for `tls-cert` insights.
58104+
example: api.example.com
58105+
type: string
58106+
failure_magnitude:
58107+
description: |-
58108+
Count of failed events observed during the query window. Only set for `dns`, `tcp`,
58109+
and `security-group` insights.
58110+
example: 150
58111+
format: int64
58112+
minimum: 0
58113+
type: integer
58114+
failure_rate:
58115+
description: |-
58116+
Percentage of requests that failed during the query window, ranging from 0 to 100.
58117+
Only set for `dns`, `tcp`, and `security-group` insights.
58118+
example: 91
58119+
format: double
58120+
maximum: 100
58121+
minimum: 0
58122+
type: number
58123+
failure_type:
58124+
$ref: "#/components/schemas/NetworkHealthInsightFailureType"
58125+
loadbalancer_id:
58126+
description: ARN of the load balancer using the certificate. Only set for `tls-cert` insights.
58127+
example: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188"
58128+
type: string
58129+
server_region:
58130+
description: AWS region where the server or load balancer is located. Only set for `tls-cert` insights.
58131+
example: us-east-1
58132+
type: string
58133+
server_service:
58134+
description: Name of the target service the client was trying to reach.
58135+
example: kafka
58136+
type: string
58137+
total_requests:
58138+
description: |-
58139+
Total number of requests observed during the query window. Provides context for
58140+
`failure_magnitude` and `failure_rate`. Only set for `dns`, `tcp`, and `security-group` insights.
58141+
example: 1200
58142+
format: int64
58143+
minimum: 0
58144+
type: integer
58145+
traffic_volume:
58146+
$ref: "#/components/schemas/NetworkHealthInsightTrafficVolume"
58147+
type:
58148+
$ref: "#/components/schemas/NetworkHealthInsightCategory"
58149+
type: object
58150+
NetworkHealthInsightCategory:
58151+
description: |-
58152+
Category of network health insight. Indicates whether the insight relates to a DNS issue (`dns`),
58153+
a TCP issue (`tcp`), a TLS certificate issue (`tls-cert`), or a security group denial (`security-group`).
58154+
enum:
58155+
- dns
58156+
- tcp
58157+
- tls-cert
58158+
- security-group
58159+
example: dns
58160+
type: string
58161+
x-enum-varnames:
58162+
- DNS
58163+
- TCP
58164+
- TLS_CERT
58165+
- SECURITY_GROUP
58166+
NetworkHealthInsightFailureType:
58167+
description: |-
58168+
Specific failure type within the insight category. For DNS insights: `timeout`, `nxdomain`,
58169+
`servfail`, or `general_failure`. For TLS certificate insights: `expired` or `expiring_soon`.
58170+
For security group insights: `denied`.
58171+
enum:
58172+
- timeout
58173+
- nxdomain
58174+
- servfail
58175+
- general_failure
58176+
- expired
58177+
- expiring_soon
58178+
- denied
58179+
example: nxdomain
58180+
type: string
58181+
x-enum-varnames:
58182+
- TIMEOUT
58183+
- NXDOMAIN
58184+
- SERVFAIL
58185+
- GENERAL_FAILURE
58186+
- EXPIRED
58187+
- EXPIRING_SOON
58188+
- DENIED
58189+
NetworkHealthInsightTrafficVolume:
58190+
description: Network traffic volume metrics between the client and server services during the query window.
58191+
properties:
58192+
bytes_read:
58193+
description: Total bytes read from the server to the client during the query window.
58194+
example: 1800000
58195+
format: int64
58196+
type: integer
58197+
bytes_written:
58198+
description: Total bytes written from the client to the server during the query window.
58199+
example: 2500000
58200+
format: int64
58201+
type: integer
58202+
total_traffic:
58203+
description: Sum of bytes written and bytes read across the query window.
58204+
example: 4300000
58205+
format: int64
58206+
type: integer
58207+
type: object
58208+
NetworkHealthInsightsResponse:
58209+
description: Response containing a list of network health insights for the organization.
58210+
properties:
58211+
data:
58212+
description: Array of network health insights returned for the query window.
58213+
items:
58214+
$ref: "#/components/schemas/NetworkHealthInsight"
58215+
type: array
58216+
required:
58217+
- data
58218+
type: object
58219+
NetworkHealthInsightsType:
58220+
default: network-health-insights
58221+
description: The resource type for network health insights. Always `network-health-insights`.
58222+
enum:
58223+
- network-health-insights
58224+
example: network-health-insights
58225+
type: string
58226+
x-enum-varnames:
58227+
- NETWORK_HEALTH_INSIGHTS
5804358228
NodeType:
5804458229
additionalProperties: {}
5804558230
description: A tree-sitter node type definition for a given language, describing the node's structure, subtypes, and fields.
@@ -144715,6 +144900,118 @@ paths:
144715144900
summary: Update the tags for an interface
144716144901
tags:
144717144902
- Network Device Monitoring
144903+
/api/v2/network-health-insights:
144904+
get:
144905+
description: |-
144906+
Return network health insights for the organization within the given time window.
144907+
Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`,
144908+
TLS certificate metrics, and denied security group connections. Each insight
144909+
identifies the client and server services involved, the type of issue, and the
144910+
magnitude of the failure observed during the query window.
144911+
operationId: ListNetworkHealthInsights
144912+
parameters:
144913+
- description: |-
144914+
Unix timestamp (number of seconds since epoch) of the start of the query window.
144915+
If not provided, the start of the query window will be 15 minutes before the `to` timestamp.
144916+
If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`.
144917+
example: "1716800000"
144918+
in: query
144919+
name: from
144920+
required: false
144921+
schema:
144922+
type: string
144923+
- description: |-
144924+
Unix timestamp (number of seconds since epoch) of the end of the query window.
144925+
If not provided, the end of the query window will be the current time.
144926+
If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`.
144927+
example: "1716800900"
144928+
in: query
144929+
name: to
144930+
required: false
144931+
schema:
144932+
type: string
144933+
responses:
144934+
"200":
144935+
content:
144936+
application/json:
144937+
examples:
144938+
default:
144939+
value:
144940+
data:
144941+
- attributes:
144942+
client_service: "network-logger"
144943+
dns_query: "kafka-broker.internal.domain.com"
144944+
dns_server: "cluster-dns"
144945+
failure_magnitude: 150
144946+
failure_rate: 91
144947+
failure_type: "nxdomain"
144948+
server_service: "kafka"
144949+
total_requests: 1200
144950+
traffic_volume:
144951+
bytes_read: 1800000
144952+
bytes_written: 2500000
144953+
total_traffic: 4300000
144954+
type: "dns"
144955+
id: "example-insight-id"
144956+
type: "network-health-insights"
144957+
- attributes:
144958+
account_id: "123456789012"
144959+
certificate_id: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f"
144960+
certificate_lifetime_percent: 96.7
144961+
client_region: "us-west-2"
144962+
client_service: "N/A"
144963+
days_until_expiration: 3
144964+
domain_name: "api.example.com"
144965+
failure_type: "expiring_soon"
144966+
loadbalancer_id: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188"
144967+
server_region: "us-east-1"
144968+
server_service: "web-frontend"
144969+
type: "tls-cert"
144970+
id: "example-cert-insight-id"
144971+
type: "network-health-insights"
144972+
- attributes:
144973+
client_service: "web-frontend"
144974+
failure_magnitude: 85
144975+
failure_rate: 68.5
144976+
failure_type: "denied"
144977+
server_service: "database"
144978+
total_requests: 124
144979+
type: "security-group"
144980+
id: "example-security-group-insight-id"
144981+
type: "network-health-insights"
144982+
schema:
144983+
$ref: "#/components/schemas/NetworkHealthInsightsResponse"
144984+
description: OK
144985+
"400":
144986+
content:
144987+
application/json:
144988+
schema:
144989+
$ref: "#/components/schemas/JSONAPIErrorResponse"
144990+
description: Bad Request
144991+
"403":
144992+
content:
144993+
application/json:
144994+
schema:
144995+
$ref: "#/components/schemas/JSONAPIErrorResponse"
144996+
description: Forbidden
144997+
"429":
144998+
$ref: "#/components/responses/TooManyRequestsResponse"
144999+
"500":
145000+
content:
145001+
application/json:
145002+
schema:
145003+
$ref: "#/components/schemas/JSONAPIErrorResponse"
145004+
description: Internal Server Error
145005+
summary: List network health insights
145006+
tags:
145007+
- Network Health Insights
145008+
x-permission:
145009+
operator: OR
145010+
permissions:
145011+
- network_health_insights_read
145012+
x-unstable: |-
145013+
**Note**: This endpoint is in preview and is subject to change.
145014+
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
144718145015
/api/v2/network/connections/aggregate:
144719145016
get:
144720145017
description: Get all aggregated connections.
@@ -181385,6 +181682,11 @@ tags:
181385181682
- description: |-
181386181683
The Network Device Monitoring API allows you to fetch devices and interfaces and their attributes. See the [Network Device Monitoring page](https://docs.datadoghq.com/network_monitoring/) for more information.
181387181684
name: Network Device Monitoring
181685+
- description: |-
181686+
Analyze network health by surfacing actionable insights for services experiencing connectivity issues.
181687+
Insights are derived from DNS failure data (timeouts, NXDOMAIN, SERVFAIL, general failures),
181688+
TLS certificate health (expired, expiring soon), and security group denials.
181689+
name: Network Health Insights
181388181690
- description: |-
181389181691
Configure OAuth2 clients for Datadog.
181390181692
Supports RFC 7591 Dynamic Client Registration and management of OAuth2 client scopes restrictions.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# List network health insights returns "OK" response
2+
3+
require "datadog_api_client"
4+
DatadogAPIClient.configure do |config|
5+
config.unstable_operations["v2.list_network_health_insights".to_sym] = true
6+
end
7+
api_instance = DatadogAPIClient::V2::NetworkHealthInsightsAPI.new
8+
p api_instance.list_network_health_insights()

features/scenarios_model_mapping.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4061,6 +4061,10 @@
40614061
"interface_id" => "String",
40624062
"body" => "ListInterfaceTagsResponse",
40634063
},
4064+
"v2.ListNetworkHealthInsights" => {
4065+
"from" => "String",
4066+
"to" => "String",
4067+
},
40644068
"v2.GetAggregatedConnections" => {
40654069
"from" => "Integer",
40664070
"to" => "Integer",
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
@endpoint(network-health-insights) @endpoint(network-health-insights-v2)
2+
Feature: Network Health Insights
3+
Analyze network health by surfacing actionable insights for services
4+
experiencing connectivity issues. Insights are derived from DNS failure
5+
data (timeouts, NXDOMAIN, SERVFAIL, general failures), TLS certificate
6+
health (expired, expiring soon), and security group denials.
7+
8+
Background:
9+
Given a valid "apiKeyAuth" key in the system
10+
And a valid "appKeyAuth" key in the system
11+
And an instance of "NetworkHealthInsights" API
12+
And operation "ListNetworkHealthInsights" enabled
13+
And new "ListNetworkHealthInsights" request
14+
15+
@generated @skip @team:DataDog/cloud-network-monitoring
16+
Scenario: List network health insights returns "Bad Request" response
17+
When the request is sent
18+
Then the response status is 400 Bad Request
19+
20+
@generated @skip @team:DataDog/cloud-network-monitoring
21+
Scenario: List network health insights returns "OK" response
22+
When the request is sent
23+
Then the response status is 200 OK

features/v2/undo.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5041,6 +5041,12 @@
50415041
"type": "idempotent"
50425042
}
50435043
},
5044+
"ListNetworkHealthInsights": {
5045+
"tag": "Network Health Insights",
5046+
"undo": {
5047+
"type": "safe"
5048+
}
5049+
},
50445050
"GetAggregatedConnections": {
50455051
"tag": "Cloud Network Monitoring",
50465052
"undo": {

lib/datadog_api_client/configuration.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,7 @@ def initialize
538538
"v2.update_monitor_user_template": false,
539539
"v2.validate_existing_monitor_user_template": false,
540540
"v2.validate_monitor_user_template": false,
541+
"v2.list_network_health_insights": false,
541542
"v2.delete_scopes_restriction": false,
542543
"v2.get_o_auth2_well_known_sites": false,
543544
"v2.get_scopes_restriction": false,

0 commit comments

Comments
 (0)