Skip to content

Commit 9bd1709

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 7183798 of spec repo
1 parent ea15ac6 commit 9bd1709

15 files changed

Lines changed: 939 additions & 0 deletions

.generator/schemas/v2/openapi.yaml

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63958,6 +63958,7 @@ components:
6395863958
- $ref: "#/components/schemas/ObservabilityPipelineSplunkTcpSource"
6395963959
- $ref: "#/components/schemas/ObservabilityPipelineSumoLogicSource"
6396063960
- $ref: "#/components/schemas/ObservabilityPipelineSyslogNgSource"
63961+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSource"
6396163962
- $ref: "#/components/schemas/ObservabilityPipelineOpentelemetrySource"
6396263963
ObservabilityPipelineCrowdStrikeNextGenSiemDestination:
6396363964
description: |-
@@ -68614,6 +68615,128 @@ components:
6861468615
required:
6861568616
- crt_file
6861668617
type: object
68618+
ObservabilityPipelineWebsocketSource:
68619+
description: |-
68620+
The `websocket` source ingests logs from a WebSocket server using the `ws://` or `wss://` protocol.
68621+
68622+
**Supported pipeline types:** logs.
68623+
properties:
68624+
auth_strategy:
68625+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceAuthStrategy"
68626+
custom_key:
68627+
description: Name of the environment variable or secret that holds the custom authorization header value. Used when `auth_strategy` is `custom`.
68628+
example: WS_AUTH_CUSTOM_HEADER
68629+
type: string
68630+
decoding:
68631+
$ref: "#/components/schemas/ObservabilityPipelineDecoding"
68632+
id:
68633+
description: The unique identifier for this component.
68634+
example: websocket-source
68635+
type: string
68636+
password_key:
68637+
description: Name of the environment variable or secret that holds the password. Used when `auth_strategy` is `basic`.
68638+
example: WS_AUTH_PASSWORD
68639+
type: string
68640+
tls:
68641+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTls"
68642+
token_key:
68643+
description: Name of the environment variable or secret that holds the bearer token. Used when `auth_strategy` is `bearer`.
68644+
example: WS_BEARER_TOKEN
68645+
type: string
68646+
type:
68647+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceType"
68648+
uri_key:
68649+
description: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`).
68650+
example: WS_URI
68651+
type: string
68652+
username_key:
68653+
description: Name of the environment variable or secret that holds the username. Used when `auth_strategy` is `basic`.
68654+
example: WS_AUTH_USERNAME
68655+
type: string
68656+
required:
68657+
- id
68658+
- type
68659+
- decoding
68660+
- auth_strategy
68661+
type: object
68662+
x-pipeline-types: [logs]
68663+
ObservabilityPipelineWebsocketSourceAuthStrategy:
68664+
description: Authentication strategy for the WebSocket source connection.
68665+
enum:
68666+
- none
68667+
- basic
68668+
- bearer
68669+
- custom
68670+
example: bearer
68671+
type: string
68672+
x-enum-varnames:
68673+
- NONE
68674+
- BASIC
68675+
- BEARER
68676+
- CUSTOM
68677+
ObservabilityPipelineWebsocketSourceTls:
68678+
description: TLS configuration for the WebSocket source. Use `enabled` for standard `wss://` connections, or `with_client_cert` to present a client certificate for mutual TLS.
68679+
oneOf:
68680+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabled"
68681+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCert"
68682+
ObservabilityPipelineWebsocketSourceTlsEnabled:
68683+
description: TLS configuration that enables encryption without a client certificate. Use this for standard `wss://` connections that do not require mutual TLS.
68684+
properties:
68685+
mode:
68686+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabledMode"
68687+
required:
68688+
- mode
68689+
type: object
68690+
ObservabilityPipelineWebsocketSourceTlsEnabledMode:
68691+
description: TLS mode. Must be `enabled`.
68692+
enum:
68693+
- enabled
68694+
example: enabled
68695+
type: string
68696+
x-enum-varnames:
68697+
- ENABLED
68698+
ObservabilityPipelineWebsocketSourceTlsWithClientCert:
68699+
description: TLS configuration that enables encryption and presents a client certificate for mutual TLS authentication.
68700+
properties:
68701+
ca_file:
68702+
description: Path to the Certificate Authority (CA) file used to validate the remote server's TLS certificate.
68703+
example: /path/to/ca.crt
68704+
type: string
68705+
crt_file:
68706+
description: Path to the TLS client certificate file used to identify this source to the remote server.
68707+
example: /path/to/client.crt
68708+
type: string
68709+
key_file:
68710+
description: Path to the private key file associated with the client certificate.
68711+
example: /path/to/client.key
68712+
type: string
68713+
key_pass_key:
68714+
description: Name of the environment variable or secret that holds the passphrase for the private key file.
68715+
example: WS_TLS_KEY_PASSPHRASE
68716+
type: string
68717+
mode:
68718+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCertMode"
68719+
required:
68720+
- mode
68721+
- crt_file
68722+
type: object
68723+
ObservabilityPipelineWebsocketSourceTlsWithClientCertMode:
68724+
description: TLS mode. Must be `with_client_cert`.
68725+
enum:
68726+
- with_client_cert
68727+
example: with_client_cert
68728+
type: string
68729+
x-enum-varnames:
68730+
- WITH_CLIENT_CERT
68731+
ObservabilityPipelineWebsocketSourceType:
68732+
default: websocket
68733+
description: The source type. The value should always be `websocket`.
68734+
enum:
68735+
- websocket
68736+
example: websocket
68737+
type: string
68738+
x-enum-varnames:
68739+
- WEBSOCKET
6861768740
OktaAPIToken:
6861868741
description: The definition of the `OktaAPIToken` object.
6861968742
properties:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2026-06-22T19:51:31.598Z

