Skip to content

Commit 64dc81e

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 7331abb of spec repo
1 parent 877e7b7 commit 64dc81e

16 files changed

+684
-0
lines changed

.generator/schemas/v2/openapi.yaml

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10740,6 +10740,7 @@ components:
1074010740
- $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk'
1074110741
- $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearch'
1074210742
- $ref: '#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel'
10743+
- $ref: '#/components/schemas/CustomDestinationForwardDestinationGoogleSecurityOperations'
1074310744
CustomDestinationForwardDestinationElasticsearch:
1074410745
description: The Elasticsearch destination.
1074510746
properties:
@@ -10797,6 +10798,42 @@ components:
1079710798
type: string
1079810799
x-enum-varnames:
1079910800
- ELASTICSEARCH
10801+
CustomDestinationForwardDestinationGoogleSecurityOperations:
10802+
description: The Google Security Operations destination.
10803+
properties:
10804+
auth:
10805+
$ref: '#/components/schemas/CustomDestinationGoogleSecurityOperationsDestinationAuth'
10806+
customer_id:
10807+
description: The customer ID of the Google Security Operations account.
10808+
example: 123-456-7890
10809+
type: string
10810+
namespace:
10811+
description: The namespace of the Google Security Operations account.
10812+
example: google-security-operations-namespace
10813+
type: string
10814+
regional_endpoint:
10815+
description: The `CustomDestinationForwardDestinationGoogleSecurityOperations`
10816+
`regional_endpoint`.
10817+
example: https://malachiteingestion-pa.googleapis.com
10818+
type: string
10819+
type:
10820+
$ref: '#/components/schemas/CustomDestinationForwardDestinationGoogleSecurityOperationsType'
10821+
required:
10822+
- type
10823+
- customer_id
10824+
- regional_endpoint
10825+
- namespace
10826+
- auth
10827+
type: object
10828+
CustomDestinationForwardDestinationGoogleSecurityOperationsType:
10829+
default: google_security_operations
10830+
description: Type of the Google Security Operations destination.
10831+
enum:
10832+
- google_security_operations
10833+
example: google_security_operations
10834+
type: string
10835+
x-enum-varnames:
10836+
- GOOGLE_SECURITY_OPERATIONS
1080010837
CustomDestinationForwardDestinationHttp:
1080110838
description: The HTTP destination.
1080210839
properties:
@@ -10898,6 +10935,55 @@ components:
1089810935
type: string
1089910936
x-enum-varnames:
1090010937
- SPLUNK_HEC
10938+
CustomDestinationGoogleSecurityOperationsDestinationAuth:
10939+
description: Google Security Operations destination authentication.
10940+
properties:
10941+
client_email:
10942+
description: The Google Security Operations client email.
10943+
10944+
type: string
10945+
client_id:
10946+
description: The Google Security Operations client ID. This field is not
10947+
returned by the API.
10948+
example: def123456
10949+
type: string
10950+
writeOnly: true
10951+
private_key:
10952+
description: The Google Security Operations private key. This field is not
10953+
returned by the API.
10954+
example: '-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBK...\n-----END
10955+
PRIVATE KEY-----\n'
10956+
type: string
10957+
writeOnly: true
10958+
private_key_id:
10959+
description: The Google Security Operations private key ID. This field is
10960+
not returned by the API.
10961+
example: abc12345678
10962+
type: string
10963+
writeOnly: true
10964+
project_id:
10965+
description: Google Security Operations project ID.
10966+
example: gcp-project
10967+
type: string
10968+
type:
10969+
$ref: '#/components/schemas/CustomDestinationGoogleSecurityOperationsDestinationAuthType'
10970+
required:
10971+
- type
10972+
- project_id
10973+
- private_key_id
10974+
- client_email
10975+
- client_id
10976+
- private_key
10977+
type: object
10978+
CustomDestinationGoogleSecurityOperationsDestinationAuthType:
10979+
default: gcp_private_key
10980+
description: Type of the Google Security Operations destination authentication.
10981+
enum:
10982+
- gcp_private_key
10983+
example: gcp_private_key
10984+
type: string
10985+
x-enum-varnames:
10986+
- GCP_PRIVATE_KEY
1090110987
CustomDestinationHttpDestinationAuth:
1090210988
description: Authentication method of the HTTP requests.
1090310989
oneOf:
@@ -11043,6 +11129,7 @@ components:
1104311129
- $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunk'
1104411130
- $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch'
1104511131
- $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinel'
11132+
- $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationGoogleSecurityOperations'
1104611133
CustomDestinationResponseForwardDestinationElasticsearch:
1104711134
description: The Elasticsearch destination.
1104811135
properties:
@@ -11100,6 +11187,42 @@ components:
1110011187
type: string
1110111188
x-enum-varnames:
1110211189
- ELASTICSEARCH
11190+
CustomDestinationResponseForwardDestinationGoogleSecurityOperations:
11191+
description: The Google Security Operations destination.
11192+
properties:
11193+
auth:
11194+
$ref: '#/components/schemas/CustomDestinationResponseGoogleSecurityOperationsDestinationAuth'
11195+
customer_id:
11196+
description: The customer ID of the Google Security Operations account.
11197+
example: 123-456-7890
11198+
type: string
11199+
namespace:
11200+
description: The namespace of the Google Security Operations account.
11201+
example: google-security-operations-namespace
11202+
type: string
11203+
regional_endpoint:
11204+
description: The `CustomDestinationResponseForwardDestinationGoogleSecurityOperations`
11205+
`regional_endpoint`.
11206+
example: https://malachiteingestion-pa.googleapis.com
11207+
type: string
11208+
type:
11209+
$ref: '#/components/schemas/CustomDestinationResponseForwardDestinationGoogleSecurityOperationsType'
11210+
required:
11211+
- type
11212+
- customer_id
11213+
- regional_endpoint
11214+
- namespace
11215+
- auth
11216+
type: object
11217+
CustomDestinationResponseForwardDestinationGoogleSecurityOperationsType:
11218+
default: google_security_operations
11219+
description: Type of the Google Security Operations destination.
11220+
enum:
11221+
- google_security_operations
11222+
example: google_security_operations
11223+
type: string
11224+
x-enum-varnames:
11225+
- GOOGLE_SECURITY_OPERATIONS
1110311226
CustomDestinationResponseForwardDestinationHttp:
1110411227
description: The HTTP destination.
1110511228
properties:
@@ -11194,6 +11317,33 @@ components:
1119411317
type: string
1119511318
x-enum-varnames:
1119611319
- SPLUNK_HEC
11320+
CustomDestinationResponseGoogleSecurityOperationsDestinationAuth:
11321+
description: Google Security Operations destination authentication.
11322+
properties:
11323+
client_email:
11324+
description: The Google Security Operations client email.
11325+
11326+
type: string
11327+
project_id:
11328+
description: Google Security Operations project ID.
11329+
example: gcp-project
11330+
type: string
11331+
type:
11332+
$ref: '#/components/schemas/CustomDestinationResponseGoogleSecurityOperationsDestinationAuthType'
11333+
required:
11334+
- type
11335+
- project_id
11336+
- client_email
11337+
type: object
11338+
CustomDestinationResponseGoogleSecurityOperationsDestinationAuthType:
11339+
default: gcp_private_key
11340+
description: Type of the Google Security Operations destination authentication.
11341+
enum:
11342+
- gcp_private_key
11343+
example: gcp_private_key
11344+
type: string
11345+
x-enum-varnames:
11346+
- GCP_PRIVATE_KEY
1119711347
CustomDestinationResponseHttpDestinationAuth:
1119811348
description: Authentication method of the HTTP requests.
1119911349
oneOf:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
"2025-07-09T08:26:14.805Z"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
{
2+
"log": {
3+
"_recordingName": "Logs Custom Destinations/Create a Google Security Operations custom destination returns \"OK\" response",
4+
"creator": {
5+
"comment": "persister:fs",
6+
"name": "Polly.JS",
7+
"version": "6.0.5"
8+
},
9+
"entries": [
10+
{
11+
"_id": "1db6a6ab99d9d8ab9eb0880014ac1ce1",
12+
"_order": 0,
13+
"cache": {},
14+
"request": {
15+
"bodySize": 710,
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": 592,
30+
"httpVersion": "HTTP/1.1",
31+
"method": "POST",
32+
"postData": {
33+
"mimeType": "application/json",
34+
"params": [],
35+
"text": "{\"data\":{\"attributes\":{\"enabled\":false,\"forward_tags\":false,\"forward_tags_restriction_list\":[\"datacenter\",\"host\"],\"forward_tags_restriction_list_type\":\"ALLOW_LIST\",\"forwarder_destination\":{\"auth\":{\"client_email\":\"[email protected]\",\"client_id\":\"def123456\",\"private_key\":\"-----BEGIN PRIVATE KEY-----\\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBK...\\n-----END PRIVATE KEY-----\\n\",\"private_key_id\":\"abc12345678\",\"project_id\":\"gcp-project\",\"type\":\"gcp_private_key\"},\"customer_id\":\"123-456-7890\",\"namespace\":\"google-security-operations-namespace\",\"regional_endpoint\":\"https://malachiteingestion-pa.googleapis.com\",\"type\":\"google_security_operations\"},\"name\":\"Nginx logs\",\"query\":\"source:nginx\"},\"type\":\"custom_destination\"}}"
36+
},
37+
"queryString": [],
38+
"url": "https://api.datadoghq.com/api/v2/logs/config/custom-destinations"
39+
},
40+
"response": {
41+
"bodySize": 588,
42+
"content": {
43+
"mimeType": "application/json",
44+
"size": 588,
45+
"text": "{\"data\":{\"id\":\"363586eb-0e4c-45c6-ba95-5afaddead03f\",\"attributes\":{\"name\":\"Nginx logs\",\"query\":\"source:nginx\",\"enabled\":false,\"forwarder_destination\":{\"customer_id\":\"123-456-7890\",\"regional_endpoint\":\"https://malachiteingestion-pa.googleapis.com\",\"namespace\":\"google-security-operations-namespace\",\"auth\":{\"project_id\":\"gcp-project\",\"client_email\":\"[email protected]\",\"type\":\"gcp_private_key\"},\"type\":\"google_security_operations\"},\"forward_tags_restriction_list_type\":\"ALLOW_LIST\",\"forward_tags_restriction_list\":[\"datacenter\",\"host\"],\"forward_tags\":false},\"type\":\"custom_destination\"}}\n"
46+
},
47+
"cookies": [],
48+
"headers": [
49+
{
50+
"name": "content-type",
51+
"value": "application/json"
52+
}
53+
],
54+
"headersSize": 713,
55+
"httpVersion": "HTTP/1.1",
56+
"redirectURL": "",
57+
"status": 200,
58+
"statusText": "OK"
59+
},
60+
"startedDateTime": "2025-07-09T08:26:15.220Z",
61+
"time": 383
62+
},
63+
{
64+
"_id": "b357449565ea2dc8baf41959bbb48471",
65+
"_order": 0,
66+
"cache": {},
67+
"request": {
68+
"bodySize": 0,
69+
"cookies": [],
70+
"headers": [
71+
{
72+
"_fromType": "array",
73+
"name": "accept",
74+
"value": "*/*"
75+
}
76+
],
77+
"headersSize": 565,
78+
"httpVersion": "HTTP/1.1",
79+
"method": "DELETE",
80+
"queryString": [],
81+
"url": "https://api.datadoghq.com/api/v2/logs/config/custom-destinations/363586eb-0e4c-45c6-ba95-5afaddead03f"
82+
},
83+
"response": {
84+
"bodySize": 0,
85+
"content": {
86+
"mimeType": "text/html; charset=utf-8",
87+
"size": 0
88+
},
89+
"cookies": [],
90+
"headers": [
91+
{
92+
"name": "content-type",
93+
"value": "text/html; charset=utf-8"
94+
}
95+
],
96+
"headersSize": 700,
97+
"httpVersion": "HTTP/1.1",
98+
"redirectURL": "",
99+
"status": 204,
100+
"statusText": "No Content"
101+
},
102+
"startedDateTime": "2025-07-09T08:26:15.613Z",
103+
"time": 376
104+
}
105+
],
106+
"pages": [],
107+
"version": "1.2"
108+
}
109+
}

