diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 5da2e75e8057..1c4147ddb7e2 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -6932,6 +6932,11 @@ components: type: string buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + connection_string_key: + description: Name of the environment variable or secret that holds the Azure + Storage connection string. + example: AZURE_STORAGE_CONNECTION_STRING + type: string container_name: description: The name of the Azure Blob Storage container to store logs in. @@ -37731,6 +37736,16 @@ components: description: Azure AD client ID used for authentication. example: a1b2c3d4-5678-90ab-cdef-1234567890ab type: string + client_secret_key: + description: Name of the environment variable or secret that holds the Azure + AD client secret. + example: AZURE_CLIENT_SECRET + type: string + dce_uri_key: + description: Name of the environment variable or secret that holds the Data + Collection Endpoint (DCE) URI. + example: DCE_URI + type: string dcr_immutable_id: description: The immutable ID of the Data Collection Rule (DCR). example: dcr-uuid-1234 @@ -39662,6 +39677,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the Firehose + delivery stream address. + example: FIREHOSE_ADDRESS + type: string auth: $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' id: @@ -39874,6 +39894,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineTls' type: $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceType' + url_key: + description: Name of the environment variable or secret that holds the S3 + bucket URL. + example: S3_BUCKET_URL + type: string required: - id - type @@ -40003,6 +40028,11 @@ components: **Supported pipeline types:** logs' properties: + endpoint_url_key: + description: Name of the environment variable or secret that holds the CloudPrem + endpoint URL. + example: CLOUDPREM_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: cloud-prem-destination @@ -40273,6 +40303,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression' encoding: $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the CrowdStrike + endpoint URL. + example: CROWDSTRIKE_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: crowdstrike-ngsiem-destination @@ -40287,6 +40322,11 @@ components: type: array tls: $ref: '#/components/schemas/ObservabilityPipelineTls' + token_key: + description: Name of the environment variable or secret that holds the CrowdStrike + API token. + example: CROWDSTRIKE_TOKEN + type: string type: $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType' required: @@ -40789,6 +40829,8 @@ components: properties: api_version: $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion' + auth: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth' buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' bulk_index: @@ -40797,6 +40839,11 @@ components: type: string data_stream: $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationDataStream' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Elasticsearch + endpoint URL. + example: ELASTICSEARCH_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: elasticsearch-destination @@ -40832,6 +40879,27 @@ components: - V6 - V7 - V8 + ObservabilityPipelineElasticsearchDestinationAuth: + description: 'Authentication settings for the Elasticsearch destination. + + When `strategy` is `basic`, use `username_key` and `password_key` to reference + credentials stored in environment variables or secrets.' + properties: + password_key: + description: Name of the environment variable or secret that holds the Elasticsearch + password (used when `strategy` is `basic`). + example: ELASTICSEARCH_PASSWORD + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy' + username_key: + description: Name of the environment variable or secret that holds the Elasticsearch + username (used when `strategy` is `basic`). + example: ELASTICSEARCH_USERNAME + type: string + required: + - strategy + type: object ObservabilityPipelineElasticsearchDestinationDataStream: description: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index. @@ -41043,6 +41111,11 @@ components: ObservabilityPipelineEnrichmentTableReferenceTable: description: Uses a Datadog reference table to enrich logs. properties: + app_key_key: + description: Name of the environment variable or secret that holds the Datadog + application key used to access the reference table. + example: DD_APP_KEY + type: string columns: description: List of column names to include from the reference table. If not provided, all columns are included. @@ -41129,6 +41202,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the Fluent Bit receiver. + example: FLUENT_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -41160,6 +41238,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the Fluent receiver. + example: FLUENT_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -41186,10 +41269,11 @@ components: x-enum-varnames: - FLUENTD ObservabilityPipelineGcpAuth: - description: GCP credentials used to authenticate with Google Cloud Storage. + description: Google Cloud credentials used to authenticate with Google Cloud + Storage. properties: credentials_file: - description: Path to the GCP service account key file. + description: Path to the Google Cloud service account key file. example: /var/secrets/gcp-credentials.json type: string required: @@ -41344,6 +41428,11 @@ components: type: string encoding: $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google + Chronicle endpoint URL. + example: CHRONICLE_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: google-chronicle-destination @@ -41393,7 +41482,7 @@ components: description: 'The `google_cloud_storage` destination stores logs in a Google Cloud Storage (GCS) bucket. - It requires a bucket name, GCP authentication, and metadata fields. + It requires a bucket name, Google Cloud authentication, and metadata fields. **Supported pipeline types:** logs' @@ -41496,6 +41585,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' encoding: $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google + Cloud Pub/Sub endpoint URL. + example: GCP_PUBSUB_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: google-pubsub-destination @@ -41509,7 +41603,7 @@ components: type: string type: array project: - description: The GCP project ID that owns the Pub/Sub topic. + description: The Google Cloud project ID that owns the Pub/Sub topic. example: my-gcp-project type: string tls: @@ -41567,7 +41661,7 @@ components: example: google-pubsub-source type: string project: - description: The GCP project ID that owns the Pub/Sub subscription. + description: The Google Cloud project ID that owns the Pub/Sub subscription. example: my-gcp-project type: string subscription: @@ -41606,6 +41700,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationAuthStrategy' compression: $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationCompression' + custom_key: + description: Name of the environment variable or secret that holds a custom + header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string encoding: $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationEncoding' id: @@ -41620,10 +41719,30 @@ components: items: type: string type: array + password_key: + description: Name of the environment variable or secret that holds the password + (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string tls: $ref: '#/components/schemas/ObservabilityPipelineTls' + token_key: + description: Name of the environment variable or secret that holds the bearer + token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string type: $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationType' + uri_key: + description: Name of the environment variable or secret that holds the HTTP + endpoint URI. + example: HTTP_DESTINATION_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username + (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string required: - id - type @@ -41687,14 +41806,29 @@ components: properties: auth_strategy: $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom + header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string decoding: $ref: '#/components/schemas/ObservabilityPipelineDecoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the HTTP + endpoint URL to scrape. + example: HTTP_ENDPOINT_URL + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). example: http-client-source type: string + password_key: + description: Name of the environment variable or secret that holds the password + (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string scrape_interval_secs: description: The interval (in seconds) between HTTP scrape requests. example: 60 @@ -41707,8 +41841,18 @@ components: type: integer tls: $ref: '#/components/schemas/ObservabilityPipelineTls' + token_key: + description: Name of the environment variable or secret that holds the bearer + token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string type: $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' + username_key: + description: Name of the environment variable or secret that holds the username + (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string required: - id - type @@ -41746,18 +41890,38 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the HTTP server. + example: HTTP_SERVER_ADDRESS + type: string auth_strategy: $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom + header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string decoding: $ref: '#/components/schemas/ObservabilityPipelineDecoding' id: description: Unique ID for the HTTP server source. example: http-server-source type: string + password_key: + description: Name of the environment variable or secret that holds the password + (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_PASSWORD + type: string tls: $ref: '#/components/schemas/ObservabilityPipelineTls' type: $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceType' + username_key: + description: Name of the environment variable or secret that holds the username + (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_USERNAME + type: string required: - id - type @@ -41791,6 +41955,11 @@ components: **Supported pipeline types:** logs' properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka + bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string compression: $ref: '#/components/schemas/ObservabilityPipelineKafkaDestinationCompression' encoding: @@ -41923,6 +42092,16 @@ components: properties: mechanism: $ref: '#/components/schemas/ObservabilityPipelineKafkaSaslMechanism' + password_key: + description: Name of the environment variable or secret that holds the SASL + password. + example: KAFKA_SASL_PASSWORD + type: string + username_key: + description: Name of the environment variable or secret that holds the SASL + username. + example: KAFKA_SASL_USERNAME + type: string type: object ObservabilityPipelineKafkaSaslMechanism: description: SASL mechanism used for Kafka authentication. @@ -41941,6 +42120,11 @@ components: **Supported pipeline types:** logs' properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka + bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string group_id: description: Consumer group ID used by the Kafka client. example: consumer-group-0 @@ -41995,6 +42179,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the Logstash receiver. + example: LOGSTASH_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -42172,6 +42361,11 @@ components: **Supported pipeline types:** logs' properties: + account_id_key: + description: Name of the environment variable or secret that holds the New + Relic account ID. + example: NEW_RELIC_ACCOUNT_ID + type: string buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' id: @@ -42186,6 +42380,11 @@ components: items: type: string type: array + license_key_key: + description: Name of the environment variable or secret that holds the New + Relic license key. + example: NEW_RELIC_LICENSE_KEY + type: string region: $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' type: @@ -42431,6 +42630,8 @@ components: **Supported pipeline types:** logs' properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth' buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' bulk_index: @@ -42439,6 +42640,11 @@ components: type: string data_stream: $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationDataStream' + endpoint_url_key: + description: Name of the environment variable or secret that holds the OpenSearch + endpoint URL. + example: OPENSEARCH_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: opensearch-destination @@ -43148,6 +43354,11 @@ components: properties: buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog + server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: rsyslog-destination @@ -43193,6 +43404,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the syslog receiver. + example: SYSLOG_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -43669,6 +43885,11 @@ components: type: array region: $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion' + token_key: + description: Name of the environment variable or secret that holds the SentinelOne + API token. + example: SENTINELONE_TOKEN + type: string type: $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' required: @@ -43709,6 +43930,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the socket + address (host:port). + example: SOCKET_ADDRESS + type: string buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' encoding: @@ -43843,6 +44069,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the socket. + example: SOCKET_ADDRESS + type: string framing: $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' id: @@ -44091,6 +44322,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' encoding: $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Splunk + HEC endpoint URL. + example: SPLUNK_HEC_ENDPOINT_URL + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -44113,6 +44349,11 @@ components: description: The Splunk sourcetype to assign to log events. example: custom_sourcetype type: string + token_key: + description: Name of the environment variable or secret that holds the Splunk + HEC token. + example: SPLUNK_HEC_TOKEN + type: string type: $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationType' required: @@ -44148,6 +44389,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the HEC API. + example: SPLUNK_HEC_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -44182,6 +44428,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the Splunk TCP receiver. + example: SPLUNK_TCP_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -44217,6 +44468,11 @@ components: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' encoding: $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Sumo + Logic HTTP endpoint URL. + example: SUMO_LOGIC_ENDPOINT_URL + type: string header_custom_fields: description: A list of custom headers to include in the request to Sumo Logic. @@ -44298,6 +44554,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the Sumo Logic receiver. + example: SUMO_LOGIC_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -44330,6 +44591,11 @@ components: properties: buffer: $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog-ng + server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string id: description: The unique identifier for this component. example: syslog-ng-destination @@ -44375,6 +44641,11 @@ components: **Supported pipeline types:** logs' properties: + address_key: + description: Name of the environment variable or secret that holds the listen + address for the syslog-ng receiver. + example: SYSLOG_ADDRESS + type: string id: description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` @@ -44492,6 +44763,11 @@ components: description: Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase + for the private key file. + example: TLS_KEY_PASSPHRASE + type: string required: - crt_file type: object diff --git a/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/frozen.json b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/frozen.json new file mode 100644 index 000000000000..4d1a537caae4 --- /dev/null +++ b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/frozen.json @@ -0,0 +1 @@ +"2026-02-20T14:42:05.988Z" diff --git a/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/recording.har b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/recording.har new file mode 100644 index 000000000000..b6c0be2ead93 --- /dev/null +++ b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-destination-secret-key-returns-OK-response_1497740330/recording.har @@ -0,0 +1,67 @@ +{ + "log": { + "_recordingName": "Observability Pipelines/Validate an observability pipeline with destination secret key returns \"OK\" response", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.5" + }, + "entries": [ + { + "_id": "c01ed7042c1eca7eb2709abf07f54e60", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 526, + "cookies": [], + "headers": [ + { + "_fromType": "array", + "name": "accept", + "value": "application/json" + }, + { + "_fromType": "array", + "name": "content-type", + "value": "application/json" + } + ], + "headersSize": 583, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"data\":{\"attributes\":{\"config\":{\"destinations\":[{\"endpoint_url_key\":\"SUMO_LOGIC_ENDPOINT_URL\",\"id\":\"sumo-logic-destination\",\"inputs\":[\"my-processor-group\"],\"type\":\"sumo_logic\"}],\"processor_groups\":[{\"enabled\":true,\"id\":\"my-processor-group\",\"include\":\"service:my-service\",\"inputs\":[\"datadog-agent-source\"],\"processors\":[{\"enabled\":true,\"id\":\"filter-processor\",\"include\":\"status:error\",\"type\":\"filter\"}]}],\"sources\":[{\"id\":\"datadog-agent-source\",\"type\":\"datadog_agent\"}]},\"name\":\"Pipeline with Secret Key\"},\"type\":\"pipelines\"}}" + }, + "queryString": [], + "url": "https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/validate" + }, + "response": { + "bodySize": 14, + "content": { + "mimeType": "application/vnd.api+json", + "size": 14, + "text": "{\"errors\":[]}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/vnd.api+json" + } + ], + "headersSize": 370, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-02-20T14:42:05.991Z", + "time": 369 + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/frozen.json b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/frozen.json new file mode 100644 index 000000000000..ca24ae745361 --- /dev/null +++ b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/frozen.json @@ -0,0 +1 @@ +"2026-02-20T14:42:32.372Z" diff --git a/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/recording.har b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/recording.har new file mode 100644 index 000000000000..9fadd8cebe09 --- /dev/null +++ b/cassettes/v2/Observability-Pipelines_4170000189/Validate-an-observability-pipeline-with-source-secret-key-returns-OK-response_3962960055/recording.har @@ -0,0 +1,67 @@ +{ + "log": { + "_recordingName": "Observability Pipelines/Validate an observability pipeline with source secret key returns \"OK\" response", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.5" + }, + "entries": [ + { + "_id": "abf3ef3d218bce08cf81f3126665181b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 608, + "cookies": [], + "headers": [ + { + "_fromType": "array", + "name": "accept", + "value": "application/json" + }, + { + "_fromType": "array", + "name": "content-type", + "value": "application/json" + } + ], + "headersSize": 583, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"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\":[\"http-client-source\"],\"processors\":[{\"enabled\":true,\"id\":\"filter-processor\",\"include\":\"status:error\",\"type\":\"filter\"}]}],\"sources\":[{\"auth_strategy\":\"bearer\",\"decoding\":\"bytes\",\"id\":\"http-client-source\",\"scrape_interval_secs\":15,\"scrape_timeout_secs\":5,\"token_key\":\"HTTP_CLIENT_TOKEN\",\"type\":\"http_client\"}]},\"name\":\"Pipeline with Source Secret\"},\"type\":\"pipelines\"}}" + }, + "queryString": [], + "url": "https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/validate" + }, + "response": { + "bodySize": 14, + "content": { + "mimeType": "application/vnd.api+json", + "size": 14, + "text": "{\"errors\":[]}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/vnd.api+json" + } + ], + "headersSize": 370, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2026-02-20T14:42:32.375Z", + "time": 375 + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/examples/v2/observability-pipelines/ValidatePipeline_1330454428.ts b/examples/v2/observability-pipelines/ValidatePipeline_1330454428.ts new file mode 100644 index 000000000000..db1a8e792567 --- /dev/null +++ b/examples/v2/observability-pipelines/ValidatePipeline_1330454428.ts @@ -0,0 +1,60 @@ +/** + * Validate an observability pipeline with destination secret key returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.ObservabilityPipelinesApi(configuration); + +const params: v2.ObservabilityPipelinesApiValidatePipelineRequest = { + body: { + data: { + attributes: { + config: { + destinations: [ + { + id: "sumo-logic-destination", + inputs: ["my-processor-group"], + type: "sumo_logic", + endpointUrlKey: "SUMO_LOGIC_ENDPOINT_URL", + }, + ], + processorGroups: [ + { + enabled: true, + id: "my-processor-group", + include: "service:my-service", + inputs: ["datadog-agent-source"], + processors: [ + { + enabled: true, + id: "filter-processor", + include: "status:error", + type: "filter", + }, + ], + }, + ], + sources: [ + { + id: "datadog-agent-source", + type: "datadog_agent", + }, + ], + }, + name: "Pipeline with Secret Key", + }, + type: "pipelines", + }, + }, +}; + +apiInstance + .validatePipeline(params) + .then((data: v2.ValidationResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/observability-pipelines/ValidatePipeline_2899320203.ts b/examples/v2/observability-pipelines/ValidatePipeline_2899320203.ts new file mode 100644 index 000000000000..20042304bfa9 --- /dev/null +++ b/examples/v2/observability-pipelines/ValidatePipeline_2899320203.ts @@ -0,0 +1,64 @@ +/** + * Validate an observability pipeline with source secret key returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +const apiInstance = new v2.ObservabilityPipelinesApi(configuration); + +const params: v2.ObservabilityPipelinesApiValidatePipelineRequest = { + body: { + data: { + attributes: { + config: { + destinations: [ + { + id: "datadog-logs-destination", + inputs: ["my-processor-group"], + type: "datadog_logs", + }, + ], + processorGroups: [ + { + enabled: true, + id: "my-processor-group", + include: "service:my-service", + inputs: ["http-client-source"], + processors: [ + { + enabled: true, + id: "filter-processor", + include: "status:error", + type: "filter", + }, + ], + }, + ], + sources: [ + { + id: "http-client-source", + type: "http_client", + decoding: "bytes", + scrapeIntervalSecs: 15, + scrapeTimeoutSecs: 5, + authStrategy: "bearer", + tokenKey: "HTTP_CLIENT_TOKEN", + }, + ], + }, + name: "Pipeline with Source Secret", + }, + type: "pipelines", + }, + }, +}; + +apiInstance + .validatePipeline(params) + .then((data: v2.ValidationResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/features/v2/observability_pipelines.feature b/features/v2/observability_pipelines.feature index b5c685768059..bf90c06c1399 100644 --- a/features/v2/observability_pipelines.feature +++ b/features/v2/observability_pipelines.feature @@ -190,3 +190,19 @@ Feature: Observability Pipelines When the request is sent Then the response status is 200 OK And the response "errors" has length 0 + + @team:DataDog/observability-pipelines + Scenario: Validate an observability pipeline with destination secret key returns "OK" response + Given new "ValidatePipeline" request + And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "sumo-logic-destination", "inputs": ["my-processor-group"], "type": "sumo_logic", "endpoint_url_key": "SUMO_LOGIC_ENDPOINT_URL"}], "processor_groups": [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]}], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Pipeline with Secret Key"}, "type": "pipelines"}} + When the request is sent + Then the response status is 200 OK + And the response "errors" has length 0 + + @team:DataDog/observability-pipelines + Scenario: Validate an observability pipeline with source secret key returns "OK" response + Given new "ValidatePipeline" request + 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": ["http-client-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]}], "sources": [{"id": "http-client-source", "type": "http_client", "decoding": "bytes", "scrape_interval_secs": 15, "scrape_timeout_secs": 5, "auth_strategy": "bearer", "token_key": "HTTP_CLIENT_TOKEN"}]}, "name": "Pipeline with Source Secret"}, "type": "pipelines"}} + When the request is sent + Then the response status is 200 OK + And the response "errors" has length 0 diff --git a/packages/datadog-api-client-v2/index.ts b/packages/datadog-api-client-v2/index.ts index febf4e26c8ce..154dd6e88ec3 100644 --- a/packages/datadog-api-client-v2/index.ts +++ b/packages/datadog-api-client-v2/index.ts @@ -3684,6 +3684,7 @@ export { ObservabilityPipelineDedupeProcessorType } from "./models/Observability export { ObservabilityPipelineDiskBufferOptions } from "./models/ObservabilityPipelineDiskBufferOptions"; export { ObservabilityPipelineElasticsearchDestination } from "./models/ObservabilityPipelineElasticsearchDestination"; export { ObservabilityPipelineElasticsearchDestinationApiVersion } from "./models/ObservabilityPipelineElasticsearchDestinationApiVersion"; +export { ObservabilityPipelineElasticsearchDestinationAuth } from "./models/ObservabilityPipelineElasticsearchDestinationAuth"; export { ObservabilityPipelineElasticsearchDestinationDataStream } from "./models/ObservabilityPipelineElasticsearchDestinationDataStream"; export { ObservabilityPipelineElasticsearchDestinationType } from "./models/ObservabilityPipelineElasticsearchDestinationType"; export { ObservabilityPipelineEnrichmentTableFile } from "./models/ObservabilityPipelineEnrichmentTableFile"; diff --git a/packages/datadog-api-client-v2/models/AzureStorageDestination.ts b/packages/datadog-api-client-v2/models/AzureStorageDestination.ts index f09fbdb43a8a..ce2e029ae402 100644 --- a/packages/datadog-api-client-v2/models/AzureStorageDestination.ts +++ b/packages/datadog-api-client-v2/models/AzureStorageDestination.ts @@ -22,6 +22,10 @@ export class AzureStorageDestination { * Configuration for buffer settings on destination components. */ "buffer"?: ObservabilityPipelineBufferOptions; + /** + * Name of the environment variable or secret that holds the Azure Storage connection string. + */ + "connectionStringKey"?: string; /** * The name of the Azure Blob Storage container to store logs in. */ @@ -63,6 +67,10 @@ export class AzureStorageDestination { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", }, + connectionStringKey: { + baseName: "connection_string_key", + type: "string", + }, containerName: { baseName: "container_name", type: "string", diff --git a/packages/datadog-api-client-v2/models/MicrosoftSentinelDestination.ts b/packages/datadog-api-client-v2/models/MicrosoftSentinelDestination.ts index 7886b534236c..86bc1f2f72e2 100644 --- a/packages/datadog-api-client-v2/models/MicrosoftSentinelDestination.ts +++ b/packages/datadog-api-client-v2/models/MicrosoftSentinelDestination.ts @@ -22,6 +22,14 @@ export class MicrosoftSentinelDestination { * Azure AD client ID used for authentication. */ "clientId": string; + /** + * Name of the environment variable or secret that holds the Azure AD client secret. + */ + "clientSecretKey"?: string; + /** + * Name of the environment variable or secret that holds the Data Collection Endpoint (DCE) URI. + */ + "dceUriKey"?: string; /** * The immutable ID of the Data Collection Rule (DCR). */ @@ -72,6 +80,14 @@ export class MicrosoftSentinelDestination { type: "string", required: true, }, + clientSecretKey: { + baseName: "client_secret_key", + type: "string", + }, + dceUriKey: { + baseName: "dce_uri_key", + type: "string", + }, dcrImmutableId: { baseName: "dcr_immutable_id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObjectSerializer.ts b/packages/datadog-api-client-v2/models/ObjectSerializer.ts index 51ce362d9517..72fd2677a3db 100644 --- a/packages/datadog-api-client-v2/models/ObjectSerializer.ts +++ b/packages/datadog-api-client-v2/models/ObjectSerializer.ts @@ -1925,6 +1925,7 @@ import { ObservabilityPipelineDedupeProcessor } from "./ObservabilityPipelineDed import { ObservabilityPipelineDedupeProcessorCache } from "./ObservabilityPipelineDedupeProcessorCache"; import { ObservabilityPipelineDiskBufferOptions } from "./ObservabilityPipelineDiskBufferOptions"; import { ObservabilityPipelineElasticsearchDestination } from "./ObservabilityPipelineElasticsearchDestination"; +import { ObservabilityPipelineElasticsearchDestinationAuth } from "./ObservabilityPipelineElasticsearchDestinationAuth"; import { ObservabilityPipelineElasticsearchDestinationDataStream } from "./ObservabilityPipelineElasticsearchDestinationDataStream"; import { ObservabilityPipelineEnrichmentTableFile } from "./ObservabilityPipelineEnrichmentTableFile"; import { ObservabilityPipelineEnrichmentTableFileEncoding } from "./ObservabilityPipelineEnrichmentTableFileEncoding"; @@ -7529,6 +7530,8 @@ const typeMap: { [index: string]: any } = { ObservabilityPipelineDiskBufferOptions, ObservabilityPipelineElasticsearchDestination: ObservabilityPipelineElasticsearchDestination, + ObservabilityPipelineElasticsearchDestinationAuth: + ObservabilityPipelineElasticsearchDestinationAuth, ObservabilityPipelineElasticsearchDestinationDataStream: ObservabilityPipelineElasticsearchDestinationDataStream, ObservabilityPipelineEnrichmentTableFile: diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts index 663725ec3823..3868bd0d30d0 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonDataFirehoseSource.ts @@ -15,6 +15,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineAmazonDataFirehoseSource { + /** + * Name of the environment variable or secret that holds the Firehose delivery stream address. + */ + "addressKey"?: string; /** * AWS authentication credentials used for accessing AWS services such as S3. * If omitted, the system’s default credentials are used (for example, the IAM role and environment variables). @@ -49,6 +53,10 @@ export class ObservabilityPipelineAmazonDataFirehoseSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, auth: { baseName: "auth", type: "ObservabilityPipelineAwsAuth", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonS3Source.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonS3Source.ts index b28040066da9..849380f175f2 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonS3Source.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineAmazonS3Source.ts @@ -37,6 +37,10 @@ export class ObservabilityPipelineAmazonS3Source { * The source type. Always `amazon_s3`. */ "type": ObservabilityPipelineAmazonS3SourceType; + /** + * Name of the environment variable or secret that holds the S3 bucket URL. + */ + "urlKey"?: string; /** * A container for additional, undeclared properties. @@ -77,6 +81,10 @@ export class ObservabilityPipelineAmazonS3Source { type: "ObservabilityPipelineAmazonS3SourceType", required: true, }, + urlKey: { + baseName: "url_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineCloudPremDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineCloudPremDestination.ts index 66e4530be609..3dbe453ed6a5 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineCloudPremDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineCloudPremDestination.ts @@ -13,6 +13,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineCloudPremDestination { + /** + * Name of the environment variable or secret that holds the CloudPrem endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -42,6 +46,10 @@ export class ObservabilityPipelineCloudPremDestination { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineCrowdStrikeNextGenSiemDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineCrowdStrikeNextGenSiemDestination.ts index cadbb305008a..9929746df755 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineCrowdStrikeNextGenSiemDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineCrowdStrikeNextGenSiemDestination.ts @@ -29,6 +29,10 @@ export class ObservabilityPipelineCrowdStrikeNextGenSiemDestination { * Encoding format for log events. */ "encoding": ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding; + /** + * Name of the environment variable or secret that holds the CrowdStrike endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -41,6 +45,10 @@ export class ObservabilityPipelineCrowdStrikeNextGenSiemDestination { * Configuration for enabling TLS encryption between the pipeline component and external services. */ "tls"?: ObservabilityPipelineTls; + /** + * Name of the environment variable or secret that holds the CrowdStrike API token. + */ + "tokenKey"?: string; /** * The destination type. The value should always be `crowdstrike_next_gen_siem`. */ @@ -75,6 +83,10 @@ export class ObservabilityPipelineCrowdStrikeNextGenSiemDestination { type: "ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding", required: true, }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", @@ -89,6 +101,10 @@ export class ObservabilityPipelineCrowdStrikeNextGenSiemDestination { baseName: "tls", type: "ObservabilityPipelineTls", }, + tokenKey: { + baseName: "token_key", + type: "string", + }, type: { baseName: "type", type: "ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestination.ts index fbd1e4914d4b..af5ab030dea1 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestination.ts @@ -5,6 +5,7 @@ */ import { ObservabilityPipelineBufferOptions } from "./ObservabilityPipelineBufferOptions"; import { ObservabilityPipelineElasticsearchDestinationApiVersion } from "./ObservabilityPipelineElasticsearchDestinationApiVersion"; +import { ObservabilityPipelineElasticsearchDestinationAuth } from "./ObservabilityPipelineElasticsearchDestinationAuth"; import { ObservabilityPipelineElasticsearchDestinationDataStream } from "./ObservabilityPipelineElasticsearchDestinationDataStream"; import { ObservabilityPipelineElasticsearchDestinationType } from "./ObservabilityPipelineElasticsearchDestinationType"; @@ -20,6 +21,11 @@ export class ObservabilityPipelineElasticsearchDestination { * The Elasticsearch API version to use. Set to `auto` to auto-detect. */ "apiVersion"?: ObservabilityPipelineElasticsearchDestinationApiVersion; + /** + * Authentication settings for the Elasticsearch destination. + * When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets. + */ + "auth"?: ObservabilityPipelineElasticsearchDestinationAuth; /** * Configuration for buffer settings on destination components. */ @@ -32,6 +38,10 @@ export class ObservabilityPipelineElasticsearchDestination { * Configuration options for writing to Elasticsearch Data Streams instead of a fixed index. */ "dataStream"?: ObservabilityPipelineElasticsearchDestinationDataStream; + /** + * Name of the environment variable or secret that holds the Elasticsearch endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -65,6 +75,10 @@ export class ObservabilityPipelineElasticsearchDestination { baseName: "api_version", type: "ObservabilityPipelineElasticsearchDestinationApiVersion", }, + auth: { + baseName: "auth", + type: "ObservabilityPipelineElasticsearchDestinationAuth", + }, buffer: { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", @@ -77,6 +91,10 @@ export class ObservabilityPipelineElasticsearchDestination { baseName: "data_stream", type: "ObservabilityPipelineElasticsearchDestinationDataStream", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestinationAuth.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestinationAuth.ts new file mode 100644 index 000000000000..e2b7c4b60930 --- /dev/null +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineElasticsearchDestinationAuth.ts @@ -0,0 +1,71 @@ +/** + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2020-Present Datadog, Inc. + */ +import { ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy } from "./ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Authentication settings for the Elasticsearch destination. + * When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets. + */ +export class ObservabilityPipelineElasticsearchDestinationAuth { + /** + * Name of the environment variable or secret that holds the Elasticsearch password (used when `strategy` is `basic`). + */ + "passwordKey"?: string; + /** + * The authentication strategy to use. + */ + "strategy": ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy; + /** + * Name of the environment variable or secret that holds the Elasticsearch username (used when `strategy` is `basic`). + */ + "usernameKey"?: string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + passwordKey: { + baseName: "password_key", + type: "string", + }, + strategy: { + baseName: "strategy", + type: "ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy", + required: true, + }, + usernameKey: { + baseName: "username_key", + type: "string", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return ObservabilityPipelineElasticsearchDestinationAuth.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableReferenceTable.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableReferenceTable.ts index 693d2b832557..015f6d917863 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableReferenceTable.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineEnrichmentTableReferenceTable.ts @@ -10,6 +10,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * Uses a Datadog reference table to enrich logs. */ export class ObservabilityPipelineEnrichmentTableReferenceTable { + /** + * Name of the environment variable or secret that holds the Datadog application key used to access the reference table. + */ + "appKeyKey"?: string; /** * List of column names to include from the reference table. If not provided, all columns are included. */ @@ -39,6 +43,10 @@ export class ObservabilityPipelineEnrichmentTableReferenceTable { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + appKeyKey: { + baseName: "app_key_key", + type: "string", + }, columns: { baseName: "columns", type: "Array", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentBitSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentBitSource.ts index 18961b66eebb..116286228d46 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentBitSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentBitSource.ts @@ -14,6 +14,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineFluentBitSource { + /** + * Name of the environment variable or secret that holds the listen address for the Fluent Bit receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -43,6 +47,10 @@ export class ObservabilityPipelineFluentBitSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentdSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentdSource.ts index 1ded13835d8a..c7dc67ae01e6 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentdSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineFluentdSource.ts @@ -14,6 +14,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineFluentdSource { + /** + * Name of the environment variable or secret that holds the listen address for the Fluent receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -43,6 +47,10 @@ export class ObservabilityPipelineFluentdSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts index ae5bb16d5af3..85db74c1c50d 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGcpAuth.ts @@ -7,11 +7,11 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** - * GCP credentials used to authenticate with Google Cloud Storage. + * Google Cloud credentials used to authenticate with Google Cloud Storage. */ export class ObservabilityPipelineGcpAuth { /** - * Path to the GCP service account key file. + * Path to the Google Cloud service account key file. */ "credentialsFile": string; diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts index a7b45d3a9500..64c37e57c555 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleChronicleDestination.ts @@ -17,7 +17,7 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; */ export class ObservabilityPipelineGoogleChronicleDestination { /** - * GCP credentials used to authenticate with Google Cloud Storage. + * Google Cloud credentials used to authenticate with Google Cloud Storage. */ "auth"?: ObservabilityPipelineGcpAuth; /** @@ -32,6 +32,10 @@ export class ObservabilityPipelineGoogleChronicleDestination { * The encoding format for the logs sent to Chronicle. */ "encoding"?: ObservabilityPipelineGoogleChronicleDestinationEncoding; + /** + * Name of the environment variable or secret that holds the Google Chronicle endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -82,6 +86,10 @@ export class ObservabilityPipelineGoogleChronicleDestination { baseName: "encoding", type: "ObservabilityPipelineGoogleChronicleDestinationEncoding", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleCloudStorageDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleCloudStorageDestination.ts index 98066b567401..8e66b0bbebec 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleCloudStorageDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGoogleCloudStorageDestination.ts @@ -14,7 +14,7 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; /** * The `google_cloud_storage` destination stores logs in a Google Cloud Storage (GCS) bucket. - * It requires a bucket name, GCP authentication, and metadata fields. + * It requires a bucket name, Google Cloud authentication, and metadata fields. * * **Supported pipeline types:** logs */ @@ -24,7 +24,7 @@ export class ObservabilityPipelineGoogleCloudStorageDestination { */ "acl"?: ObservabilityPipelineGoogleCloudStorageDestinationAcl; /** - * GCP credentials used to authenticate with Google Cloud Storage. + * Google Cloud credentials used to authenticate with Google Cloud Storage. */ "auth"?: ObservabilityPipelineGcpAuth; /** diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubDestination.ts index 1c34401331cb..b54b26793438 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubDestination.ts @@ -18,7 +18,7 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; */ export class ObservabilityPipelineGooglePubSubDestination { /** - * GCP credentials used to authenticate with Google Cloud Storage. + * Google Cloud credentials used to authenticate with Google Cloud Storage. */ "auth"?: ObservabilityPipelineGcpAuth; /** @@ -29,6 +29,10 @@ export class ObservabilityPipelineGooglePubSubDestination { * Encoding format for log events. */ "encoding": ObservabilityPipelineGooglePubSubDestinationEncoding; + /** + * Name of the environment variable or secret that holds the Google Cloud Pub/Sub endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -38,7 +42,7 @@ export class ObservabilityPipelineGooglePubSubDestination { */ "inputs": Array; /** - * The GCP project ID that owns the Pub/Sub topic. + * The Google Cloud project ID that owns the Pub/Sub topic. */ "project": string; /** @@ -83,6 +87,10 @@ export class ObservabilityPipelineGooglePubSubDestination { type: "ObservabilityPipelineGooglePubSubDestinationEncoding", required: true, }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts index a2139efb66fe..e68e7074ee77 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineGooglePubSubSource.ts @@ -17,7 +17,7 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; */ export class ObservabilityPipelineGooglePubSubSource { /** - * GCP credentials used to authenticate with Google Cloud Storage. + * Google Cloud credentials used to authenticate with Google Cloud Storage. */ "auth"?: ObservabilityPipelineGcpAuth; /** @@ -29,7 +29,7 @@ export class ObservabilityPipelineGooglePubSubSource { */ "id": string; /** - * The GCP project ID that owns the Pub/Sub subscription. + * The Google Cloud project ID that owns the Pub/Sub subscription. */ "project": string; /** diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientDestination.ts index 97bfa33fa64f..dcfa7bc33c53 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientDestination.ts @@ -25,6 +25,10 @@ export class ObservabilityPipelineHttpClientDestination { * Compression configuration for HTTP requests. */ "compression"?: ObservabilityPipelineHttpClientDestinationCompression; + /** + * Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + */ + "customKey"?: string; /** * Encoding format for log events. */ @@ -37,14 +41,30 @@ export class ObservabilityPipelineHttpClientDestination { * A list of component IDs whose output is used as the input for this component. */ "inputs": Array; + /** + * Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + */ + "passwordKey"?: string; /** * Configuration for enabling TLS encryption between the pipeline component and external services. */ "tls"?: ObservabilityPipelineTls; + /** + * Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + */ + "tokenKey"?: string; /** * The destination type. The value should always be `http_client`. */ "type": ObservabilityPipelineHttpClientDestinationType; + /** + * Name of the environment variable or secret that holds the HTTP endpoint URI. + */ + "uriKey"?: string; + /** + * Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + */ + "usernameKey"?: string; /** * A container for additional, undeclared properties. @@ -70,6 +90,10 @@ export class ObservabilityPipelineHttpClientDestination { baseName: "compression", type: "ObservabilityPipelineHttpClientDestinationCompression", }, + customKey: { + baseName: "custom_key", + type: "string", + }, encoding: { baseName: "encoding", type: "ObservabilityPipelineHttpClientDestinationEncoding", @@ -85,15 +109,31 @@ export class ObservabilityPipelineHttpClientDestination { type: "Array", required: true, }, + passwordKey: { + baseName: "password_key", + type: "string", + }, tls: { baseName: "tls", type: "ObservabilityPipelineTls", }, + tokenKey: { + baseName: "token_key", + type: "string", + }, type: { baseName: "type", type: "ObservabilityPipelineHttpClientDestinationType", required: true, }, + uriKey: { + baseName: "uri_key", + type: "string", + }, + usernameKey: { + baseName: "username_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts index 349bafb7884a..5029df06696f 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpClientSource.ts @@ -20,14 +20,26 @@ export class ObservabilityPipelineHttpClientSource { * Optional authentication strategy for HTTP requests. */ "authStrategy"?: ObservabilityPipelineHttpClientSourceAuthStrategy; + /** + * Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + */ + "customKey"?: string; /** * The decoding format used to interpret incoming logs. */ "decoding": ObservabilityPipelineDecoding; + /** + * Name of the environment variable or secret that holds the HTTP endpoint URL to scrape. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ "id": string; + /** + * Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + */ + "passwordKey"?: string; /** * The interval (in seconds) between HTTP scrape requests. */ @@ -40,10 +52,18 @@ export class ObservabilityPipelineHttpClientSource { * Configuration for enabling TLS encryption between the pipeline component and external services. */ "tls"?: ObservabilityPipelineTls; + /** + * Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + */ + "tokenKey"?: string; /** * The source type. The value should always be `http_client`. */ "type": ObservabilityPipelineHttpClientSourceType; + /** + * Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + */ + "usernameKey"?: string; /** * A container for additional, undeclared properties. @@ -65,16 +85,28 @@ export class ObservabilityPipelineHttpClientSource { baseName: "auth_strategy", type: "ObservabilityPipelineHttpClientSourceAuthStrategy", }, + customKey: { + baseName: "custom_key", + type: "string", + }, decoding: { baseName: "decoding", type: "ObservabilityPipelineDecoding", required: true, }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", required: true, }, + passwordKey: { + baseName: "password_key", + type: "string", + }, scrapeIntervalSecs: { baseName: "scrape_interval_secs", type: "number", @@ -89,11 +121,19 @@ export class ObservabilityPipelineHttpClientSource { baseName: "tls", type: "ObservabilityPipelineTls", }, + tokenKey: { + baseName: "token_key", + type: "string", + }, type: { baseName: "type", type: "ObservabilityPipelineHttpClientSourceType", required: true, }, + usernameKey: { + baseName: "username_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpServerSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpServerSource.ts index 95ffcf29e2fb..8593b331a63b 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpServerSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineHttpServerSource.ts @@ -16,10 +16,18 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineHttpServerSource { + /** + * Name of the environment variable or secret that holds the listen address for the HTTP server. + */ + "addressKey"?: string; /** * HTTP authentication method. */ "authStrategy": ObservabilityPipelineHttpServerSourceAuthStrategy; + /** + * Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + */ + "customKey"?: string; /** * The decoding format used to interpret incoming logs. */ @@ -28,6 +36,10 @@ export class ObservabilityPipelineHttpServerSource { * Unique ID for the HTTP server source. */ "id": string; + /** + * Name of the environment variable or secret that holds the password (used when `auth_strategy` is `plain`). + */ + "passwordKey"?: string; /** * Configuration for enabling TLS encryption between the pipeline component and external services. */ @@ -36,6 +48,10 @@ export class ObservabilityPipelineHttpServerSource { * The source type. The value should always be `http_server`. */ "type": ObservabilityPipelineHttpServerSourceType; + /** + * Name of the environment variable or secret that holds the username (used when `auth_strategy` is `plain`). + */ + "usernameKey"?: string; /** * A container for additional, undeclared properties. @@ -53,11 +69,19 @@ export class ObservabilityPipelineHttpServerSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, authStrategy: { baseName: "auth_strategy", type: "ObservabilityPipelineHttpServerSourceAuthStrategy", required: true, }, + customKey: { + baseName: "custom_key", + type: "string", + }, decoding: { baseName: "decoding", type: "ObservabilityPipelineDecoding", @@ -68,6 +92,10 @@ export class ObservabilityPipelineHttpServerSource { type: "string", required: true, }, + passwordKey: { + baseName: "password_key", + type: "string", + }, tls: { baseName: "tls", type: "ObservabilityPipelineTls", @@ -77,6 +105,10 @@ export class ObservabilityPipelineHttpServerSource { type: "ObservabilityPipelineHttpServerSourceType", required: true, }, + usernameKey: { + baseName: "username_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaDestination.ts index c39e4ff868c3..3823679afa9b 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaDestination.ts @@ -18,6 +18,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineKafkaDestination { + /** + * Name of the environment variable or secret that holds the Kafka bootstrap servers list. + */ + "bootstrapServersKey"?: string; /** * Compression codec for Kafka messages. */ @@ -95,6 +99,10 @@ export class ObservabilityPipelineKafkaDestination { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + bootstrapServersKey: { + baseName: "bootstrap_servers_key", + type: "string", + }, compression: { baseName: "compression", type: "ObservabilityPipelineKafkaDestinationCompression", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSasl.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSasl.ts index cb584db2c192..a20f6123cd25 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSasl.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSasl.ts @@ -15,6 +15,14 @@ export class ObservabilityPipelineKafkaSasl { * SASL mechanism used for Kafka authentication. */ "mechanism"?: ObservabilityPipelineKafkaSaslMechanism; + /** + * Name of the environment variable or secret that holds the SASL password. + */ + "passwordKey"?: string; + /** + * Name of the environment variable or secret that holds the SASL username. + */ + "usernameKey"?: string; /** * A container for additional, undeclared properties. @@ -36,6 +44,14 @@ export class ObservabilityPipelineKafkaSasl { baseName: "mechanism", type: "ObservabilityPipelineKafkaSaslMechanism", }, + passwordKey: { + baseName: "password_key", + type: "string", + }, + usernameKey: { + baseName: "username_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSource.ts index 4ad1623f18a8..1e048771ade2 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineKafkaSource.ts @@ -16,6 +16,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineKafkaSource { + /** + * Name of the environment variable or secret that holds the Kafka bootstrap servers list. + */ + "bootstrapServersKey"?: string; /** * Consumer group ID used by the Kafka client. */ @@ -61,6 +65,10 @@ export class ObservabilityPipelineKafkaSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + bootstrapServersKey: { + baseName: "bootstrap_servers_key", + type: "string", + }, groupId: { baseName: "group_id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts index e4cf26b7e3a0..8b29d6f90fdd 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineLogstashSource.ts @@ -14,6 +14,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineLogstashSource { + /** + * Name of the environment variable or secret that holds the listen address for the Logstash receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -43,6 +47,10 @@ export class ObservabilityPipelineLogstashSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts index 950d7c04c374..f1715b978945 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineNewRelicDestination.ts @@ -15,6 +15,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineNewRelicDestination { + /** + * Name of the environment variable or secret that holds the New Relic account ID. + */ + "accountIdKey"?: string; /** * Configuration for buffer settings on destination components. */ @@ -27,6 +31,10 @@ export class ObservabilityPipelineNewRelicDestination { * A list of component IDs whose output is used as the `input` for this component. */ "inputs": Array; + /** + * Name of the environment variable or secret that holds the New Relic license key. + */ + "licenseKeyKey"?: string; /** * The New Relic region. */ @@ -52,6 +60,10 @@ export class ObservabilityPipelineNewRelicDestination { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + accountIdKey: { + baseName: "account_id_key", + type: "string", + }, buffer: { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", @@ -66,6 +78,10 @@ export class ObservabilityPipelineNewRelicDestination { type: "Array", required: true, }, + licenseKeyKey: { + baseName: "license_key_key", + type: "string", + }, region: { baseName: "region", type: "ObservabilityPipelineNewRelicDestinationRegion", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineOpenSearchDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineOpenSearchDestination.ts index ac55503e7ef2..9afae977d696 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineOpenSearchDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineOpenSearchDestination.ts @@ -4,6 +4,7 @@ * Copyright 2020-Present Datadog, Inc. */ import { ObservabilityPipelineBufferOptions } from "./ObservabilityPipelineBufferOptions"; +import { ObservabilityPipelineElasticsearchDestinationAuth } from "./ObservabilityPipelineElasticsearchDestinationAuth"; import { ObservabilityPipelineOpenSearchDestinationDataStream } from "./ObservabilityPipelineOpenSearchDestinationDataStream"; import { ObservabilityPipelineOpenSearchDestinationType } from "./ObservabilityPipelineOpenSearchDestinationType"; @@ -15,6 +16,11 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineOpenSearchDestination { + /** + * Authentication settings for the Elasticsearch destination. + * When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets. + */ + "auth"?: ObservabilityPipelineElasticsearchDestinationAuth; /** * Configuration for buffer settings on destination components. */ @@ -27,6 +33,10 @@ export class ObservabilityPipelineOpenSearchDestination { * Configuration options for writing to OpenSearch Data Streams instead of a fixed index. */ "dataStream"?: ObservabilityPipelineOpenSearchDestinationDataStream; + /** + * Name of the environment variable or secret that holds the OpenSearch endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -56,6 +66,10 @@ export class ObservabilityPipelineOpenSearchDestination { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + auth: { + baseName: "auth", + type: "ObservabilityPipelineElasticsearchDestinationAuth", + }, buffer: { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", @@ -68,6 +82,10 @@ export class ObservabilityPipelineOpenSearchDestination { baseName: "data_stream", type: "ObservabilityPipelineOpenSearchDestinationDataStream", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogDestination.ts index 6670bf411234..fead7d51c5f2 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogDestination.ts @@ -19,6 +19,10 @@ export class ObservabilityPipelineRsyslogDestination { * Configuration for buffer settings on destination components. */ "buffer"?: ObservabilityPipelineBufferOptions; + /** + * Name of the environment variable or secret that holds the syslog server endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -60,6 +64,10 @@ export class ObservabilityPipelineRsyslogDestination { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogSource.ts index df9c0c95d19a..0223bc1d98b1 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineRsyslogSource.ts @@ -15,6 +15,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineRsyslogSource { + /** + * Name of the environment variable or secret that holds the listen address for the syslog receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -48,6 +52,10 @@ export class ObservabilityPipelineRsyslogSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts index c684e081a835..47fe690f6065 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSentinelOneDestination.ts @@ -31,6 +31,10 @@ export class ObservabilityPipelineSentinelOneDestination { * The SentinelOne region to send logs to. */ "region": ObservabilityPipelineSentinelOneDestinationRegion; + /** + * Name of the environment variable or secret that holds the SentinelOne API token. + */ + "tokenKey"?: string; /** * The destination type. The value should always be `sentinel_one`. */ @@ -71,6 +75,10 @@ export class ObservabilityPipelineSentinelOneDestination { type: "ObservabilityPipelineSentinelOneDestinationRegion", required: true, }, + tokenKey: { + baseName: "token_key", + type: "string", + }, type: { baseName: "type", type: "ObservabilityPipelineSentinelOneDestinationType", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketDestination.ts index 54947f235c2c..9e974466191f 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketDestination.ts @@ -18,6 +18,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSocketDestination { + /** + * Name of the environment variable or secret that holds the socket address (host:port). + */ + "addressKey"?: string; /** * Configuration for buffer settings on destination components. */ @@ -67,6 +71,10 @@ export class ObservabilityPipelineSocketDestination { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, buffer: { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketSource.ts index 1caa47a76cde..e038f42dfa6f 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSocketSource.ts @@ -16,6 +16,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSocketSource { + /** + * Name of the environment variable or secret that holds the listen address for the socket. + */ + "addressKey"?: string; /** * Framing method configuration for the socket source. */ @@ -53,6 +57,10 @@ export class ObservabilityPipelineSocketSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, framing: { baseName: "framing", type: "ObservabilityPipelineSocketSourceFraming", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecDestination.ts index a186486fd884..27ebd579a55d 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecDestination.ts @@ -28,6 +28,10 @@ export class ObservabilityPipelineSplunkHecDestination { * Encoding format for log events. */ "encoding"?: ObservabilityPipelineSplunkHecDestinationEncoding; + /** + * Name of the environment variable or secret that holds the Splunk HEC endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -44,6 +48,10 @@ export class ObservabilityPipelineSplunkHecDestination { * The Splunk sourcetype to assign to log events. */ "sourcetype"?: string; + /** + * Name of the environment variable or secret that holds the Splunk HEC token. + */ + "tokenKey"?: string; /** * The destination type. Always `splunk_hec`. */ @@ -77,6 +85,10 @@ export class ObservabilityPipelineSplunkHecDestination { baseName: "encoding", type: "ObservabilityPipelineSplunkHecDestinationEncoding", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", @@ -95,6 +107,10 @@ export class ObservabilityPipelineSplunkHecDestination { baseName: "sourcetype", type: "string", }, + tokenKey: { + baseName: "token_key", + type: "string", + }, type: { baseName: "type", type: "ObservabilityPipelineSplunkHecDestinationType", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecSource.ts index 1af8b4810a58..da46f3a7d485 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkHecSource.ts @@ -14,6 +14,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSplunkHecSource { + /** + * Name of the environment variable or secret that holds the listen address for the HEC API. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -43,6 +47,10 @@ export class ObservabilityPipelineSplunkHecSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkTcpSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkTcpSource.ts index 69c70d5783d1..dbd4a14e9038 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkTcpSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSplunkTcpSource.ts @@ -15,6 +15,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSplunkTcpSource { + /** + * Name of the environment variable or secret that holds the listen address for the Splunk TCP receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -44,6 +48,10 @@ export class ObservabilityPipelineSplunkTcpSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicDestination.ts index 4c2b4f900b8b..e0fb19c77ecd 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicDestination.ts @@ -24,6 +24,10 @@ export class ObservabilityPipelineSumoLogicDestination { * The output encoding format. */ "encoding"?: ObservabilityPipelineSumoLogicDestinationEncoding; + /** + * Name of the environment variable or secret that holds the Sumo Logic HTTP endpoint URL. + */ + "endpointUrlKey"?: string; /** * A list of custom headers to include in the request to Sumo Logic. */ @@ -77,6 +81,10 @@ export class ObservabilityPipelineSumoLogicDestination { baseName: "encoding", type: "ObservabilityPipelineSumoLogicDestinationEncoding", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, headerCustomFields: { baseName: "header_custom_fields", type: "Array", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicSource.ts index 0424e43b4a21..409e7edd7b1a 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSumoLogicSource.ts @@ -13,6 +13,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSumoLogicSource { + /** + * Name of the environment variable or secret that holds the listen address for the Sumo Logic receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -38,6 +42,10 @@ export class ObservabilityPipelineSumoLogicSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgDestination.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgDestination.ts index b1c64e75442a..d6c8ff85ef58 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgDestination.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgDestination.ts @@ -19,6 +19,10 @@ export class ObservabilityPipelineSyslogNgDestination { * Configuration for buffer settings on destination components. */ "buffer"?: ObservabilityPipelineBufferOptions; + /** + * Name of the environment variable or secret that holds the syslog-ng server endpoint URL. + */ + "endpointUrlKey"?: string; /** * The unique identifier for this component. */ @@ -60,6 +64,10 @@ export class ObservabilityPipelineSyslogNgDestination { baseName: "buffer", type: "ObservabilityPipelineBufferOptions", }, + endpointUrlKey: { + baseName: "endpoint_url_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgSource.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgSource.ts index 83401dc310ff..e7f6dd83cc36 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgSource.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineSyslogNgSource.ts @@ -15,6 +15,10 @@ import { AttributeTypeMap } from "../../datadog-api-client-common/util"; * **Supported pipeline types:** logs */ export class ObservabilityPipelineSyslogNgSource { + /** + * Name of the environment variable or secret that holds the listen address for the syslog-ng receiver. + */ + "addressKey"?: string; /** * The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). */ @@ -48,6 +52,10 @@ export class ObservabilityPipelineSyslogNgSource { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + addressKey: { + baseName: "address_key", + type: "string", + }, id: { baseName: "id", type: "string", diff --git a/packages/datadog-api-client-v2/models/ObservabilityPipelineTls.ts b/packages/datadog-api-client-v2/models/ObservabilityPipelineTls.ts index c5e3955ba579..52126a3e406b 100644 --- a/packages/datadog-api-client-v2/models/ObservabilityPipelineTls.ts +++ b/packages/datadog-api-client-v2/models/ObservabilityPipelineTls.ts @@ -22,6 +22,10 @@ export class ObservabilityPipelineTls { * Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. */ "keyFile"?: string; + /** + * Name of the environment variable or secret that holds the passphrase for the private key file. + */ + "keyPassKey"?: string; /** * A container for additional, undeclared properties. @@ -52,6 +56,10 @@ export class ObservabilityPipelineTls { baseName: "key_file", type: "string", }, + keyPassKey: { + baseName: "key_pass_key", + type: "string", + }, additionalProperties: { baseName: "additionalProperties", type: "{ [key: string]: any; }",