Skip to content

Commit 122e1eb

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 30e9724 of spec repo
1 parent 095d494 commit 122e1eb

18 files changed

Lines changed: 500 additions & 6 deletions

File tree

.generator/schemas/v2/openapi.yaml

Lines changed: 63 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43989,6 +43989,40 @@ components:
4398943989
type: string
4399043990
x-enum-varnames:
4399143991
- ELASTICSEARCH
43992+
ObservabilityPipelineEnrichmentTableFieldEventLookup:
43993+
description: Looks up a value from a field path in the log event.
43994+
properties:
43995+
event:
43996+
description: The path to the field in the log event to use as the lookup key.
43997+
example: log.user.id
43998+
type: string
43999+
required:
44000+
- event
44001+
type: object
44002+
ObservabilityPipelineEnrichmentTableFieldSecretLookup:
44003+
description: Looks up a value stored as a pipeline secret.
44004+
properties:
44005+
secret:
44006+
description: The name of the secret containing the lookup key value.
44007+
example: MY_LOOKUP_SECRET
44008+
type: string
44009+
required:
44010+
- secret
44011+
type: object
44012+
ObservabilityPipelineEnrichmentTableFieldStringPath:
44013+
description: A plain field path in the log event, used as the lookup key.
44014+
example: log.user.id
44015+
type: string
44016+
ObservabilityPipelineEnrichmentTableFieldVrlLookup:
44017+
description: Evaluates a VRL expression to produce the lookup key.
44018+
properties:
44019+
vrl:
44020+
description: A VRL expression that returns the value to use as the lookup key.
44021+
example: .log.user.id
44022+
type: string
44023+
required:
44024+
- vrl
44025+
type: object
4399244026
ObservabilityPipelineEnrichmentTableFile:
4399344027
description: Defines a static enrichment table loaded from a CSV file.
4399444028
properties:
@@ -44039,6 +44073,16 @@ components:
4403944073
type: string
4404044074
x-enum-varnames:
4404144075
- CSV
44076+
ObservabilityPipelineEnrichmentTableFileKeyItemField:
44077+
description: |-
44078+
Specifies the source of the key value used for enrichment table lookups.
44079+
Can be a plain field path string or an object specifying `event`, `vrl`, or `secret`.
44080+
example: log.user.id
44081+
oneOf:
44082+
- $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldStringPath"
44083+
- $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldEventLookup"
44084+
- $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldVrlLookup"
44085+
- $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldSecretLookup"
4404244086
ObservabilityPipelineEnrichmentTableFileKeyItems:
4404344087
description: Defines how to map log fields to enrichment table columns during lookups.
4404444088
properties:
@@ -44049,9 +44093,7 @@ components:
4404944093
comparison:
4405044094
$ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison"
4405144095
field:
44052-
description: The `items` `field`.
44053-
example: log.user.id
44054-
type: string
44096+
$ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemField"
4405544097
required:
4405644098
- column
4405744099
- comparison
@@ -47072,6 +47114,8 @@ components:
4707247114
description: Name of the environment variable or secret that holds the Splunk HEC token.
4707347115
example: SPLUNK_HEC_TOKEN
4707447116
type: string
47117+
token_strategy:
47118+
$ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestinationTokenStrategy"
4707547119
type:
4707647120
$ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestinationType"
4707747121
required:
@@ -47090,6 +47134,16 @@ components:
4709047134
x-enum-varnames:
4709147135
- JSON
4709247136
- RAW_MESSAGE
47137+
ObservabilityPipelineSplunkHecDestinationTokenStrategy:
47138+
description: Controls how the Splunk HEC token is supplied. Use `custom` to provide a token with `token_key`, or `from_source` to forward the token received from an upstream Splunk HEC source.
47139+
enum:
47140+
- custom
47141+
- from_source
47142+
example: custom
47143+
type: string
47144+
x-enum-varnames:
47145+
- CUSTOM
47146+
- FROM_SOURCE
4709347147
ObservabilityPipelineSplunkHecDestinationType:
4709447148
default: splunk_hec
4709547149
description: The destination type. Always `splunk_hec`.
@@ -47113,6 +47167,12 @@ components:
4711347167
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).
4711447168
example: splunk-hec-source
4711547169
type: string
47170+
store_hec_token:
47171+
description: |-
47172+
When `true`, the Splunk HEC token from the incoming request is stored in the event metadata.
47173+
This allows downstream components to forward the token to other Splunk HEC destinations.
47174+
example: true
47175+
type: boolean
4711647176
tls:
4711747177
$ref: "#/components/schemas/ObservabilityPipelineTls"
4711847178
type:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2026-04-08T15:11:59.762Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
{
2+
"log": {
3+
"_recordingName": "Observability Pipelines/Validate an observability pipeline with Splunk HEC destination token_strategy returns \"OK\" response",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "71464a8fa8e1502453de0fde42aaea8c",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 553,
16+
"cookies": [],
17+
"headers": [
18+
{
19+
"_fromType": "array",
20+
"name": "accept",
21+
"value": "application/json"
22+
},
23+
{
24+
"_fromType": "array",
25+
"name": "content-type",
26+
"value": "application/json"
27+
}
28+
],
29+
"headersSize": 583,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"text": "{\"data\":{\"attributes\":{\"config\":{\"destinations\":[{\"id\":\"splunk-hec-destination\",\"inputs\":[\"my-processor-group\"],\"token_key\":\"SPLUNK_HEC_TOKEN\",\"token_strategy\":\"custom\",\"type\":\"splunk_hec\"}],\"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 Splunk HEC token_strategy\"},\"type\":\"pipelines\"}}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/validate"
39+
},
40+
"response": {
41+
"bodySize": 14,
42+
"content": {
43+
"mimeType": "application/vnd.api+json",
44+
"size": 14,
45+
"text": "{\"errors\":[]}\n"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/vnd.api+json"
52+
}
53+
],
54+
"headersSize": 370,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2026-04-08T15:11:59.764Z",
61+
"time": 370
62+
}
63+
],
64+
"pages": [],
65+
"version": "1.2"
66+
}
67+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2026-04-08T15:11:59.370Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
{
2+
"log": {
3+
"_recordingName": "Observability Pipelines/Validate an observability pipeline with Splunk HEC source store_hec_token returns \"OK\" response",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "af5cae27d9df78c907ef82b805cf3c0f",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 515,
16+
"cookies": [],
17+
"headers": [
18+
{
19+
"_fromType": "array",
20+
"name": "accept",
21+
"value": "application/json"
22+
},
23+
{
24+
"_fromType": "array",
25+
"name": "content-type",
26+
"value": "application/json"
27+
}
28+
],
29+
"headersSize": 583,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"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\":[\"splunk-hec-source\"],\"processors\":[{\"enabled\":true,\"id\":\"filter-processor\",\"include\":\"status:error\",\"type\":\"filter\"}]}],\"sources\":[{\"id\":\"splunk-hec-source\",\"store_hec_token\":true,\"type\":\"splunk_hec\"}]},\"name\":\"Pipeline with Splunk HEC store_hec_token\"},\"type\":\"pipelines\"}}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/validate"
39+
},
40+
"response": {
41+
"bodySize": 14,
42+
"content": {
43+
"mimeType": "application/vnd.api+json",
44+
"size": 14,
45+
"text": "{\"errors\":[]}\n"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/vnd.api+json"
52+
}
53+
],
54+
"headersSize": 369,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2026-04-08T15:11:59.373Z",
61+
"time": 383
62+
}
63+
],
64+
"pages": [],
65+
"version": "1.2"
66+
}
67+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2026-04-09T11:54:29.220Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
{
2+
"log": {
3+
"_recordingName": "Observability Pipelines/Validate an observability pipeline with enrichment table secret field lookup returns \"OK\" response",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "862a8010da15d364489e4b7b8dc6e8ba",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 783,
16+
"cookies": [],
17+
"headers": [
18+
{
19+
"_fromType": "array",
20+
"name": "accept",
21+
"value": "application/json"
22+
},
23+
{
24+
"_fromType": "array",
25+
"name": "content-type",
26+
"value": "application/json"
27+
}
28+
],
29+
"headersSize": 583,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"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\":[\"datadog-agent-source\"],\"processors\":[{\"enabled\":true,\"file\":{\"encoding\":{\"delimiter\":\",\",\"includes_headers\":true,\"type\":\"csv\"},\"key\":[{\"column\":\"user_id\",\"comparison\":\"equals\",\"field\":{\"secret\":\"LOOKUP_KEY_SECRET\"}}],\"path\":\"/etc/enrichment/lookup.csv\",\"schema\":[{\"column\":\"user_id\",\"type\":\"string\"}]},\"id\":\"enrichment-processor\",\"include\":\"*\",\"target\":\"enriched\",\"type\":\"enrichment_table\"}]}],\"sources\":[{\"id\":\"datadog-agent-source\",\"type\":\"datadog_agent\"}]},\"name\":\"Pipeline with Enrichment Table Secret Field Lookup\"},\"type\":\"pipelines\"}}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v2/obs-pipelines/pipelines/validate"
39+
},
40+
"response": {
41+
"bodySize": 14,
42+
"content": {
43+
"mimeType": "application/vnd.api+json",
44+
"size": 14,
45+
"text": "{\"errors\":[]}\n"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/vnd.api+json"
52+
}
53+
],
54+
"headersSize": 370,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2026-04-09T11:54:30.102Z",
61+
"time": 216
62+
}
63+
],
64+
"pages": [],
65+
"version": "1.2"
66+
}
67+
}

