Skip to content

Commit 6b31d3f

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit af216d4e of spec repo
1 parent 2e73b2f commit 6b31d3f

11 files changed

+406
-4
lines changed

.apigentools-info

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"spec_versions": {
55
"v1": {
66
"apigentools_version": "1.6.6",
7-
"regenerated": "2025-07-08 19:08:07.248096",
8-
"spec_repo_commit": "7b042e12"
7+
"regenerated": "2025-07-09 07:40:27.019011",
8+
"spec_repo_commit": "af216d4e"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.6",
12-
"regenerated": "2025-07-08 19:08:07.264039",
13-
"spec_repo_commit": "7b042e12"
12+
"regenerated": "2025-07-09 07:40:27.035168",
13+
"spec_repo_commit": "af216d4e"
1414
}
1515
}
1616
}

.generator/schemas/v2/openapi.yaml

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10668,6 +10668,7 @@ components:
1066810668
- $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk'
1066910669
- $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearch'
1067010670
- $ref: '#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel'
10671+
- $ref: '#/components/schemas/CustomDestinationForwardDestinationGoogleSecurityOperations'
1067110672
CustomDestinationForwardDestinationElasticsearch:
1067210673
description: The Elasticsearch destination.
1067310674
properties:
@@ -10725,6 +10726,42 @@ components:
1072510726
type: string
1072610727
x-enum-varnames:
1072710728
- ELASTICSEARCH
10729+
CustomDestinationForwardDestinationGoogleSecurityOperations:
10730+
description: The Google Security Operations destination.
10731+
properties:
10732+
auth:
10733+
$ref: '#/components/schemas/CustomDestinationGoogleSecurityOperationsDestinationAuth'
10734+
customer_id:
10735+
description: The customer ID of the Google Security Operations account.
10736+
example: 123-456-7890
10737+
type: string
10738+
namespace:
10739+
description: The namespace of the Google Security Operations account.
10740+
example: google-security-operations-namespace
10741+
type: string
10742+
regional_endpoint:
10743+
description: The `CustomDestinationForwardDestinationGoogleSecurityOperations`
10744+
`regional_endpoint`.
10745+
example: https://malachiteingestion-pa.googleapis.com
10746+
type: string
10747+
type:
10748+
$ref: '#/components/schemas/CustomDestinationForwardDestinationGoogleSecurityOperationsType'
10749+
required:
10750+
- type
10751+
- customer_id
10752+
- regional_endpoint
10753+
- namespace
10754+
- auth
10755+
type: object
10756+
CustomDestinationForwardDestinationGoogleSecurityOperationsType:
10757+
default: google_security_operations
10758+
description: Type of the Google Security Operations destination.
10759+
enum:
10760+
- google_security_operations
10761+
example: google_security_operations
10762+
type: string
10763+
x-enum-varnames:
10764+
- GOOGLE_SECURITY_OPERATIONS
1072810765
CustomDestinationForwardDestinationHttp:
1072910766
description: The HTTP destination.
1073010767
properties:
@@ -10826,6 +10863,55 @@ components:
1082610863
type: string
1082710864
x-enum-varnames:
1082810865
- SPLUNK_HEC
10866+
CustomDestinationGoogleSecurityOperationsDestinationAuth:
10867+
description: Google Security Operations destination authentication.
10868+
properties:
10869+
client_email:
10870+
description: The Google Security Operations client email address.
10871+
10872+
type: string
10873+
client_id:
10874+
description: The Google Security Operations client ID. This field is not
10875+
returned by the API.
10876+
example: def123456
10877+
type: string
10878+
writeOnly: true
10879+
private_key:
10880+
description: The Google Security Operations private key. This field is not
10881+
returned by the API.
10882+
example: '-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBK...\n-----END
10883+
PRIVATE KEY-----\n'
10884+
type: string
10885+
writeOnly: true
10886+
private_key_id:
10887+
description: The Google Security Operations private key ID. This field is
10888+
not returned by the API.
10889+
example: abc12345678
10890+
type: string
10891+
writeOnly: true
10892+
project_id:
10893+
description: The Google Security Operations project ID.
10894+
example: gcp-project
10895+
type: string
10896+
type:
10897+
$ref: '#/components/schemas/CustomDestinationGoogleSecurityOperationsDestinationAuthType'
10898+
required:
10899+
- type
10900+
- project_id
10901+
- private_key_id
10902+
- client_email
10903+
- client_id
10904+
- private_key
10905+
type: object
10906+
CustomDestinationGoogleSecurityOperationsDestinationAuthType:
10907+
default: gcp_private_key
10908+
description: Type of the Google Security Operations destination authentication.
10909+
enum:
10910+
- gcp_private_key
10911+
example: gcp_private_key
10912+
type: string
10913+
x-enum-varnames:
10914+
- GCP_PRIVATE_KEY
1082910915
CustomDestinationHttpDestinationAuth:
1083010916
description: Authentication method of the HTTP requests.
1083110917
oneOf:
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
/**
2+
* Create a Google Security Operations custom destination returns "OK" response
3+
*/
4+
5+
import { client, v2 } from "@datadog/datadog-api-client";
6+
7+
const configuration = client.createConfiguration();
8+
const apiInstance = new v2.LogsCustomDestinationsApi(configuration);
9+
10+
const params: v2.LogsCustomDestinationsApiCreateLogsCustomDestinationRequest = {
11+
body: {
12+
data: {
13+
attributes: {
14+
enabled: false,
15+
forwardTags: false,
16+
forwardTagsRestrictionList: ["datacenter", "host"],
17+
forwardTagsRestrictionListType: "ALLOW_LIST",
18+
forwarderDestination: {
19+
type: "google_security_operations",
20+
customerId: "123-456-7890",
21+
regionalEndpoint: "https://malachiteingestion-pa.googleapis.com",
22+
namespace: "google-security-operations-namespace",
23+
auth: {
24+
type: "gcp_private_key",
25+
projectId: "gcp-project",
26+
privateKeyId: "abc12345678",
27+
clientEmail: "[email protected]",
28+
clientId: "def123456",
29+
privateKey:
30+
"-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBK...\n-----END PRIVATE KEY-----\n",
31+
},
32+
},
33+
name: "Nginx logs",
34+
query: "source:nginx",
35+
},
36+
type: "custom_destination",
37+
},
38+
},
39+
};
40+
41+
apiInstance
42+
.createLogsCustomDestination(params)
43+
.then((data: v2.CustomDestinationResponse) => {
44+
console.log(
45+
"API called successfully. Returned data: " + JSON.stringify(data)
46+
);
47+
})
48+
.catch((error: any) => console.error(error));

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