cassettes/features/v2/observability_pipelines/Validate-an-observability-pipeline-with-websocket-source-bearer-auth-returns-OK-response.yml

Lines changed: 27 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Validate an observability pipeline with websocket source bearer auth returns "OK" response
2+
3+
require "datadog_api_client"
4+
api_instance = DatadogAPIClient::V2::ObservabilityPipelinesAPI.new
5+
6+
body = DatadogAPIClient::V2::ObservabilityPipelineSpec.new({
7+
data: DatadogAPIClient::V2::ObservabilityPipelineSpecData.new({
8+
attributes: DatadogAPIClient::V2::ObservabilityPipelineDataAttributes.new({
9+
config: DatadogAPIClient::V2::ObservabilityPipelineConfig.new({
10+
destinations: [
11+
DatadogAPIClient::V2::ObservabilityPipelineDatadogLogsDestination.new({
12+
id: "datadog-logs-destination",
13+
inputs: [
14+
"my-processor-group",
15+
],
16+
type: DatadogAPIClient::V2::ObservabilityPipelineDatadogLogsDestinationType::DATADOG_LOGS,
17+
}),
18+
],
19+
processor_groups: [
20+
DatadogAPIClient::V2::ObservabilityPipelineConfigProcessorGroup.new({
21+
enabled: true,
22+
id: "my-processor-group",
23+
include: "service:my-service",
24+
inputs: [
25+
"websocket-source",
26+
],
27+
processors: [
28+
DatadogAPIClient::V2::ObservabilityPipelineFilterProcessor.new({
29+
enabled: true,
30+
id: "filter-processor",
31+
include: "status:error",
32+
type: DatadogAPIClient::V2::ObservabilityPipelineFilterProcessorType::FILTER,
33+
}),
34+
],
35+
}),
36+
],
37+
sources: [
38+
DatadogAPIClient::V2::ObservabilityPipelineWebsocketSource.new({
39+
id: "websocket-source",
40+
type: DatadogAPIClient::V2::ObservabilityPipelineWebsocketSourceType::WEBSOCKET,
41+
decoding: DatadogAPIClient::V2::ObservabilityPipelineDecoding::DECODE_JSON,
42+
auth_strategy: DatadogAPIClient::V2::ObservabilityPipelineWebsocketSourceAuthStrategy::BEARER,
43+
token_key: "WS_BEARER_TOKEN",
44+
uri_key: "WS_URI",
45+
tls: DatadogAPIClient::V2::ObservabilityPipelineWebsocketSourceTlsEnabled.new({
46+
mode: DatadogAPIClient::V2::ObservabilityPipelineWebsocketSourceTlsEnabledMode::ENABLED,
47+
}),
48+
}),
49+
],
50+
}),
51+
name: "Pipeline with WebSocket Source",
52+
}),
53+
type: "pipelines",
54+
}),
55+
})
56+
p api_instance.validate_pipeline(body)