features/v2/logs_custom_destinations.feature

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,33 @@ Feature: Logs Custom Destinations
5757
And the response "data.attributes.forward_tags_restriction_list" array contains value "host"
5858
And the response "data.attributes.forward_tags_restriction_list_type" is equal to "ALLOW_LIST"
5959

60+
@team:DataDog/logs-backend @team:DataDog/logs-forwarding
61+
Scenario: Create a Google Security Operations custom destination returns "OK" response
62+
Given new "CreateLogsCustomDestination" request
63+
And body with value {"data": {"attributes": {"enabled": false, "forward_tags": false, "forward_tags_restriction_list": ["datacenter", "host"], "forward_tags_restriction_list_type": "ALLOW_LIST", "forwarder_destination": {"type": "google_security_operations", "customer_id": "123-456-7890", "regional_endpoint": "https://malachiteingestion-pa.googleapis.com", "namespace": "google-security-operations-namespace", "auth": {"type": "gcp_private_key", "project_id": "gcp-project", "private_key_id": "abc12345678", "client_email": "[email protected]", "client_id": "def123456", "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBK...\n-----END PRIVATE KEY-----\n"}}, "name": "Nginx logs", "query": "source:nginx"}, "type": "custom_destination"}}
64+
When the request is sent
65+
Then the response status is 200 OK
66+
And the response "data.type" is equal to "custom_destination"
67+
And the response "data" has field "id"
68+
And the response "data.attributes.name" is equal to "Nginx logs"
69+
And the response "data.attributes.query" is equal to "source:nginx"
70+
And the response "data.attributes.forwarder_destination.type" is equal to "google_security_operations"
71+
And the response "data.attributes.forwarder_destination.customer_id" is equal to "123-456-7890"
72+
And the response "data.attributes.forwarder_destination.regional_endpoint" is equal to "https://malachiteingestion-pa.googleapis.com"
73+
And the response "data.attributes.forwarder_destination.namespace" is equal to "google-security-operations-namespace"
74+
And the response "data.attributes.forwarder_destination.auth.type" is equal to "gcp_private_key"
75+
And the response "data.attributes.forwarder_destination.auth.project_id" is equal to "gcp-project"
76+
And the response "data.attributes.forwarder_destination.auth.client_email" is equal to "[email protected]"
77+
And the response "data.attributes.forwarder_destination.auth" does not have field "private_key"
78+
And the response "data.attributes.forwarder_destination.auth" does not have field "private_key_id"
79+
And the response "data.attributes.forwarder_destination.auth" does not have field "client_id"
80+
And the response "data.attributes.enabled" is false
81+
And the response "data.attributes.forward_tags" is false
82+
And the response "data.attributes.forward_tags_restriction_list" has length 2
83+
And the response "data.attributes.forward_tags_restriction_list" array contains value "datacenter"
84+
And the response "data.attributes.forward_tags_restriction_list" array contains value "host"
85+
And the response "data.attributes.forward_tags_restriction_list_type" is equal to "ALLOW_LIST"
86+
6087
@team:DataDog/logs-backend @team:DataDog/logs-forwarding
6188
Scenario: Create a Microsoft Sentinel custom destination returns "OK" response
6289
Given new "CreateLogsCustomDestination" request