packages/datadog-api-client-v2/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1346,12 +1346,16 @@ export { CustomDestinationElasticsearchDestinationAuth } from "./models/CustomDe
13461346
export { CustomDestinationForwardDestination } from "./models/CustomDestinationForwardDestination";
13471347
export { CustomDestinationForwardDestinationElasticsearch } from "./models/CustomDestinationForwardDestinationElasticsearch";
13481348
export { CustomDestinationForwardDestinationElasticsearchType } from "./models/CustomDestinationForwardDestinationElasticsearchType";
1349+
export { CustomDestinationForwardDestinationGoogleSecurityOperations } from "./models/CustomDestinationForwardDestinationGoogleSecurityOperations";
1350+
export { CustomDestinationForwardDestinationGoogleSecurityOperationsType } from "./models/CustomDestinationForwardDestinationGoogleSecurityOperationsType";
13491351
export { CustomDestinationForwardDestinationHttp } from "./models/CustomDestinationForwardDestinationHttp";
13501352
export { CustomDestinationForwardDestinationHttpType } from "./models/CustomDestinationForwardDestinationHttpType";
13511353
export { CustomDestinationForwardDestinationMicrosoftSentinel } from "./models/CustomDestinationForwardDestinationMicrosoftSentinel";
13521354
export { CustomDestinationForwardDestinationMicrosoftSentinelType } from "./models/CustomDestinationForwardDestinationMicrosoftSentinelType";
13531355
export { CustomDestinationForwardDestinationSplunk } from "./models/CustomDestinationForwardDestinationSplunk";
13541356
export { CustomDestinationForwardDestinationSplunkType } from "./models/CustomDestinationForwardDestinationSplunkType";
1357+
export { CustomDestinationGoogleSecurityOperationsDestinationAuth } from "./models/CustomDestinationGoogleSecurityOperationsDestinationAuth";
1358+
export { CustomDestinationGoogleSecurityOperationsDestinationAuthType } from "./models/CustomDestinationGoogleSecurityOperationsDestinationAuthType";
13551359
export { CustomDestinationHttpDestinationAuth } from "./models/CustomDestinationHttpDestinationAuth";
13561360
export { CustomDestinationHttpDestinationAuthBasic } from "./models/CustomDestinationHttpDestinationAuthBasic";
13571361
export { CustomDestinationHttpDestinationAuthBasicType } from "./models/CustomDestinationHttpDestinationAuthBasicType";