features/v2/observability_pipelines.feature

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,3 +278,11 @@ Feature: Observability Pipelines
278278
When the request is sent
279279
Then the response status is 200 OK
280280
And the response "errors" has length 0
281+
282+
@team:DataDog/observability-pipelines
283+
Scenario: Validate an observability pipeline with websocket source bearer auth returns "OK" response
284+
Given new "ValidatePipeline" request
285+
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}], "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["websocket-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]}], "sources": [{"id": "websocket-source", "type": "websocket", "decoding": "json", "auth_strategy": "bearer", "token_key": "WS_BEARER_TOKEN", "uri_key": "WS_URI", "tls": {"mode": "enabled"}}]}, "name": "Pipeline with WebSocket Source"}, "type": "pipelines"}}
286+
When the request is sent
287+
Then the response status is 200 OK
288+
And the response "errors" has length 0

lib/datadog_api_client/inflector.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5189,6 +5189,14 @@ def overrides
51895189
"v2.observability_pipeline_throttle_processor" => "ObservabilityPipelineThrottleProcessor",
51905190
"v2.observability_pipeline_throttle_processor_type" => "ObservabilityPipelineThrottleProcessorType",
51915191
"v2.observability_pipeline_tls" => "ObservabilityPipelineTls",
5192+
"v2.observability_pipeline_websocket_source" => "ObservabilityPipelineWebsocketSource",
5193+
"v2.observability_pipeline_websocket_source_auth_strategy" => "ObservabilityPipelineWebsocketSourceAuthStrategy",
5194+
"v2.observability_pipeline_websocket_source_tls" => "ObservabilityPipelineWebsocketSourceTls",
5195+
"v2.observability_pipeline_websocket_source_tls_enabled" => "ObservabilityPipelineWebsocketSourceTlsEnabled",
5196+
"v2.observability_pipeline_websocket_source_tls_enabled_mode" => "ObservabilityPipelineWebsocketSourceTlsEnabledMode",
5197+
"v2.observability_pipeline_websocket_source_tls_with_client_cert" => "ObservabilityPipelineWebsocketSourceTlsWithClientCert",
5198+
"v2.observability_pipeline_websocket_source_tls_with_client_cert_mode" => "ObservabilityPipelineWebsocketSourceTlsWithClientCertMode",
5199+
"v2.observability_pipeline_websocket_source_type" => "ObservabilityPipelineWebsocketSourceType",
51925200
"v2.oci_config" => "OCIConfig",
51935201
"v2.oci_config_attributes" => "OCIConfigAttributes",
51945202
"v2.oci_configs_response" => "OCIConfigsResponse",

lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ def openapi_one_of
4242
:'ObservabilityPipelineSplunkTcpSource',
4343
:'ObservabilityPipelineSumoLogicSource',
4444
:'ObservabilityPipelineSyslogNgSource',
45+
:'ObservabilityPipelineWebsocketSource',
4546
:'ObservabilityPipelineOpentelemetrySource'
4647
]
4748
end

0 commit comments

Comments
 (0)