features/v2/observability_pipelines.feature

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,22 @@ Feature: Observability Pipelines
207207
Then the response status is 200 OK
208208
And the response "errors" has length 0
209209

210+
@team:DataDog/observability-pipelines
211+
Scenario: Validate an observability pipeline with Splunk HEC destination token_strategy returns "OK" response
212+
Given new "ValidatePipeline" request
213+
And body with value {"data": {"attributes": {"config": {"destinations": [{"id": "splunk-hec-destination", "inputs": ["my-processor-group"], "type": "splunk_hec", "token_key": "SPLUNK_HEC_TOKEN", "token_strategy": "custom"}], "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 Splunk HEC token_strategy"}, "type": "pipelines"}}
214+
When the request is sent
215+
Then the response status is 200 OK
216+
And the response "errors" has length 0
217+
218+
@team:DataDog/observability-pipelines
219+
Scenario: Validate an observability pipeline with Splunk HEC source store_hec_token returns "OK" response
220+
Given new "ValidatePipeline" request
221+
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": ["splunk-hec-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]}], "sources": [{"id": "splunk-hec-source", "type": "splunk_hec", "store_hec_token": true}]}, "name": "Pipeline with Splunk HEC store_hec_token"}, "type": "pipelines"}}
222+
When the request is sent
223+
Then the response status is 200 OK
224+
And the response "errors" has length 0
225+
210226
@team:DataDog/observability-pipelines
211227
Scenario: Validate an observability pipeline with amazon S3 source compression returns "OK" response
212228
Given new "ValidatePipeline" request
@@ -223,6 +239,14 @@ Feature: Observability Pipelines
223239
Then the response status is 200 OK
224240
And the response "errors" has length 0
225241