packages/datadog-api-client-v2/models/CustomDestinationForwardDestination.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
* Copyright 2020-Present Datadog, Inc.
55
*/
66
import { CustomDestinationForwardDestinationElasticsearch } from "./CustomDestinationForwardDestinationElasticsearch";
7+
import { CustomDestinationForwardDestinationGoogleSecurityOperations } from "./CustomDestinationForwardDestinationGoogleSecurityOperations";
78
import { CustomDestinationForwardDestinationHttp } from "./CustomDestinationForwardDestinationHttp";
89
import { CustomDestinationForwardDestinationMicrosoftSentinel } from "./CustomDestinationForwardDestinationMicrosoftSentinel";
910
import { CustomDestinationForwardDestinationSplunk } from "./CustomDestinationForwardDestinationSplunk";
@@ -19,4 +20,5 @@ export type CustomDestinationForwardDestination =
1920
| CustomDestinationForwardDestinationSplunk
2021
| CustomDestinationForwardDestinationElasticsearch
2122
| CustomDestinationForwardDestinationMicrosoftSentinel
23+
| CustomDestinationForwardDestinationGoogleSecurityOperations
2224
| UnparsedObject;
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
/**
2+
* Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
3+
* This product includes software developed at Datadog (https://www.datadoghq.com/).
4+
* Copyright 2020-Present Datadog, Inc.
5+
*/
6+
import { CustomDestinationForwardDestinationGoogleSecurityOperationsType } from "./CustomDestinationForwardDestinationGoogleSecurityOperationsType";
7+
import { CustomDestinationGoogleSecurityOperationsDestinationAuth } from "./CustomDestinationGoogleSecurityOperationsDestinationAuth";
8+
9+
import { AttributeTypeMap } from "../../datadog-api-client-common/util";
10+
11+
/**
12+
* The Google Security Operations destination.
13+
*/
14+
export class CustomDestinationForwardDestinationGoogleSecurityOperations {
15+
/**
16+
* Google Security Operations destination authentication.
17+
*/
18+
"auth": CustomDestinationGoogleSecurityOperationsDestinationAuth;
19+
/**
20+
* The customer ID of the Google Security Operations account.
21+
*/
22+
"customerId": string;
23+
/**
24+
* The namespace of the Google Security Operations account.
25+
*/
26+
"namespace": string;
27+
/**
28+
* The `CustomDestinationForwardDestinationGoogleSecurityOperations` `regional_endpoint`.
29+
*/
30+
"regionalEndpoint": string;
31+
/**
32+
* Type of the Google Security Operations destination.
33+
*/
34+
"type": CustomDestinationForwardDestinationGoogleSecurityOperationsType;
35+
36+
/**
37+
* A container for additional, undeclared properties.
38+
* This is a holder for any undeclared properties as specified with
39+
* the 'additionalProperties' keyword in the OAS document.
40+
*/
41+
"additionalProperties"?: { [key: string]: any };
42+
43+
/**
44+
* @ignore
45+
*/
46+
"_unparsed"?: boolean;
47+
48+
/**
49+
* @ignore
50+
*/
51+
static readonly attributeTypeMap: AttributeTypeMap = {
52+
auth: {
53+
baseName: "auth",
54+
type: "CustomDestinationGoogleSecurityOperationsDestinationAuth",
55+
required: true,
56+
},
57+
customerId: {
58+
baseName: "customer_id",
59+
type: "string",
60+
required: true,
61+
},
62+
namespace: {
63+
baseName: "namespace",
64+
type: "string",
65+
required: true,
66+
},
67+
regionalEndpoint: {
68+
baseName: "regional_endpoint",
69+
type: "string",
70+
required: true,
71+
},
72+
type: {
73+
baseName: "type",
74+
type: "CustomDestinationForwardDestinationGoogleSecurityOperationsType",
75+
required: true,
76+
},
77+
additionalProperties: {
78+
baseName: "additionalProperties",
79+
type: "any",
80+
},
81+
};
82+
83+
/**
84+
* @ignore
85+
*/
86+
static getAttributeTypeMap(): AttributeTypeMap {
87+
return CustomDestinationForwardDestinationGoogleSecurityOperations.attributeTypeMap;
88+
}
89+
90+
public constructor() {}
91+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
/**
2+
* Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
3+
* This product includes software developed at Datadog (https://www.datadoghq.com/).
4+
* Copyright 2020-Present Datadog, Inc.
5+
*/
6+
7+
import { UnparsedObject } from "../../datadog-api-client-common/util";
8+
9+
/**
10+
* Type of the Google Security Operations destination.
11+
*/
12+
13+
export type CustomDestinationForwardDestinationGoogleSecurityOperationsType =
14+
| typeof GOOGLE_SECURITY_OPERATIONS
15+
| UnparsedObject;
16+
export const GOOGLE_SECURITY_OPERATIONS = "google_security_operations";

0 commit comments

Comments
 (0)