services/logs_custom_destinations/src/v2/index.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,16 @@ export { CustomDestinationElasticsearchDestinationAuth } from "./models/CustomDe
1515
export { CustomDestinationForwardDestination } from "./models/CustomDestinationForwardDestination";
1616
export { CustomDestinationForwardDestinationElasticsearch } from "./models/CustomDestinationForwardDestinationElasticsearch";
1717
export { CustomDestinationForwardDestinationElasticsearchType } from "./models/CustomDestinationForwardDestinationElasticsearchType";
18+
export { CustomDestinationForwardDestinationGoogleSecurityOperations } from "./models/CustomDestinationForwardDestinationGoogleSecurityOperations";
19+
export { CustomDestinationForwardDestinationGoogleSecurityOperationsType } from "./models/CustomDestinationForwardDestinationGoogleSecurityOperationsType";
1820
export { CustomDestinationForwardDestinationHttp } from "./models/CustomDestinationForwardDestinationHttp";
1921
export { CustomDestinationForwardDestinationHttpType } from "./models/CustomDestinationForwardDestinationHttpType";
2022
export { CustomDestinationForwardDestinationMicrosoftSentinel } from "./models/CustomDestinationForwardDestinationMicrosoftSentinel";
2123
export { CustomDestinationForwardDestinationMicrosoftSentinelType } from "./models/CustomDestinationForwardDestinationMicrosoftSentinelType";
2224
export { CustomDestinationForwardDestinationSplunk } from "./models/CustomDestinationForwardDestinationSplunk";
2325
export { CustomDestinationForwardDestinationSplunkType } from "./models/CustomDestinationForwardDestinationSplunkType";
26+
export { CustomDestinationGoogleSecurityOperationsDestinationAuth } from "./models/CustomDestinationGoogleSecurityOperationsDestinationAuth";
27+
export { CustomDestinationGoogleSecurityOperationsDestinationAuthType } from "./models/CustomDestinationGoogleSecurityOperationsDestinationAuthType";
2428
export { CustomDestinationHttpDestinationAuth } from "./models/CustomDestinationHttpDestinationAuth";
2529
export { CustomDestinationHttpDestinationAuthBasic } from "./models/CustomDestinationHttpDestinationAuthBasic";
2630
export { CustomDestinationHttpDestinationAuthBasicType } from "./models/CustomDestinationHttpDestinationAuthBasicType";
@@ -32,12 +36,16 @@ export { CustomDestinationResponseDefinition } from "./models/CustomDestinationR
3236
export { CustomDestinationResponseForwardDestination } from "./models/CustomDestinationResponseForwardDestination";
3337
export { CustomDestinationResponseForwardDestinationElasticsearch } from "./models/CustomDestinationResponseForwardDestinationElasticsearch";
3438
export { CustomDestinationResponseForwardDestinationElasticsearchType } from "./models/CustomDestinationResponseForwardDestinationElasticsearchType";
39+
export { CustomDestinationResponseForwardDestinationGoogleSecurityOperations } from "./models/CustomDestinationResponseForwardDestinationGoogleSecurityOperations";
40+
export { CustomDestinationResponseForwardDestinationGoogleSecurityOperationsType } from "./models/CustomDestinationResponseForwardDestinationGoogleSecurityOperationsType";
3541
export { CustomDestinationResponseForwardDestinationHttp } from "./models/CustomDestinationResponseForwardDestinationHttp";
3642
export { CustomDestinationResponseForwardDestinationHttpType } from "./models/CustomDestinationResponseForwardDestinationHttpType";
3743
export { CustomDestinationResponseForwardDestinationMicrosoftSentinel } from "./models/CustomDestinationResponseForwardDestinationMicrosoftSentinel";
3844
export { CustomDestinationResponseForwardDestinationMicrosoftSentinelType } from "./models/CustomDestinationResponseForwardDestinationMicrosoftSentinelType";
3945
export { CustomDestinationResponseForwardDestinationSplunk } from "./models/CustomDestinationResponseForwardDestinationSplunk";
4046
export { CustomDestinationResponseForwardDestinationSplunkType } from "./models/CustomDestinationResponseForwardDestinationSplunkType";
47+
export { CustomDestinationResponseGoogleSecurityOperationsDestinationAuth } from "./models/CustomDestinationResponseGoogleSecurityOperationsDestinationAuth";
48+
export { CustomDestinationResponseGoogleSecurityOperationsDestinationAuthType } from "./models/CustomDestinationResponseGoogleSecurityOperationsDestinationAuthType";
4149
export { CustomDestinationResponseHttpDestinationAuth } from "./models/CustomDestinationResponseHttpDestinationAuth";
4250
export { CustomDestinationResponseHttpDestinationAuthBasic } from "./models/CustomDestinationResponseHttpDestinationAuthBasic";
4351
export { CustomDestinationResponseHttpDestinationAuthBasicType } from "./models/CustomDestinationResponseHttpDestinationAuthBasicType";

0 commit comments

Comments
 (0)