242+
@team:DataDog/observability-pipelines
243+
Scenario: Validate an observability pipeline with enrichment table secret field lookup returns "OK" response
244+
Given new "ValidatePipeline" request
245+
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": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "enrichment-processor", "include": "*", "target": "enriched", "type": "enrichment_table", "file": {"encoding": {"delimiter": ",", "type": "csv", "includes_headers": true}, "key": [{"column": "user_id", "comparison": "equals", "field": {"secret": "LOOKUP_KEY_SECRET"}}], "path": "/etc/enrichment/lookup.csv", "schema": [{"column": "user_id", "type": "string"}]}}]}], "sources": [{"id": "datadog-agent-source", "type": "datadog_agent"}]}, "name": "Pipeline with Enrichment Table Secret Field Lookup"}, "type": "pipelines"}}
246+
When the request is sent
247+
Then the response status is 200 OK
248+
And the response "errors" has length 0
249+
226250
@team:DataDog/observability-pipelines
227251
Scenario: Validate an observability pipeline with source secret key returns "OK" response
228252
Given new "ValidatePipeline" request

services/observability_pipelines/src/v2/index.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,13 @@ export { ObservabilityPipelineElasticsearchDestinationApiVersion } from "./model
9797
export { ObservabilityPipelineElasticsearchDestinationAuth } from "./models/ObservabilityPipelineElasticsearchDestinationAuth";
9898
export { ObservabilityPipelineElasticsearchDestinationDataStream } from "./models/ObservabilityPipelineElasticsearchDestinationDataStream";
9999
export { ObservabilityPipelineElasticsearchDestinationType } from "./models/ObservabilityPipelineElasticsearchDestinationType";
100+
export { ObservabilityPipelineEnrichmentTableFieldEventLookup } from "./models/ObservabilityPipelineEnrichmentTableFieldEventLookup";
101+
export { ObservabilityPipelineEnrichmentTableFieldSecretLookup } from "./models/ObservabilityPipelineEnrichmentTableFieldSecretLookup";
102+
export { ObservabilityPipelineEnrichmentTableFieldVrlLookup } from "./models/ObservabilityPipelineEnrichmentTableFieldVrlLookup";
100103
export { ObservabilityPipelineEnrichmentTableFile } from "./models/ObservabilityPipelineEnrichmentTableFile";
101104
export { ObservabilityPipelineEnrichmentTableFileEncoding } from "./models/ObservabilityPipelineEnrichmentTableFileEncoding";
102105
export { ObservabilityPipelineEnrichmentTableFileEncodingType } from "./models/ObservabilityPipelineEnrichmentTableFileEncodingType";
106+
export { ObservabilityPipelineEnrichmentTableFileKeyItemField } from "./models/ObservabilityPipelineEnrichmentTableFileKeyItemField";
103107
export { ObservabilityPipelineEnrichmentTableFileKeyItems } from "./models/ObservabilityPipelineEnrichmentTableFileKeyItems";
104108
export { ObservabilityPipelineEnrichmentTableFileKeyItemsComparison } from "./models/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison";
105109
export { ObservabilityPipelineEnrichmentTableFileSchemaItems } from "./models/ObservabilityPipelineEnrichmentTableFileSchemaItems";
@@ -280,6 +284,7 @@ export { ObservabilityPipelineSplitArrayProcessorArrayConfig } from "./models/Ob
280284
export { ObservabilityPipelineSplitArrayProcessorType } from "./models/ObservabilityPipelineSplitArrayProcessorType";
281285
export { ObservabilityPipelineSplunkHecDestination } from "./models/ObservabilityPipelineSplunkHecDestination";
282286
export { ObservabilityPipelineSplunkHecDestinationEncoding } from "./models/ObservabilityPipelineSplunkHecDestinationEncoding";
287+
export { ObservabilityPipelineSplunkHecDestinationTokenStrategy } from "./models/ObservabilityPipelineSplunkHecDestinationTokenStrategy";
283288
export { ObservabilityPipelineSplunkHecDestinationType } from "./models/ObservabilityPipelineSplunkHecDestinationType";
284289
export { ObservabilityPipelineSplunkHecSource } from "./models/ObservabilityPipelineSplunkHecSource";
285290
export { ObservabilityPipelineSplunkHecSourceType } from "./models/ObservabilityPipelineSplunkHecSourceType";

0 commit comments

Comments
 (0)