Skip to content

Commit cc9c4b5

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Regenerate client from commit 9991619 of spec repo (#3512)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent 77e1394 commit cc9c4b5

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
@@ -64152,6 +64152,7 @@ components:
6415264152
- $ref: "#/components/schemas/ObservabilityPipelineSplunkTcpSource"
6415364153
- $ref: "#/components/schemas/ObservabilityPipelineSumoLogicSource"
6415464154
- $ref: "#/components/schemas/ObservabilityPipelineSyslogNgSource"
64155+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSource"
6415564156
- $ref: "#/components/schemas/ObservabilityPipelineOpentelemetrySource"
6415664157
ObservabilityPipelineCrowdStrikeNextGenSiemDestination:
6415764158
description: |-
@@ -68808,6 +68809,128 @@ components:
6880868809
required:
6880968810
- crt_file
6881068811
type: object
68812+
ObservabilityPipelineWebsocketSource:
68813+
description: |-
68814+
The `websocket` source ingests logs from a WebSocket server using the `ws://` or `wss://` protocol.
68815+
68816+
**Supported pipeline types:** logs.
68817+
properties:
68818+
auth_strategy:
68819+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceAuthStrategy"
68820+
custom_key:
68821+
description: Name of the environment variable or secret that holds the custom authorization header value. Used when `auth_strategy` is `custom`.
68822+
example: WS_AUTH_CUSTOM_HEADER
68823+
type: string
68824+
decoding:
68825+
$ref: "#/components/schemas/ObservabilityPipelineDecoding"
68826+
id:
68827+
description: The unique identifier for this component.
68828+
example: websocket-source
68829+
type: string
68830+
password_key:
68831+
description: Name of the environment variable or secret that holds the password. Used when `auth_strategy` is `basic`.
68832+
example: WS_AUTH_PASSWORD
68833+
type: string
68834+
tls:
68835+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTls"
68836+
token_key:
68837+
description: Name of the environment variable or secret that holds the bearer token. Used when `auth_strategy` is `bearer`.
68838+
example: WS_BEARER_TOKEN
68839+
type: string
68840+
type:
68841+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceType"
68842+
uri_key:
68843+
description: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`).
68844+
example: WS_URI
68845+
type: string
68846+
username_key:
68847+
description: Name of the environment variable or secret that holds the username. Used when `auth_strategy` is `basic`.
68848+
example: WS_AUTH_USERNAME
68849+
type: string
68850+
required:
68851+
- id
68852+
- type
68853+
- decoding
68854+
- auth_strategy
68855+
type: object
68856+
x-pipeline-types: [logs]
68857+
ObservabilityPipelineWebsocketSourceAuthStrategy:
68858+
description: Authentication strategy for the WebSocket source connection.
68859+
enum:
68860+
- none
68861+
- basic
68862+
- bearer
68863+
- custom
68864+
example: bearer
68865+
type: string
68866+
x-enum-varnames:
68867+
- NONE
68868+
- BASIC
68869+
- BEARER
68870+
- CUSTOM
68871+
ObservabilityPipelineWebsocketSourceTls:
68872+
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.
68873+
oneOf:
68874+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabled"
68875+
- $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCert"
68876+
ObservabilityPipelineWebsocketSourceTlsEnabled:
68877+
description: TLS configuration that enables encryption without a client certificate. Use this for standard `wss://` connections that do not require mutual TLS.
68878+
properties:
68879+
mode:
68880+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabledMode"
68881+
required:
68882+
- mode
68883+
type: object
68884+
ObservabilityPipelineWebsocketSourceTlsEnabledMode:
68885+
description: TLS mode. Must be `enabled`.
68886+
enum:
68887+
- enabled
68888+
example: enabled
68889+
type: string
68890+
x-enum-varnames:
68891+
- ENABLED
68892+
ObservabilityPipelineWebsocketSourceTlsWithClientCert:
68893+
description: TLS configuration that enables encryption and presents a client certificate for mutual TLS authentication.
68894+
properties:
68895+
ca_file:
68896+
description: Path to the Certificate Authority (CA) file used to validate the remote server's TLS certificate.
68897+
example: /path/to/ca.crt
68898+
type: string
68899+
crt_file:
68900+
description: Path to the TLS client certificate file used to identify this source to the remote server.
68901+
example: /path/to/client.crt
68902+
type: string
68903+
key_file:
68904+
description: Path to the private key file associated with the client certificate.
68905+
example: /path/to/client.key
68906+
type: string
68907+
key_pass_key:
68908+
description: Name of the environment variable or secret that holds the passphrase for the private key file.
68909+
example: WS_TLS_KEY_PASSPHRASE
68910+
type: string
68911+
mode:
68912+
$ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCertMode"
68913+
required:
68914+
- mode
68915+
- crt_file
68916+
type: object
68917+
ObservabilityPipelineWebsocketSourceTlsWithClientCertMode:
68918+
description: TLS mode. Must be `with_client_cert`.
68919+
enum:
68920+
- with_client_cert
68921+
example: with_client_cert
68922+
type: string
68923+
x-enum-varnames:
68924+
- WITH_CLIENT_CERT
68925+
ObservabilityPipelineWebsocketSourceType:
68926+
default: websocket
68927+
description: The source type. The value should always be `websocket`.
68928+
enum:
68929+
- websocket
68930+
example: websocket
68931+
type: string
68932+
x-enum-varnames:
68933+
- WEBSOCKET
6881168934
OktaAPIToken:
6881268935
description: The definition of the `OktaAPIToken` object.
6881368936
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
@@ -294,3 +294,11 @@ Feature: Observability Pipelines
294294
When the request is sent
295295
Then the response status is 200 OK
296296
And the response "errors" has length 0
297+
298+
@team:DataDog/observability-pipelines
299+
Scenario: Validate an observability pipeline with websocket source bearer auth returns "OK" response
300+
Given new "ValidatePipeline" request
301+
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"}}
302+
When the request is sent
303+
Then the response status is 200 OK
304+
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
@@ -5200,6 +5200,14 @@ def overrides
52005200
"v2.observability_pipeline_throttle_processor" => "ObservabilityPipelineThrottleProcessor",
52015201
"v2.observability_pipeline_throttle_processor_type" => "ObservabilityPipelineThrottleProcessorType",
52025202
"v2.observability_pipeline_tls" => "ObservabilityPipelineTls",
5203+
"v2.observability_pipeline_websocket_source" => "ObservabilityPipelineWebsocketSource",
5204+
"v2.observability_pipeline_websocket_source_auth_strategy" => "ObservabilityPipelineWebsocketSourceAuthStrategy",
5205+
"v2.observability_pipeline_websocket_source_tls" => "ObservabilityPipelineWebsocketSourceTls",
5206+
"v2.observability_pipeline_websocket_source_tls_enabled" => "ObservabilityPipelineWebsocketSourceTlsEnabled",
5207+
"v2.observability_pipeline_websocket_source_tls_enabled_mode" => "ObservabilityPipelineWebsocketSourceTlsEnabledMode",
5208+
"v2.observability_pipeline_websocket_source_tls_with_client_cert" => "ObservabilityPipelineWebsocketSourceTlsWithClientCert",
5209+
"v2.observability_pipeline_websocket_source_tls_with_client_cert_mode" => "ObservabilityPipelineWebsocketSourceTlsWithClientCertMode",
5210+
"v2.observability_pipeline_websocket_source_type" => "ObservabilityPipelineWebsocketSourceType",
52035211
"v2.oci_config" => "OCIConfig",
52045212
"v2.oci_config_attributes" => "OCIConfigAttributes",
52055213
"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)