diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 840ac4eef97..3da50e0a5e7 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -14989,6 +14989,185 @@ components:
type: string
x-enum-varnames:
- REFERENCE_TABLE
+ CreateTenancyConfigData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CreateTenancyConfigDataAttributes'
+ id:
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataType'
+ required:
+ - type
+ - id
+ type: object
+ CreateTenancyConfigDataAttributes:
+ properties:
+ auth_credentials:
+ $ref: '#/components/schemas/CreateTenancyConfigDataAttributesAuthCredentials'
+ config_version:
+ format: int64
+ nullable: true
+ type: integer
+ cost_collection_enabled:
+ type: boolean
+ dd_compartment_id:
+ type: string
+ dd_stack_id:
+ type: string
+ home_region:
+ example: ''
+ type: string
+ logs_config:
+ $ref: '#/components/schemas/CreateTenancyConfigDataAttributesLogsConfig'
+ metrics_config:
+ $ref: '#/components/schemas/CreateTenancyConfigDataAttributesMetricsConfig'
+ regions_config:
+ $ref: '#/components/schemas/CreateTenancyConfigDataAttributesRegionsConfig'
+ resource_collection_enabled:
+ type: boolean
+ user_ocid:
+ example: ''
+ type: string
+ required:
+ - auth_credentials
+ - home_region
+ - user_ocid
+ type: object
+ CreateTenancyConfigDataAttributesAuthCredentials:
+ properties:
+ fingerprint:
+ type: string
+ private_key:
+ example: ''
+ type: string
+ required:
+ - private_key
+ type: object
+ CreateTenancyConfigDataAttributesLogsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ enabled_services:
+ items:
+ type: string
+ type: array
+ type: object
+ CreateTenancyConfigDataAttributesMetricsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ excluded_services:
+ items:
+ type: string
+ type: array
+ type: object
+ CreateTenancyConfigDataAttributesRegionsConfig:
+ properties:
+ available:
+ items:
+ type: string
+ type: array
+ disabled:
+ items:
+ type: string
+ type: array
+ enabled:
+ items:
+ type: string
+ type: array
+ type: object
+ CreateTenancyConfigRequest:
+ example:
+ data:
+ attributes:
+ auth_credentials:
+ fingerprint: ''
+ private_key: '----BEGIN PRIVATE KEY-----
+
+ MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M
+
+ QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR
+
+ C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl
+
+ YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn
+
+ QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc
+
+ mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU
+
+ nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc
+
+ quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3
+
+ LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R
+
+ W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx
+
+ l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+
+
+ rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY
+
+ PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59
+
+ 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP
+
+ XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS
+
+ DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM
+
+ mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs
+
+ -----END PRIVATE KEY-----'
+ config_version: null
+ cost_collection_enabled: true
+ dd_compartment_id: ocid.compartment.test
+ dd_stack_id: ocid.stack.test
+ home_region: us-ashburn-1
+ logs_config:
+ compartment_tag_filters:
+ - datadog:true
+ - env:prod
+ enabled: true
+ enabled_services:
+ - service_1
+ - service_1
+ metrics_config:
+ compartment_tag_filters:
+ - datadog:true
+ - env:prod
+ enabled: true
+ excluded_services:
+ - service_1
+ - service_1
+ regions_config:
+ available:
+ - us-ashburn-1
+ - us-phoenix-1
+ disabled:
+ - us-phoenix-1
+ enabled:
+ - us-ashburn-1
+ resource_collection_enabled: true
+ user_ocid: ocid.user.test
+ id: ocid.tenancy.test
+ type: oci_tenancy
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateTenancyConfigData'
+ required:
+ - data
+ type: object
CreateUploadRequest:
description: Request to create an upload for a file to be ingested into a reference
table.
@@ -62752,6 +62931,219 @@ components:
description: Offset type.
type: string
type: object
+ TenancyConfig:
+ example:
+ data:
+ attributes:
+ config_version: 2
+ cost_collection_enabled: true
+ dd_compartment_id: ocid.compartment.test
+ dd_stack_id: ocid.stack.test
+ home_region: us-ashburn-1
+ logs_config:
+ compartment_tag_filters:
+ - compartment.test
+ enabled: true
+ enabled_services:
+ - compute
+ metrics_config:
+ compartment_tag_filters:
+ - compartment.test
+ enabled: true
+ excluded_services:
+ - compute
+ regions_config:
+ available:
+ - us-ashburn-1
+ - us-phoenix-1
+ disabled:
+ - us-phoenix-1
+ enabled:
+ - us-ashburn-1
+ resource_collection_enabled: true
+ user_ocid: ocid.user.test
+ id: ocid.tenancy.test
+ type: oci_tenancy
+ properties:
+ data:
+ $ref: '#/components/schemas/TenancyConfigData'
+ type: object
+ TenancyConfigData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/TenancyConfigDataAttributes'
+ id:
+ type: string
+ type:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataType'
+ required:
+ - type
+ type: object
+ TenancyConfigDataAttributes:
+ properties:
+ billing_plan_id:
+ format: int32
+ maximum: 2147483647
+ type: integer
+ config_version:
+ format: int64
+ type: integer
+ cost_collection_enabled:
+ type: boolean
+ dd_compartment_id:
+ type: string
+ dd_stack_id:
+ type: string
+ home_region:
+ type: string
+ logs_config:
+ $ref: '#/components/schemas/TenancyConfigDataAttributesLogsConfig'
+ metrics_config:
+ $ref: '#/components/schemas/TenancyConfigDataAttributesMetricsConfig'
+ parent_tenancy_name:
+ type: string
+ regions_config:
+ $ref: '#/components/schemas/TenancyConfigDataAttributesRegionsConfig'
+ resource_collection_enabled:
+ type: boolean
+ tenancy_name:
+ type: string
+ user_ocid:
+ type: string
+ type: object
+ TenancyConfigDataAttributesLogsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ enabled_services:
+ items:
+ type: string
+ type: array
+ type: object
+ TenancyConfigDataAttributesMetricsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ excluded_services:
+ items:
+ type: string
+ type: array
+ type: object
+ TenancyConfigDataAttributesRegionsConfig:
+ properties:
+ available:
+ items:
+ type: string
+ type: array
+ disabled:
+ items:
+ type: string
+ type: array
+ enabled:
+ items:
+ type: string
+ type: array
+ type: object
+ TenancyConfigList:
+ example:
+ data:
+ - attributes:
+ config_version: 2
+ cost_collection_enabled: true
+ dd_compartment_id: ocid.compartment.test
+ dd_stack_id: ocid.stack.test
+ home_region: us-ashburn-1
+ logs_config:
+ compartment_tag_filters:
+ - compartment.test
+ enabled: true
+ enabled_services:
+ - compute
+ metrics_config:
+ compartment_tag_filters:
+ - compartment.test
+ enabled: true
+ excluded_services:
+ - compute
+ regions_config:
+ available:
+ - us-ashburn-1
+ - us-phoenix-1
+ disabled:
+ - us-phoenix-1
+ enabled:
+ - us-ashburn-1
+ resource_collection_enabled: true
+ user_ocid: ocid.user.test
+ id: ocid.tenancy.test
+ type: oci_tenancy
+ properties:
+ data:
+ items:
+ $ref: '#/components/schemas/TenancyConfigData'
+ type: array
+ required:
+ - data
+ type: object
+ TenancyProductsData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/TenancyProductsDataAttributes'
+ id:
+ type: string
+ type:
+ $ref: '#/components/schemas/TenancyProductsDataType'
+ required:
+ - type
+ type: object
+ TenancyProductsDataAttributes:
+ properties:
+ products:
+ items:
+ $ref: '#/components/schemas/TenancyProductsDataAttributesProductsItems'
+ type: array
+ type: object
+ TenancyProductsDataAttributesProductsItems:
+ properties:
+ enabled:
+ type: boolean
+ product_key:
+ type: string
+ type: object
+ TenancyProductsDataType:
+ default: oci_tenancy_product
+ description: OCI tenancy product resource type.
+ enum:
+ - oci_tenancy_product
+ example: oci_tenancy_product
+ type: string
+ x-enum-varnames:
+ - OCI_TENANCY_PRODUCT
+ TenancyProductsList:
+ example:
+ data:
+ - attributes:
+ products:
+ - enabled: true
+ product_key: CLOUD_SECURITY_POSTURE_MANAGEMENT
+ id: ocid.tenancy.test
+ type: oci_tenancy_product
+ properties:
+ data:
+ items:
+ $ref: '#/components/schemas/TenancyProductsData'
+ type: array
+ required:
+ - data
+ type: object
ThreatHuntingJobDataType:
description: Type of payload.
enum:
@@ -64438,6 +64830,177 @@ components:
type: string
x-enum-varnames:
- UPDATE_RULESET
+ UpdateTenancyConfigData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataAttributes'
+ id:
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataType'
+ required:
+ - type
+ - id
+ type: object
+ UpdateTenancyConfigDataAttributes:
+ properties:
+ auth_credentials:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesAuthCredentials'
+ cost_collection_enabled:
+ type: boolean
+ home_region:
+ type: string
+ logs_config:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesLogsConfig'
+ metrics_config:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesMetricsConfig'
+ regions_config:
+ $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesRegionsConfig'
+ resource_collection_enabled:
+ type: boolean
+ user_ocid:
+ type: string
+ type: object
+ UpdateTenancyConfigDataAttributesAuthCredentials:
+ properties:
+ fingerprint:
+ type: string
+ private_key:
+ example: ''
+ type: string
+ required:
+ - private_key
+ type: object
+ UpdateTenancyConfigDataAttributesLogsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ enabled_services:
+ items:
+ type: string
+ type: array
+ type: object
+ UpdateTenancyConfigDataAttributesMetricsConfig:
+ properties:
+ compartment_tag_filters:
+ items:
+ type: string
+ type: array
+ enabled:
+ type: boolean
+ excluded_services:
+ items:
+ type: string
+ type: array
+ type: object
+ UpdateTenancyConfigDataAttributesRegionsConfig:
+ properties:
+ available:
+ items:
+ type: string
+ type: array
+ disabled:
+ items:
+ type: string
+ type: array
+ enabled:
+ items:
+ type: string
+ type: array
+ type: object
+ UpdateTenancyConfigDataType:
+ default: oci_tenancy
+ description: OCI tenancy resource type.
+ enum:
+ - oci_tenancy
+ example: oci_tenancy
+ type: string
+ x-enum-varnames:
+ - OCI_TENANCY
+ UpdateTenancyConfigRequest:
+ example:
+ data:
+ attributes:
+ auth_credentials:
+ fingerprint: ''
+ private_key: '----BEGIN PRIVATE KEY-----
+
+ MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M
+
+ QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR
+
+ C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl
+
+ YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn
+
+ QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc
+
+ mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU
+
+ nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc
+
+ quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3
+
+ LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R
+
+ W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx
+
+ l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+
+
+ rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY
+
+ PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59
+
+ 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP
+
+ XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS
+
+ DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM
+
+ mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs
+
+ -----END PRIVATE KEY-----'
+ cost_collection_enabled: true
+ home_region: us-ashburn-1
+ logs_config:
+ compartment_tag_filters:
+ - datadog:true
+ - env:prod
+ enabled: true
+ enabled_services:
+ - service_1
+ - service_1
+ metrics_config:
+ compartment_tag_filters:
+ - datadog:true
+ - env:prod
+ enabled: true
+ excluded_services:
+ - service_1
+ - service_1
+ regions_config:
+ available:
+ - us-ashburn-1
+ - us-phoenix-1
+ disabled:
+ - us-phoenix-1
+ enabled:
+ - us-ashburn-1
+ resource_collection_enabled: true
+ user_ocid: ocid.user.test
+ id: ocid.tenancy.test
+ type: oci_tenancy
+ properties:
+ data:
+ $ref: '#/components/schemas/UpdateTenancyConfigData'
+ required:
+ - data
+ type: object
UpdateWorkflowRequest:
description: A request object for updating an existing workflow.
example:
@@ -79518,6 +80081,170 @@ paths:
tags:
- Microsoft Teams Integration
x-codegen-request-body-name: body
+ /api/v2/integration/oci/products:
+ get:
+ description: Lists the products for a given tenancy. Returns the enabled/disabled
+ status of Datadog products (such as Cloud Security Posture Management) for
+ specific OCI tenancies.
+ operationId: ListTenancyProducts
+ parameters:
+ - description: Comma-separated list of product keys to filter by.
+ in: query
+ name: productKeys
+ required: true
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TenancyProductsList'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: List tenancy products
+ tags:
+ - OCI Integration
+ /api/v2/integration/oci/tenancies:
+ get:
+ description: Get a list of all configured OCI tenancy integrations. Returns
+ basic information about each tenancy including authentication credentials,
+ region settings, and collection preferences for metrics, logs, and resources.
+ operationId: GetTenancyConfigs
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TenancyConfigList'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Get tenancy configs
+ tags:
+ - OCI Integration
+ x-unstable: '**Note**: This endpoint may be subject to changes.'
+ post:
+ description: 'Create a new tenancy config to establish monitoring and data collection
+ from your OCI environment. Requires OCI authentication credentials and tenancy
+ details. Warning: Datadog recommends interacting with this endpoint only through
+ the Datadog web UI to ensure all necessary OCI resources have been created
+ and configured properly.'
+ operationId: CreateTenancyConfig
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateTenancyConfigRequest'
+ required: true
+ responses:
+ '201':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TenancyConfig'
+ description: Created
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Create tenancy config
+ tags:
+ - OCI Integration
+ x-unstable: '**Note**: This endpoint may be subject to changes.'
+ /api/v2/integration/oci/tenancies/{tenancy_ocid}:
+ delete:
+ description: Delete an existing tenancy config. This will stop all data collection
+ from the specified OCI tenancy and remove the stored configuration. This operation
+ cannot be undone.
+ operationId: DeleteTenancyConfig
+ parameters:
+ - description: The OCID of the tenancy config to delete.
+ in: path
+ name: tenancy_ocid
+ required: true
+ schema:
+ type: string
+ responses:
+ '204':
+ description: No Content
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Delete tenancy config
+ tags:
+ - OCI Integration
+ get:
+ description: Get a single tenancy config object by its OCID. Returns detailed
+ configuration including authentication credentials, enabled services, region
+ settings, and collection preferences.
+ operationId: GetTenancyConfig
+ parameters:
+ - description: The OCID of the tenancy config to retrieve.
+ in: path
+ name: tenancy_ocid
+ required: true
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TenancyConfig'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Get tenancy config
+ tags:
+ - OCI Integration
+ patch:
+ description: 'Update an existing tenancy config. You can modify authentication
+ credentials, enable/disable collection types, update service filters, and
+ change region settings. Warning: We recommend using the Datadog web UI to
+ avoid unintended update effects.'
+ operationId: UpdateTenancyConfig
+ parameters:
+ - description: The OCID of the tenancy config to update.
+ in: path
+ name: tenancy_ocid
+ required: true
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UpdateTenancyConfigRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TenancyConfig'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Update tenancy config
+ tags:
+ - OCI Integration
/api/v2/integration/opsgenie/services:
get:
description: Get a list of all services from the Datadog Opsgenie integration.
@@ -101674,6 +102401,8 @@ tags:
and their attributes. See the [Network Device Monitoring page](https://docs.datadoghq.com/network_monitoring/)
for more information.
name: Network Device Monitoring
+- description: Auto-generated tag OCI Integration
+ name: OCI Integration
- description: Observability Pipelines allows you to collect and process logs within
your own infrastructure, and then route them to downstream integrations.
externalDocs:
diff --git a/examples/v2/oci-integration/CreateTenancyConfig.java b/examples/v2/oci-integration/CreateTenancyConfig.java
new file mode 100644
index 00000000000..4a0bc3927f2
--- /dev/null
+++ b/examples/v2/oci-integration/CreateTenancyConfig.java
@@ -0,0 +1,93 @@
+// Create tenancy config returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+import com.datadog.api.client.v2.model.CreateTenancyConfigData;
+import com.datadog.api.client.v2.model.CreateTenancyConfigDataAttributes;
+import com.datadog.api.client.v2.model.CreateTenancyConfigDataAttributesAuthCredentials;
+import com.datadog.api.client.v2.model.CreateTenancyConfigDataAttributesLogsConfig;
+import com.datadog.api.client.v2.model.CreateTenancyConfigDataAttributesMetricsConfig;
+import com.datadog.api.client.v2.model.CreateTenancyConfigDataAttributesRegionsConfig;
+import com.datadog.api.client.v2.model.CreateTenancyConfigRequest;
+import com.datadog.api.client.v2.model.TenancyConfig;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataType;
+import java.util.Arrays;
+import java.util.Collections;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.createTenancyConfig", true);
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ CreateTenancyConfigRequest body =
+ new CreateTenancyConfigRequest()
+ .data(
+ new CreateTenancyConfigData()
+ .attributes(
+ new CreateTenancyConfigDataAttributes()
+ .authCredentials(
+ new CreateTenancyConfigDataAttributesAuthCredentials()
+ .fingerprint("")
+ .privateKey(
+ """
+----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M
+QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR
+C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl
+YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn
+QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc
+mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU
+nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc
+quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3
+LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R
+W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx
+l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+
+rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY
+PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59
+86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP
+XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS
+DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM
+mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs
+-----END PRIVATE KEY-----
+"""))
+ .configVersion(null)
+ .costCollectionEnabled(true)
+ .ddCompartmentId("ocid.compartment.test")
+ .ddStackId("ocid.stack.test")
+ .homeRegion("us-ashburn-1")
+ .logsConfig(
+ new CreateTenancyConfigDataAttributesLogsConfig()
+ .compartmentTagFilters(
+ Arrays.asList("datadog:true", "env:prod"))
+ .enabled(true)
+ .enabledServices(Arrays.asList("service_1", "service_1")))
+ .metricsConfig(
+ new CreateTenancyConfigDataAttributesMetricsConfig()
+ .compartmentTagFilters(
+ Arrays.asList("datadog:true", "env:prod"))
+ .enabled(true)
+ .excludedServices(Arrays.asList("service_1", "service_1")))
+ .regionsConfig(
+ new CreateTenancyConfigDataAttributesRegionsConfig()
+ .available(Arrays.asList("us-ashburn-1", "us-phoenix-1"))
+ .disabled(Collections.singletonList("us-phoenix-1"))
+ .enabled(Collections.singletonList("us-ashburn-1")))
+ .resourceCollectionEnabled(true)
+ .userOcid("ocid.user.test"))
+ .id("ocid.tenancy.test")
+ .type(UpdateTenancyConfigDataType.OCI_TENANCY));
+
+ try {
+ TenancyConfig result = apiInstance.createTenancyConfig(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#createTenancyConfig");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/oci-integration/DeleteTenancyConfig.java b/examples/v2/oci-integration/DeleteTenancyConfig.java
new file mode 100644
index 00000000000..7f3a3719d6c
--- /dev/null
+++ b/examples/v2/oci-integration/DeleteTenancyConfig.java
@@ -0,0 +1,22 @@
+// Delete tenancy config returns "No Content" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ try {
+ apiInstance.deleteTenancyConfig("tenancy_ocid");
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#deleteTenancyConfig");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/oci-integration/GetTenancyConfig.java b/examples/v2/oci-integration/GetTenancyConfig.java
new file mode 100644
index 00000000000..ea2752e697a
--- /dev/null
+++ b/examples/v2/oci-integration/GetTenancyConfig.java
@@ -0,0 +1,24 @@
+// Get tenancy config returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+import com.datadog.api.client.v2.model.TenancyConfig;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ try {
+ TenancyConfig result = apiInstance.getTenancyConfig("tenancy_ocid");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#getTenancyConfig");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/oci-integration/GetTenancyConfigs.java b/examples/v2/oci-integration/GetTenancyConfigs.java
new file mode 100644
index 00000000000..e76441194b6
--- /dev/null
+++ b/examples/v2/oci-integration/GetTenancyConfigs.java
@@ -0,0 +1,25 @@
+// Get tenancy configs returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+import com.datadog.api.client.v2.model.TenancyConfigList;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.getTenancyConfigs", true);
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ try {
+ TenancyConfigList result = apiInstance.getTenancyConfigs();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#getTenancyConfigs");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/oci-integration/ListTenancyProducts.java b/examples/v2/oci-integration/ListTenancyProducts.java
new file mode 100644
index 00000000000..3ba43b131a1
--- /dev/null
+++ b/examples/v2/oci-integration/ListTenancyProducts.java
@@ -0,0 +1,24 @@
+// List tenancy products returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+import com.datadog.api.client.v2.model.TenancyProductsList;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ try {
+ TenancyProductsList result = apiInstance.listTenancyProducts("productKeys");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#listTenancyProducts");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/oci-integration/UpdateTenancyConfig.java b/examples/v2/oci-integration/UpdateTenancyConfig.java
new file mode 100644
index 00000000000..fb9c74c301a
--- /dev/null
+++ b/examples/v2/oci-integration/UpdateTenancyConfig.java
@@ -0,0 +1,89 @@
+// Update tenancy config returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.OciIntegrationApi;
+import com.datadog.api.client.v2.model.TenancyConfig;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigData;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataAttributes;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataAttributesAuthCredentials;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataAttributesLogsConfig;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataAttributesMetricsConfig;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataAttributesRegionsConfig;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigDataType;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigRequest;
+import java.util.Arrays;
+import java.util.Collections;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ OciIntegrationApi apiInstance = new OciIntegrationApi(defaultClient);
+
+ UpdateTenancyConfigRequest body =
+ new UpdateTenancyConfigRequest()
+ .data(
+ new UpdateTenancyConfigData()
+ .attributes(
+ new UpdateTenancyConfigDataAttributes()
+ .authCredentials(
+ new UpdateTenancyConfigDataAttributesAuthCredentials()
+ .fingerprint("")
+ .privateKey(
+ """
+----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M
+QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR
+C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl
+YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn
+QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc
+mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU
+nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc
+quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3
+LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R
+W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx
+l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+
+rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY
+PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59
+86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP
+XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS
+DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM
+mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs
+-----END PRIVATE KEY-----
+"""))
+ .costCollectionEnabled(true)
+ .homeRegion("us-ashburn-1")
+ .logsConfig(
+ new UpdateTenancyConfigDataAttributesLogsConfig()
+ .compartmentTagFilters(
+ Arrays.asList("datadog:true", "env:prod"))
+ .enabled(true)
+ .enabledServices(Arrays.asList("service_1", "service_1")))
+ .metricsConfig(
+ new UpdateTenancyConfigDataAttributesMetricsConfig()
+ .compartmentTagFilters(
+ Arrays.asList("datadog:true", "env:prod"))
+ .enabled(true)
+ .excludedServices(Arrays.asList("service_1", "service_1")))
+ .regionsConfig(
+ new UpdateTenancyConfigDataAttributesRegionsConfig()
+ .available(Arrays.asList("us-ashburn-1", "us-phoenix-1"))
+ .disabled(Collections.singletonList("us-phoenix-1"))
+ .enabled(Collections.singletonList("us-ashburn-1")))
+ .resourceCollectionEnabled(true)
+ .userOcid("ocid.user.test"))
+ .id("ocid.tenancy.test")
+ .type(UpdateTenancyConfigDataType.OCI_TENANCY));
+
+ try {
+ TenancyConfig result = apiInstance.updateTenancyConfig("tenancy_ocid", body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling OciIntegrationApi#updateTenancyConfig");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/ApiClient.java b/src/main/java/com/datadog/api/client/ApiClient.java
index fcadf72e1e8..5accdc9f971 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -862,6 +862,8 @@ public class ApiClient {
put("v2.listJiraAccounts", false);
put("v2.listJiraIssueTemplates", false);
put("v2.updateJiraIssueTemplate", false);
+ put("v2.createTenancyConfig", false);
+ put("v2.getTenancyConfigs", false);
put("v2.createServiceNowTemplate", false);
put("v2.deleteServiceNowTemplate", false);
put("v2.getServiceNowTemplate", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/OciIntegrationApi.java b/src/main/java/com/datadog/api/client/v2/api/OciIntegrationApi.java
new file mode 100644
index 00000000000..265e3ed4e30
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/OciIntegrationApi.java
@@ -0,0 +1,894 @@
+package com.datadog.api.client.v2.api;
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.ApiResponse;
+import com.datadog.api.client.Pair;
+import com.datadog.api.client.v2.model.CreateTenancyConfigRequest;
+import com.datadog.api.client.v2.model.TenancyConfig;
+import com.datadog.api.client.v2.model.TenancyConfigList;
+import com.datadog.api.client.v2.model.TenancyProductsList;
+import com.datadog.api.client.v2.model.UpdateTenancyConfigRequest;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.core.GenericType;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.CompletableFuture;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class OciIntegrationApi {
+ private ApiClient apiClient;
+
+ public OciIntegrationApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public OciIntegrationApi(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * Get the API client.
+ *
+ * @return API client
+ */
+ public ApiClient getApiClient() {
+ return apiClient;
+ }
+
+ /**
+ * Set the API client.
+ *
+ * @param apiClient an instance of API client
+ */
+ public void setApiClient(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * Create tenancy config.
+ *
+ *
See {@link #createTenancyConfigWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return TenancyConfig
+ * @throws ApiException if fails to make API call
+ */
+ public TenancyConfig createTenancyConfig(CreateTenancyConfigRequest body) throws ApiException {
+ return createTenancyConfigWithHttpInfo(body).getData();
+ }
+
+ /**
+ * Create tenancy config.
+ *
+ *
See {@link #createTenancyConfigWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<TenancyConfig>
+ */
+ public CompletableFuture createTenancyConfigAsync(
+ CreateTenancyConfigRequest body) {
+ return createTenancyConfigWithHttpInfoAsync(body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create a new tenancy config to establish monitoring and data collection from your OCI
+ * environment. Requires OCI authentication credentials and tenancy details. Warning: Datadog
+ * recommends interacting with this endpoint only through the Datadog web UI to ensure all
+ * necessary OCI resources have been created and configured properly.
+ *
+ * @param body (required)
+ * @return ApiResponse<TenancyConfig>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse createTenancyConfigWithHttpInfo(CreateTenancyConfigRequest body)
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "createTenancyConfig";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
+ }
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'body' when calling createTenancyConfig");
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/tenancies";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.createTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Create tenancy config.
+ *
+ * See {@link #createTenancyConfigWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<TenancyConfig>>
+ */
+ public CompletableFuture> createTenancyConfigWithHttpInfoAsync(
+ CreateTenancyConfigRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "createTenancyConfig";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
+ return result;
+ }
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'body' when calling createTenancyConfig"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/tenancies";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.createTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Delete tenancy config.
+ *
+ * See {@link #deleteTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to delete. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteTenancyConfig(String tenancyOcid) throws ApiException {
+ deleteTenancyConfigWithHttpInfo(tenancyOcid);
+ }
+
+ /**
+ * Delete tenancy config.
+ *
+ *
See {@link #deleteTenancyConfigWithHttpInfoAsync}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to delete. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteTenancyConfigAsync(String tenancyOcid) {
+ return deleteTenancyConfigWithHttpInfoAsync(tenancyOcid)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Delete an existing tenancy config. This will stop all data collection from the specified OCI
+ * tenancy and remove the stored configuration. This operation cannot be undone.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to delete. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 204 | No Content | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteTenancyConfigWithHttpInfo(String tenancyOcid) throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'tenancyOcid' when calling deleteTenancyConfig");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.deleteTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete tenancy config.
+ *
+ * See {@link #deleteTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to delete. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture> deleteTenancyConfigWithHttpInfoAsync(
+ String tenancyOcid) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'tenancyOcid' when calling deleteTenancyConfig"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.deleteTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Get tenancy config.
+ *
+ * See {@link #getTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to retrieve. (required)
+ * @return TenancyConfig
+ * @throws ApiException if fails to make API call
+ */
+ public TenancyConfig getTenancyConfig(String tenancyOcid) throws ApiException {
+ return getTenancyConfigWithHttpInfo(tenancyOcid).getData();
+ }
+
+ /**
+ * Get tenancy config.
+ *
+ *
See {@link #getTenancyConfigWithHttpInfoAsync}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to retrieve. (required)
+ * @return CompletableFuture<TenancyConfig>
+ */
+ public CompletableFuture getTenancyConfigAsync(String tenancyOcid) {
+ return getTenancyConfigWithHttpInfoAsync(tenancyOcid)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get a single tenancy config object by its OCID. Returns detailed configuration including
+ * authentication credentials, enabled services, region settings, and collection preferences.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to retrieve. (required)
+ * @return ApiResponse<TenancyConfig>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getTenancyConfigWithHttpInfo(String tenancyOcid)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'tenancyOcid' when calling getTenancyConfig");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.getTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get tenancy config.
+ *
+ * See {@link #getTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to retrieve. (required)
+ * @return CompletableFuture<ApiResponse<TenancyConfig>>
+ */
+ public CompletableFuture> getTenancyConfigWithHttpInfoAsync(
+ String tenancyOcid) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'tenancyOcid' when calling getTenancyConfig"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.getTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get tenancy configs.
+ *
+ * See {@link #getTenancyConfigsWithHttpInfo}.
+ *
+ * @return TenancyConfigList
+ * @throws ApiException if fails to make API call
+ */
+ public TenancyConfigList getTenancyConfigs() throws ApiException {
+ return getTenancyConfigsWithHttpInfo().getData();
+ }
+
+ /**
+ * Get tenancy configs.
+ *
+ *
See {@link #getTenancyConfigsWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<TenancyConfigList>
+ */
+ public CompletableFuture getTenancyConfigsAsync() {
+ return getTenancyConfigsWithHttpInfoAsync()
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get a list of all configured OCI tenancy integrations. Returns basic information about each
+ * tenancy including authentication credentials, region settings, and collection preferences for
+ * metrics, logs, and resources.
+ *
+ * @return ApiResponse<TenancyConfigList>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getTenancyConfigsWithHttpInfo() throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "getTenancyConfigs";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
+ }
+ Object localVarPostBody = null;
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/tenancies";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.getTenancyConfigs",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get tenancy configs.
+ *
+ * See {@link #getTenancyConfigsWithHttpInfo}.
+ *
+ * @return CompletableFuture<ApiResponse<TenancyConfigList>>
+ */
+ public CompletableFuture> getTenancyConfigsWithHttpInfoAsync() {
+ // Check if unstable operation is enabled
+ String operationId = "getTenancyConfigs";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
+ return result;
+ }
+ Object localVarPostBody = null;
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/tenancies";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.getTenancyConfigs",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * List tenancy products.
+ *
+ * See {@link #listTenancyProductsWithHttpInfo}.
+ *
+ * @param productKeys Comma-separated list of product keys to filter by. (required)
+ * @return TenancyProductsList
+ * @throws ApiException if fails to make API call
+ */
+ public TenancyProductsList listTenancyProducts(String productKeys) throws ApiException {
+ return listTenancyProductsWithHttpInfo(productKeys).getData();
+ }
+
+ /**
+ * List tenancy products.
+ *
+ *
See {@link #listTenancyProductsWithHttpInfoAsync}.
+ *
+ * @param productKeys Comma-separated list of product keys to filter by. (required)
+ * @return CompletableFuture<TenancyProductsList>
+ */
+ public CompletableFuture listTenancyProductsAsync(String productKeys) {
+ return listTenancyProductsWithHttpInfoAsync(productKeys)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Lists the products for a given tenancy. Returns the enabled/disabled status of Datadog products
+ * (such as Cloud Security Posture Management) for specific OCI tenancies.
+ *
+ * @param productKeys Comma-separated list of product keys to filter by. (required)
+ * @return ApiResponse<TenancyProductsList>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse listTenancyProductsWithHttpInfo(String productKeys)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'productKeys' is set
+ if (productKeys == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'productKeys' when calling listTenancyProducts");
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/products";
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "productKeys", productKeys));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.listTenancyProducts",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * List tenancy products.
+ *
+ * See {@link #listTenancyProductsWithHttpInfo}.
+ *
+ * @param productKeys Comma-separated list of product keys to filter by. (required)
+ * @return CompletableFuture<ApiResponse<TenancyProductsList>>
+ */
+ public CompletableFuture> listTenancyProductsWithHttpInfoAsync(
+ String productKeys) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'productKeys' is set
+ if (productKeys == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'productKeys' when calling listTenancyProducts"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration/oci/products";
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "productKeys", productKeys));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.listTenancyProducts",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Update tenancy config.
+ *
+ * See {@link #updateTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to update. (required)
+ * @param body (required)
+ * @return TenancyConfig
+ * @throws ApiException if fails to make API call
+ */
+ public TenancyConfig updateTenancyConfig(String tenancyOcid, UpdateTenancyConfigRequest body)
+ throws ApiException {
+ return updateTenancyConfigWithHttpInfo(tenancyOcid, body).getData();
+ }
+
+ /**
+ * Update tenancy config.
+ *
+ *
See {@link #updateTenancyConfigWithHttpInfoAsync}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to update. (required)
+ * @param body (required)
+ * @return CompletableFuture<TenancyConfig>
+ */
+ public CompletableFuture updateTenancyConfigAsync(
+ String tenancyOcid, UpdateTenancyConfigRequest body) {
+ return updateTenancyConfigWithHttpInfoAsync(tenancyOcid, body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Update an existing tenancy config. You can modify authentication credentials, enable/disable
+ * collection types, update service filters, and change region settings. Warning: We recommend
+ * using the Datadog web UI to avoid unintended update effects.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to update. (required)
+ * @param body (required)
+ * @return ApiResponse<TenancyConfig>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse updateTenancyConfigWithHttpInfo(
+ String tenancyOcid, UpdateTenancyConfigRequest body) throws ApiException {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'tenancyOcid' when calling updateTenancyConfig");
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'body' when calling updateTenancyConfig");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.updateTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "PATCH",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Update tenancy config.
+ *
+ * See {@link #updateTenancyConfigWithHttpInfo}.
+ *
+ * @param tenancyOcid The OCID of the tenancy config to update. (required)
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<TenancyConfig>>
+ */
+ public CompletableFuture> updateTenancyConfigWithHttpInfoAsync(
+ String tenancyOcid, UpdateTenancyConfigRequest body) {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'tenancyOcid' is set
+ if (tenancyOcid == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'tenancyOcid' when calling updateTenancyConfig"));
+ return result;
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'body' when calling updateTenancyConfig"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration/oci/tenancies/{tenancy_ocid}"
+ .replaceAll(
+ "\\{" + "tenancy_ocid" + "\\}", apiClient.escapeString(tenancyOcid.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.OciIntegrationApi.updateTenancyConfig",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "PATCH",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigData.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigData.java
new file mode 100644
index 00000000000..c5cfbacfa83
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigData.java
@@ -0,0 +1,206 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigData.JSON_PROPERTY_ATTRIBUTES,
+ CreateTenancyConfigData.JSON_PROPERTY_ID,
+ CreateTenancyConfigData.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigData {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private CreateTenancyConfigDataAttributes attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private UpdateTenancyConfigDataType type = UpdateTenancyConfigDataType.OCI_TENANCY;
+
+ public CreateTenancyConfigData() {}
+
+ @JsonCreator
+ public CreateTenancyConfigData(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) UpdateTenancyConfigDataType type) {
+ this.id = id;
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public CreateTenancyConfigData attributes(CreateTenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public CreateTenancyConfigDataAttributes getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(CreateTenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ }
+
+ public CreateTenancyConfigData id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Getid
+ *
+ * @return id
+ */
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public CreateTenancyConfigData type(UpdateTenancyConfigDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * OCI tenancy resource type.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public UpdateTenancyConfigDataType getType() {
+ return type;
+ }
+
+ public void setType(UpdateTenancyConfigDataType type) {
+ if (!type.isValid()) {
+ this.unparsed = true;
+ }
+ this.type = type;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigData
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigData putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigData object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigData createTenancyConfigData = (CreateTenancyConfigData) o;
+ return Objects.equals(this.attributes, createTenancyConfigData.attributes)
+ && Objects.equals(this.id, createTenancyConfigData.id)
+ && Objects.equals(this.type, createTenancyConfigData.type)
+ && Objects.equals(this.additionalProperties, createTenancyConfigData.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigData {\n");
+ sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
+ sb.append(" type: ").append(toIndentedString(type)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributes.java
new file mode 100644
index 00000000000..c843b4a94a4
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributes.java
@@ -0,0 +1,461 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+import org.openapitools.jackson.nullable.JsonNullable;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_AUTH_CREDENTIALS,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_CONFIG_VERSION,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_COST_COLLECTION_ENABLED,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_DD_COMPARTMENT_ID,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_DD_STACK_ID,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_HOME_REGION,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_LOGS_CONFIG,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_METRICS_CONFIG,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_REGIONS_CONFIG,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED,
+ CreateTenancyConfigDataAttributes.JSON_PROPERTY_USER_OCID
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigDataAttributes {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_AUTH_CREDENTIALS = "auth_credentials";
+ private CreateTenancyConfigDataAttributesAuthCredentials authCredentials;
+
+ public static final String JSON_PROPERTY_CONFIG_VERSION = "config_version";
+ private JsonNullable configVersion = JsonNullable.undefined();
+
+ public static final String JSON_PROPERTY_COST_COLLECTION_ENABLED = "cost_collection_enabled";
+ private Boolean costCollectionEnabled;
+
+ public static final String JSON_PROPERTY_DD_COMPARTMENT_ID = "dd_compartment_id";
+ private String ddCompartmentId;
+
+ public static final String JSON_PROPERTY_DD_STACK_ID = "dd_stack_id";
+ private String ddStackId;
+
+ public static final String JSON_PROPERTY_HOME_REGION = "home_region";
+ private String homeRegion;
+
+ public static final String JSON_PROPERTY_LOGS_CONFIG = "logs_config";
+ private CreateTenancyConfigDataAttributesLogsConfig logsConfig;
+
+ public static final String JSON_PROPERTY_METRICS_CONFIG = "metrics_config";
+ private CreateTenancyConfigDataAttributesMetricsConfig metricsConfig;
+
+ public static final String JSON_PROPERTY_REGIONS_CONFIG = "regions_config";
+ private CreateTenancyConfigDataAttributesRegionsConfig regionsConfig;
+
+ public static final String JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED =
+ "resource_collection_enabled";
+ private Boolean resourceCollectionEnabled;
+
+ public static final String JSON_PROPERTY_USER_OCID = "user_ocid";
+ private String userOcid;
+
+ public CreateTenancyConfigDataAttributes() {}
+
+ @JsonCreator
+ public CreateTenancyConfigDataAttributes(
+ @JsonProperty(required = true, value = JSON_PROPERTY_AUTH_CREDENTIALS)
+ CreateTenancyConfigDataAttributesAuthCredentials authCredentials,
+ @JsonProperty(required = true, value = JSON_PROPERTY_HOME_REGION) String homeRegion,
+ @JsonProperty(required = true, value = JSON_PROPERTY_USER_OCID) String userOcid) {
+ this.authCredentials = authCredentials;
+ this.unparsed |= authCredentials.unparsed;
+ this.homeRegion = homeRegion;
+ this.userOcid = userOcid;
+ }
+
+ public CreateTenancyConfigDataAttributes authCredentials(
+ CreateTenancyConfigDataAttributesAuthCredentials authCredentials) {
+ this.authCredentials = authCredentials;
+ this.unparsed |= authCredentials.unparsed;
+ return this;
+ }
+
+ /**
+ * GetauthCredentials
+ *
+ * @return authCredentials
+ */
+ @JsonProperty(JSON_PROPERTY_AUTH_CREDENTIALS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public CreateTenancyConfigDataAttributesAuthCredentials getAuthCredentials() {
+ return authCredentials;
+ }
+
+ public void setAuthCredentials(CreateTenancyConfigDataAttributesAuthCredentials authCredentials) {
+ this.authCredentials = authCredentials;
+ }
+
+ public CreateTenancyConfigDataAttributes configVersion(Long configVersion) {
+ this.configVersion = JsonNullable.of(configVersion);
+ return this;
+ }
+
+ /**
+ * GetconfigVersion
+ *
+ * @return configVersion
+ */
+ @jakarta.annotation.Nullable
+ @JsonIgnore
+ public Long getConfigVersion() {
+ return configVersion.orElse(null);
+ }
+
+ @JsonProperty(JSON_PROPERTY_CONFIG_VERSION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public JsonNullable getConfigVersion_JsonNullable() {
+ return configVersion;
+ }
+
+ @JsonProperty(JSON_PROPERTY_CONFIG_VERSION)
+ public void setConfigVersion_JsonNullable(JsonNullable configVersion) {
+ this.configVersion = configVersion;
+ }
+
+ public void setConfigVersion(Long configVersion) {
+ this.configVersion = JsonNullable.of(configVersion);
+ }
+
+ public CreateTenancyConfigDataAttributes costCollectionEnabled(Boolean costCollectionEnabled) {
+ this.costCollectionEnabled = costCollectionEnabled;
+ return this;
+ }
+
+ /**
+ * GetcostCollectionEnabled
+ *
+ * @return costCollectionEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COST_COLLECTION_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getCostCollectionEnabled() {
+ return costCollectionEnabled;
+ }
+
+ public void setCostCollectionEnabled(Boolean costCollectionEnabled) {
+ this.costCollectionEnabled = costCollectionEnabled;
+ }
+
+ public CreateTenancyConfigDataAttributes ddCompartmentId(String ddCompartmentId) {
+ this.ddCompartmentId = ddCompartmentId;
+ return this;
+ }
+
+ /**
+ * GetddCompartmentId
+ *
+ * @return ddCompartmentId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_COMPARTMENT_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdCompartmentId() {
+ return ddCompartmentId;
+ }
+
+ public void setDdCompartmentId(String ddCompartmentId) {
+ this.ddCompartmentId = ddCompartmentId;
+ }
+
+ public CreateTenancyConfigDataAttributes ddStackId(String ddStackId) {
+ this.ddStackId = ddStackId;
+ return this;
+ }
+
+ /**
+ * GetddStackId
+ *
+ * @return ddStackId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_STACK_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdStackId() {
+ return ddStackId;
+ }
+
+ public void setDdStackId(String ddStackId) {
+ this.ddStackId = ddStackId;
+ }
+
+ public CreateTenancyConfigDataAttributes homeRegion(String homeRegion) {
+ this.homeRegion = homeRegion;
+ return this;
+ }
+
+ /**
+ * GethomeRegion
+ *
+ * @return homeRegion
+ */
+ @JsonProperty(JSON_PROPERTY_HOME_REGION)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getHomeRegion() {
+ return homeRegion;
+ }
+
+ public void setHomeRegion(String homeRegion) {
+ this.homeRegion = homeRegion;
+ }
+
+ public CreateTenancyConfigDataAttributes logsConfig(
+ CreateTenancyConfigDataAttributesLogsConfig logsConfig) {
+ this.logsConfig = logsConfig;
+ this.unparsed |= logsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetlogsConfig
+ *
+ * @return logsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_LOGS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public CreateTenancyConfigDataAttributesLogsConfig getLogsConfig() {
+ return logsConfig;
+ }
+
+ public void setLogsConfig(CreateTenancyConfigDataAttributesLogsConfig logsConfig) {
+ this.logsConfig = logsConfig;
+ }
+
+ public CreateTenancyConfigDataAttributes metricsConfig(
+ CreateTenancyConfigDataAttributesMetricsConfig metricsConfig) {
+ this.metricsConfig = metricsConfig;
+ this.unparsed |= metricsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetmetricsConfig
+ *
+ * @return metricsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_METRICS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public CreateTenancyConfigDataAttributesMetricsConfig getMetricsConfig() {
+ return metricsConfig;
+ }
+
+ public void setMetricsConfig(CreateTenancyConfigDataAttributesMetricsConfig metricsConfig) {
+ this.metricsConfig = metricsConfig;
+ }
+
+ public CreateTenancyConfigDataAttributes regionsConfig(
+ CreateTenancyConfigDataAttributesRegionsConfig regionsConfig) {
+ this.regionsConfig = regionsConfig;
+ this.unparsed |= regionsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetregionsConfig
+ *
+ * @return regionsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_REGIONS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public CreateTenancyConfigDataAttributesRegionsConfig getRegionsConfig() {
+ return regionsConfig;
+ }
+
+ public void setRegionsConfig(CreateTenancyConfigDataAttributesRegionsConfig regionsConfig) {
+ this.regionsConfig = regionsConfig;
+ }
+
+ public CreateTenancyConfigDataAttributes resourceCollectionEnabled(
+ Boolean resourceCollectionEnabled) {
+ this.resourceCollectionEnabled = resourceCollectionEnabled;
+ return this;
+ }
+
+ /**
+ * GetresourceCollectionEnabled
+ *
+ * @return resourceCollectionEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getResourceCollectionEnabled() {
+ return resourceCollectionEnabled;
+ }
+
+ public void setResourceCollectionEnabled(Boolean resourceCollectionEnabled) {
+ this.resourceCollectionEnabled = resourceCollectionEnabled;
+ }
+
+ public CreateTenancyConfigDataAttributes userOcid(String userOcid) {
+ this.userOcid = userOcid;
+ return this;
+ }
+
+ /**
+ * GetuserOcid
+ *
+ * @return userOcid
+ */
+ @JsonProperty(JSON_PROPERTY_USER_OCID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getUserOcid() {
+ return userOcid;
+ }
+
+ public void setUserOcid(String userOcid) {
+ this.userOcid = userOcid;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigDataAttributes
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigDataAttributes putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigDataAttributes object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigDataAttributes createTenancyConfigDataAttributes =
+ (CreateTenancyConfigDataAttributes) o;
+ return Objects.equals(this.authCredentials, createTenancyConfigDataAttributes.authCredentials)
+ && Objects.equals(this.configVersion, createTenancyConfigDataAttributes.configVersion)
+ && Objects.equals(
+ this.costCollectionEnabled, createTenancyConfigDataAttributes.costCollectionEnabled)
+ && Objects.equals(this.ddCompartmentId, createTenancyConfigDataAttributes.ddCompartmentId)
+ && Objects.equals(this.ddStackId, createTenancyConfigDataAttributes.ddStackId)
+ && Objects.equals(this.homeRegion, createTenancyConfigDataAttributes.homeRegion)
+ && Objects.equals(this.logsConfig, createTenancyConfigDataAttributes.logsConfig)
+ && Objects.equals(this.metricsConfig, createTenancyConfigDataAttributes.metricsConfig)
+ && Objects.equals(this.regionsConfig, createTenancyConfigDataAttributes.regionsConfig)
+ && Objects.equals(
+ this.resourceCollectionEnabled,
+ createTenancyConfigDataAttributes.resourceCollectionEnabled)
+ && Objects.equals(this.userOcid, createTenancyConfigDataAttributes.userOcid)
+ && Objects.equals(
+ this.additionalProperties, createTenancyConfigDataAttributes.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ authCredentials,
+ configVersion,
+ costCollectionEnabled,
+ ddCompartmentId,
+ ddStackId,
+ homeRegion,
+ logsConfig,
+ metricsConfig,
+ regionsConfig,
+ resourceCollectionEnabled,
+ userOcid,
+ additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigDataAttributes {\n");
+ sb.append(" authCredentials: ").append(toIndentedString(authCredentials)).append("\n");
+ sb.append(" configVersion: ").append(toIndentedString(configVersion)).append("\n");
+ sb.append(" costCollectionEnabled: ")
+ .append(toIndentedString(costCollectionEnabled))
+ .append("\n");
+ sb.append(" ddCompartmentId: ").append(toIndentedString(ddCompartmentId)).append("\n");
+ sb.append(" ddStackId: ").append(toIndentedString(ddStackId)).append("\n");
+ sb.append(" homeRegion: ").append(toIndentedString(homeRegion)).append("\n");
+ sb.append(" logsConfig: ").append(toIndentedString(logsConfig)).append("\n");
+ sb.append(" metricsConfig: ").append(toIndentedString(metricsConfig)).append("\n");
+ sb.append(" regionsConfig: ").append(toIndentedString(regionsConfig)).append("\n");
+ sb.append(" resourceCollectionEnabled: ")
+ .append(toIndentedString(resourceCollectionEnabled))
+ .append("\n");
+ sb.append(" userOcid: ").append(toIndentedString(userOcid)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesAuthCredentials.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesAuthCredentials.java
new file mode 100644
index 00000000000..c1bf704a180
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesAuthCredentials.java
@@ -0,0 +1,179 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigDataAttributesAuthCredentials.JSON_PROPERTY_FINGERPRINT,
+ CreateTenancyConfigDataAttributesAuthCredentials.JSON_PROPERTY_PRIVATE_KEY
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigDataAttributesAuthCredentials {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_FINGERPRINT = "fingerprint";
+ private String fingerprint;
+
+ public static final String JSON_PROPERTY_PRIVATE_KEY = "private_key";
+ private String privateKey;
+
+ public CreateTenancyConfigDataAttributesAuthCredentials() {}
+
+ @JsonCreator
+ public CreateTenancyConfigDataAttributesAuthCredentials(
+ @JsonProperty(required = true, value = JSON_PROPERTY_PRIVATE_KEY) String privateKey) {
+ this.privateKey = privateKey;
+ }
+
+ public CreateTenancyConfigDataAttributesAuthCredentials fingerprint(String fingerprint) {
+ this.fingerprint = fingerprint;
+ return this;
+ }
+
+ /**
+ * Getfingerprint
+ *
+ * @return fingerprint
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_FINGERPRINT)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getFingerprint() {
+ return fingerprint;
+ }
+
+ public void setFingerprint(String fingerprint) {
+ this.fingerprint = fingerprint;
+ }
+
+ public CreateTenancyConfigDataAttributesAuthCredentials privateKey(String privateKey) {
+ this.privateKey = privateKey;
+ return this;
+ }
+
+ /**
+ * GetprivateKey
+ *
+ * @return privateKey
+ */
+ @JsonProperty(JSON_PROPERTY_PRIVATE_KEY)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getPrivateKey() {
+ return privateKey;
+ }
+
+ public void setPrivateKey(String privateKey) {
+ this.privateKey = privateKey;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigDataAttributesAuthCredentials
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigDataAttributesAuthCredentials putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigDataAttributesAuthCredentials object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigDataAttributesAuthCredentials
+ createTenancyConfigDataAttributesAuthCredentials =
+ (CreateTenancyConfigDataAttributesAuthCredentials) o;
+ return Objects.equals(
+ this.fingerprint, createTenancyConfigDataAttributesAuthCredentials.fingerprint)
+ && Objects.equals(
+ this.privateKey, createTenancyConfigDataAttributesAuthCredentials.privateKey)
+ && Objects.equals(
+ this.additionalProperties,
+ createTenancyConfigDataAttributesAuthCredentials.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(fingerprint, privateKey, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigDataAttributesAuthCredentials {\n");
+ sb.append(" fingerprint: ").append(toIndentedString(fingerprint)).append("\n");
+ sb.append(" privateKey: ").append(toIndentedString(privateKey)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesLogsConfig.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesLogsConfig.java
new file mode 100644
index 00000000000..c4e671b54fa
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesLogsConfig.java
@@ -0,0 +1,221 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_COMPARTMENT_TAG_FILTERS,
+ CreateTenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_ENABLED,
+ CreateTenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_ENABLED_SERVICES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigDataAttributesLogsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_COMPARTMENT_TAG_FILTERS = "compartment_tag_filters";
+ private List compartmentTagFilters = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_ENABLED_SERVICES = "enabled_services";
+ private List enabledServices = null;
+
+ public CreateTenancyConfigDataAttributesLogsConfig compartmentTagFilters(
+ List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesLogsConfig addCompartmentTagFiltersItem(
+ String compartmentTagFiltersItem) {
+ if (this.compartmentTagFilters == null) {
+ this.compartmentTagFilters = new ArrayList<>();
+ }
+ this.compartmentTagFilters.add(compartmentTagFiltersItem);
+ return this;
+ }
+
+ /**
+ * GetcompartmentTagFilters
+ *
+ * @return compartmentTagFilters
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COMPARTMENT_TAG_FILTERS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getCompartmentTagFilters() {
+ return compartmentTagFilters;
+ }
+
+ public void setCompartmentTagFilters(List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ }
+
+ public CreateTenancyConfigDataAttributesLogsConfig enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public CreateTenancyConfigDataAttributesLogsConfig enabledServices(List enabledServices) {
+ this.enabledServices = enabledServices;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesLogsConfig addEnabledServicesItem(
+ String enabledServicesItem) {
+ if (this.enabledServices == null) {
+ this.enabledServices = new ArrayList<>();
+ }
+ this.enabledServices.add(enabledServicesItem);
+ return this;
+ }
+
+ /**
+ * GetenabledServices
+ *
+ * @return enabledServices
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED_SERVICES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getEnabledServices() {
+ return enabledServices;
+ }
+
+ public void setEnabledServices(List enabledServices) {
+ this.enabledServices = enabledServices;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigDataAttributesLogsConfig
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigDataAttributesLogsConfig putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigDataAttributesLogsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigDataAttributesLogsConfig createTenancyConfigDataAttributesLogsConfig =
+ (CreateTenancyConfigDataAttributesLogsConfig) o;
+ return Objects.equals(
+ this.compartmentTagFilters,
+ createTenancyConfigDataAttributesLogsConfig.compartmentTagFilters)
+ && Objects.equals(this.enabled, createTenancyConfigDataAttributesLogsConfig.enabled)
+ && Objects.equals(
+ this.enabledServices, createTenancyConfigDataAttributesLogsConfig.enabledServices)
+ && Objects.equals(
+ this.additionalProperties,
+ createTenancyConfigDataAttributesLogsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(compartmentTagFilters, enabled, enabledServices, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigDataAttributesLogsConfig {\n");
+ sb.append(" compartmentTagFilters: ")
+ .append(toIndentedString(compartmentTagFilters))
+ .append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" enabledServices: ").append(toIndentedString(enabledServices)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesMetricsConfig.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesMetricsConfig.java
new file mode 100644
index 00000000000..9dead2b4b47
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesMetricsConfig.java
@@ -0,0 +1,222 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_COMPARTMENT_TAG_FILTERS,
+ CreateTenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_ENABLED,
+ CreateTenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_EXCLUDED_SERVICES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigDataAttributesMetricsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_COMPARTMENT_TAG_FILTERS = "compartment_tag_filters";
+ private List compartmentTagFilters = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_EXCLUDED_SERVICES = "excluded_services";
+ private List excludedServices = null;
+
+ public CreateTenancyConfigDataAttributesMetricsConfig compartmentTagFilters(
+ List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesMetricsConfig addCompartmentTagFiltersItem(
+ String compartmentTagFiltersItem) {
+ if (this.compartmentTagFilters == null) {
+ this.compartmentTagFilters = new ArrayList<>();
+ }
+ this.compartmentTagFilters.add(compartmentTagFiltersItem);
+ return this;
+ }
+
+ /**
+ * GetcompartmentTagFilters
+ *
+ * @return compartmentTagFilters
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COMPARTMENT_TAG_FILTERS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getCompartmentTagFilters() {
+ return compartmentTagFilters;
+ }
+
+ public void setCompartmentTagFilters(List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ }
+
+ public CreateTenancyConfigDataAttributesMetricsConfig enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public CreateTenancyConfigDataAttributesMetricsConfig excludedServices(
+ List excludedServices) {
+ this.excludedServices = excludedServices;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesMetricsConfig addExcludedServicesItem(
+ String excludedServicesItem) {
+ if (this.excludedServices == null) {
+ this.excludedServices = new ArrayList<>();
+ }
+ this.excludedServices.add(excludedServicesItem);
+ return this;
+ }
+
+ /**
+ * GetexcludedServices
+ *
+ * @return excludedServices
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_EXCLUDED_SERVICES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getExcludedServices() {
+ return excludedServices;
+ }
+
+ public void setExcludedServices(List excludedServices) {
+ this.excludedServices = excludedServices;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigDataAttributesMetricsConfig
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigDataAttributesMetricsConfig putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigDataAttributesMetricsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigDataAttributesMetricsConfig createTenancyConfigDataAttributesMetricsConfig =
+ (CreateTenancyConfigDataAttributesMetricsConfig) o;
+ return Objects.equals(
+ this.compartmentTagFilters,
+ createTenancyConfigDataAttributesMetricsConfig.compartmentTagFilters)
+ && Objects.equals(this.enabled, createTenancyConfigDataAttributesMetricsConfig.enabled)
+ && Objects.equals(
+ this.excludedServices, createTenancyConfigDataAttributesMetricsConfig.excludedServices)
+ && Objects.equals(
+ this.additionalProperties,
+ createTenancyConfigDataAttributesMetricsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(compartmentTagFilters, enabled, excludedServices, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigDataAttributesMetricsConfig {\n");
+ sb.append(" compartmentTagFilters: ")
+ .append(toIndentedString(compartmentTagFilters))
+ .append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" excludedServices: ").append(toIndentedString(excludedServices)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesRegionsConfig.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesRegionsConfig.java
new file mode 100644
index 00000000000..92f7495fb9b
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigDataAttributesRegionsConfig.java
@@ -0,0 +1,221 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ CreateTenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_AVAILABLE,
+ CreateTenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_DISABLED,
+ CreateTenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_ENABLED
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigDataAttributesRegionsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_AVAILABLE = "available";
+ private List available = null;
+
+ public static final String JSON_PROPERTY_DISABLED = "disabled";
+ private List disabled = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private List enabled = null;
+
+ public CreateTenancyConfigDataAttributesRegionsConfig available(List available) {
+ this.available = available;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesRegionsConfig addAvailableItem(String availableItem) {
+ if (this.available == null) {
+ this.available = new ArrayList<>();
+ }
+ this.available.add(availableItem);
+ return this;
+ }
+
+ /**
+ * Getavailable
+ *
+ * @return available
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_AVAILABLE)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getAvailable() {
+ return available;
+ }
+
+ public void setAvailable(List available) {
+ this.available = available;
+ }
+
+ public CreateTenancyConfigDataAttributesRegionsConfig disabled(List disabled) {
+ this.disabled = disabled;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesRegionsConfig addDisabledItem(String disabledItem) {
+ if (this.disabled == null) {
+ this.disabled = new ArrayList<>();
+ }
+ this.disabled.add(disabledItem);
+ return this;
+ }
+
+ /**
+ * Getdisabled
+ *
+ * @return disabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DISABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getDisabled() {
+ return disabled;
+ }
+
+ public void setDisabled(List disabled) {
+ this.disabled = disabled;
+ }
+
+ public CreateTenancyConfigDataAttributesRegionsConfig enabled(List enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ public CreateTenancyConfigDataAttributesRegionsConfig addEnabledItem(String enabledItem) {
+ if (this.enabled == null) {
+ this.enabled = new ArrayList<>();
+ }
+ this.enabled.add(enabledItem);
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(List enabled) {
+ this.enabled = enabled;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigDataAttributesRegionsConfig
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigDataAttributesRegionsConfig putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigDataAttributesRegionsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigDataAttributesRegionsConfig createTenancyConfigDataAttributesRegionsConfig =
+ (CreateTenancyConfigDataAttributesRegionsConfig) o;
+ return Objects.equals(this.available, createTenancyConfigDataAttributesRegionsConfig.available)
+ && Objects.equals(this.disabled, createTenancyConfigDataAttributesRegionsConfig.disabled)
+ && Objects.equals(this.enabled, createTenancyConfigDataAttributesRegionsConfig.enabled)
+ && Objects.equals(
+ this.additionalProperties,
+ createTenancyConfigDataAttributesRegionsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(available, disabled, enabled, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigDataAttributesRegionsConfig {\n");
+ sb.append(" available: ").append(toIndentedString(available)).append("\n");
+ sb.append(" disabled: ").append(toIndentedString(disabled)).append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigRequest.java b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigRequest.java
new file mode 100644
index 00000000000..00d779252c9
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/CreateTenancyConfigRequest.java
@@ -0,0 +1,146 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({CreateTenancyConfigRequest.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CreateTenancyConfigRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private CreateTenancyConfigData data;
+
+ public CreateTenancyConfigRequest() {}
+
+ @JsonCreator
+ public CreateTenancyConfigRequest(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA) CreateTenancyConfigData data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ }
+
+ public CreateTenancyConfigRequest data(CreateTenancyConfigData data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public CreateTenancyConfigData getData() {
+ return data;
+ }
+
+ public void setData(CreateTenancyConfigData data) {
+ this.data = data;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return CreateTenancyConfigRequest
+ */
+ @JsonAnySetter
+ public CreateTenancyConfigRequest putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this CreateTenancyConfigRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTenancyConfigRequest createTenancyConfigRequest = (CreateTenancyConfigRequest) o;
+ return Objects.equals(this.data, createTenancyConfigRequest.data)
+ && Objects.equals(
+ this.additionalProperties, createTenancyConfigRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTenancyConfigRequest {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfig.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfig.java
new file mode 100644
index 00000000000..13e0d7c9e3b
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfig.java
@@ -0,0 +1,136 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({TenancyConfig.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private TenancyConfigData data;
+
+ public TenancyConfig data(TenancyConfigData data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyConfigData getData() {
+ return data;
+ }
+
+ public void setData(TenancyConfigData data) {
+ this.data = data;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfig
+ */
+ @JsonAnySetter
+ public TenancyConfig putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfig tenancyConfig = (TenancyConfig) o;
+ return Objects.equals(this.data, tenancyConfig.data)
+ && Objects.equals(this.additionalProperties, tenancyConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfig {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigData.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigData.java
new file mode 100644
index 00000000000..141ad5245c7
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigData.java
@@ -0,0 +1,205 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyConfigData.JSON_PROPERTY_ATTRIBUTES,
+ TenancyConfigData.JSON_PROPERTY_ID,
+ TenancyConfigData.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigData {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private TenancyConfigDataAttributes attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private UpdateTenancyConfigDataType type = UpdateTenancyConfigDataType.OCI_TENANCY;
+
+ public TenancyConfigData() {}
+
+ @JsonCreator
+ public TenancyConfigData(
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) UpdateTenancyConfigDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public TenancyConfigData attributes(TenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyConfigDataAttributes getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(TenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ }
+
+ public TenancyConfigData id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Getid
+ *
+ * @return id
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public TenancyConfigData type(UpdateTenancyConfigDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * OCI tenancy resource type.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public UpdateTenancyConfigDataType getType() {
+ return type;
+ }
+
+ public void setType(UpdateTenancyConfigDataType type) {
+ if (!type.isValid()) {
+ this.unparsed = true;
+ }
+ this.type = type;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigData
+ */
+ @JsonAnySetter
+ public TenancyConfigData putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigData object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigData tenancyConfigData = (TenancyConfigData) o;
+ return Objects.equals(this.attributes, tenancyConfigData.attributes)
+ && Objects.equals(this.id, tenancyConfigData.id)
+ && Objects.equals(this.type, tenancyConfigData.type)
+ && Objects.equals(this.additionalProperties, tenancyConfigData.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigData {\n");
+ sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
+ sb.append(" type: ").append(toIndentedString(type)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributes.java
new file mode 100644
index 00000000000..3b5357239aa
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributes.java
@@ -0,0 +1,488 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyConfigDataAttributes.JSON_PROPERTY_BILLING_PLAN_ID,
+ TenancyConfigDataAttributes.JSON_PROPERTY_CONFIG_VERSION,
+ TenancyConfigDataAttributes.JSON_PROPERTY_COST_COLLECTION_ENABLED,
+ TenancyConfigDataAttributes.JSON_PROPERTY_DD_COMPARTMENT_ID,
+ TenancyConfigDataAttributes.JSON_PROPERTY_DD_STACK_ID,
+ TenancyConfigDataAttributes.JSON_PROPERTY_HOME_REGION,
+ TenancyConfigDataAttributes.JSON_PROPERTY_LOGS_CONFIG,
+ TenancyConfigDataAttributes.JSON_PROPERTY_METRICS_CONFIG,
+ TenancyConfigDataAttributes.JSON_PROPERTY_PARENT_TENANCY_NAME,
+ TenancyConfigDataAttributes.JSON_PROPERTY_REGIONS_CONFIG,
+ TenancyConfigDataAttributes.JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED,
+ TenancyConfigDataAttributes.JSON_PROPERTY_TENANCY_NAME,
+ TenancyConfigDataAttributes.JSON_PROPERTY_USER_OCID
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigDataAttributes {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_BILLING_PLAN_ID = "billing_plan_id";
+ private Integer billingPlanId;
+
+ public static final String JSON_PROPERTY_CONFIG_VERSION = "config_version";
+ private Long configVersion;
+
+ public static final String JSON_PROPERTY_COST_COLLECTION_ENABLED = "cost_collection_enabled";
+ private Boolean costCollectionEnabled;
+
+ public static final String JSON_PROPERTY_DD_COMPARTMENT_ID = "dd_compartment_id";
+ private String ddCompartmentId;
+
+ public static final String JSON_PROPERTY_DD_STACK_ID = "dd_stack_id";
+ private String ddStackId;
+
+ public static final String JSON_PROPERTY_HOME_REGION = "home_region";
+ private String homeRegion;
+
+ public static final String JSON_PROPERTY_LOGS_CONFIG = "logs_config";
+ private TenancyConfigDataAttributesLogsConfig logsConfig;
+
+ public static final String JSON_PROPERTY_METRICS_CONFIG = "metrics_config";
+ private TenancyConfigDataAttributesMetricsConfig metricsConfig;
+
+ public static final String JSON_PROPERTY_PARENT_TENANCY_NAME = "parent_tenancy_name";
+ private String parentTenancyName;
+
+ public static final String JSON_PROPERTY_REGIONS_CONFIG = "regions_config";
+ private TenancyConfigDataAttributesRegionsConfig regionsConfig;
+
+ public static final String JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED =
+ "resource_collection_enabled";
+ private Boolean resourceCollectionEnabled;
+
+ public static final String JSON_PROPERTY_TENANCY_NAME = "tenancy_name";
+ private String tenancyName;
+
+ public static final String JSON_PROPERTY_USER_OCID = "user_ocid";
+ private String userOcid;
+
+ public TenancyConfigDataAttributes billingPlanId(Integer billingPlanId) {
+ this.billingPlanId = billingPlanId;
+ return this;
+ }
+
+ /**
+ * GetbillingPlanId maximum: 2147483647
+ *
+ * @return billingPlanId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_BILLING_PLAN_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Integer getBillingPlanId() {
+ return billingPlanId;
+ }
+
+ public void setBillingPlanId(Integer billingPlanId) {
+ this.billingPlanId = billingPlanId;
+ }
+
+ public TenancyConfigDataAttributes configVersion(Long configVersion) {
+ this.configVersion = configVersion;
+ return this;
+ }
+
+ /**
+ * GetconfigVersion
+ *
+ * @return configVersion
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_CONFIG_VERSION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Long getConfigVersion() {
+ return configVersion;
+ }
+
+ public void setConfigVersion(Long configVersion) {
+ this.configVersion = configVersion;
+ }
+
+ public TenancyConfigDataAttributes costCollectionEnabled(Boolean costCollectionEnabled) {
+ this.costCollectionEnabled = costCollectionEnabled;
+ return this;
+ }
+
+ /**
+ * GetcostCollectionEnabled
+ *
+ * @return costCollectionEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COST_COLLECTION_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getCostCollectionEnabled() {
+ return costCollectionEnabled;
+ }
+
+ public void setCostCollectionEnabled(Boolean costCollectionEnabled) {
+ this.costCollectionEnabled = costCollectionEnabled;
+ }
+
+ public TenancyConfigDataAttributes ddCompartmentId(String ddCompartmentId) {
+ this.ddCompartmentId = ddCompartmentId;
+ return this;
+ }
+
+ /**
+ * GetddCompartmentId
+ *
+ * @return ddCompartmentId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_COMPARTMENT_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdCompartmentId() {
+ return ddCompartmentId;
+ }
+
+ public void setDdCompartmentId(String ddCompartmentId) {
+ this.ddCompartmentId = ddCompartmentId;
+ }
+
+ public TenancyConfigDataAttributes ddStackId(String ddStackId) {
+ this.ddStackId = ddStackId;
+ return this;
+ }
+
+ /**
+ * GetddStackId
+ *
+ * @return ddStackId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_STACK_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdStackId() {
+ return ddStackId;
+ }
+
+ public void setDdStackId(String ddStackId) {
+ this.ddStackId = ddStackId;
+ }
+
+ public TenancyConfigDataAttributes homeRegion(String homeRegion) {
+ this.homeRegion = homeRegion;
+ return this;
+ }
+
+ /**
+ * GethomeRegion
+ *
+ * @return homeRegion
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_HOME_REGION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getHomeRegion() {
+ return homeRegion;
+ }
+
+ public void setHomeRegion(String homeRegion) {
+ this.homeRegion = homeRegion;
+ }
+
+ public TenancyConfigDataAttributes logsConfig(TenancyConfigDataAttributesLogsConfig logsConfig) {
+ this.logsConfig = logsConfig;
+ this.unparsed |= logsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetlogsConfig
+ *
+ * @return logsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_LOGS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyConfigDataAttributesLogsConfig getLogsConfig() {
+ return logsConfig;
+ }
+
+ public void setLogsConfig(TenancyConfigDataAttributesLogsConfig logsConfig) {
+ this.logsConfig = logsConfig;
+ }
+
+ public TenancyConfigDataAttributes metricsConfig(
+ TenancyConfigDataAttributesMetricsConfig metricsConfig) {
+ this.metricsConfig = metricsConfig;
+ this.unparsed |= metricsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetmetricsConfig
+ *
+ * @return metricsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_METRICS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyConfigDataAttributesMetricsConfig getMetricsConfig() {
+ return metricsConfig;
+ }
+
+ public void setMetricsConfig(TenancyConfigDataAttributesMetricsConfig metricsConfig) {
+ this.metricsConfig = metricsConfig;
+ }
+
+ public TenancyConfigDataAttributes parentTenancyName(String parentTenancyName) {
+ this.parentTenancyName = parentTenancyName;
+ return this;
+ }
+
+ /**
+ * GetparentTenancyName
+ *
+ * @return parentTenancyName
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_PARENT_TENANCY_NAME)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getParentTenancyName() {
+ return parentTenancyName;
+ }
+
+ public void setParentTenancyName(String parentTenancyName) {
+ this.parentTenancyName = parentTenancyName;
+ }
+
+ public TenancyConfigDataAttributes regionsConfig(
+ TenancyConfigDataAttributesRegionsConfig regionsConfig) {
+ this.regionsConfig = regionsConfig;
+ this.unparsed |= regionsConfig.unparsed;
+ return this;
+ }
+
+ /**
+ * GetregionsConfig
+ *
+ * @return regionsConfig
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_REGIONS_CONFIG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyConfigDataAttributesRegionsConfig getRegionsConfig() {
+ return regionsConfig;
+ }
+
+ public void setRegionsConfig(TenancyConfigDataAttributesRegionsConfig regionsConfig) {
+ this.regionsConfig = regionsConfig;
+ }
+
+ public TenancyConfigDataAttributes resourceCollectionEnabled(Boolean resourceCollectionEnabled) {
+ this.resourceCollectionEnabled = resourceCollectionEnabled;
+ return this;
+ }
+
+ /**
+ * GetresourceCollectionEnabled
+ *
+ * @return resourceCollectionEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_RESOURCE_COLLECTION_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getResourceCollectionEnabled() {
+ return resourceCollectionEnabled;
+ }
+
+ public void setResourceCollectionEnabled(Boolean resourceCollectionEnabled) {
+ this.resourceCollectionEnabled = resourceCollectionEnabled;
+ }
+
+ public TenancyConfigDataAttributes tenancyName(String tenancyName) {
+ this.tenancyName = tenancyName;
+ return this;
+ }
+
+ /**
+ * GettenancyName
+ *
+ * @return tenancyName
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_TENANCY_NAME)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getTenancyName() {
+ return tenancyName;
+ }
+
+ public void setTenancyName(String tenancyName) {
+ this.tenancyName = tenancyName;
+ }
+
+ public TenancyConfigDataAttributes userOcid(String userOcid) {
+ this.userOcid = userOcid;
+ return this;
+ }
+
+ /**
+ * GetuserOcid
+ *
+ * @return userOcid
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_USER_OCID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getUserOcid() {
+ return userOcid;
+ }
+
+ public void setUserOcid(String userOcid) {
+ this.userOcid = userOcid;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigDataAttributes
+ */
+ @JsonAnySetter
+ public TenancyConfigDataAttributes putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigDataAttributes object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigDataAttributes tenancyConfigDataAttributes = (TenancyConfigDataAttributes) o;
+ return Objects.equals(this.billingPlanId, tenancyConfigDataAttributes.billingPlanId)
+ && Objects.equals(this.configVersion, tenancyConfigDataAttributes.configVersion)
+ && Objects.equals(
+ this.costCollectionEnabled, tenancyConfigDataAttributes.costCollectionEnabled)
+ && Objects.equals(this.ddCompartmentId, tenancyConfigDataAttributes.ddCompartmentId)
+ && Objects.equals(this.ddStackId, tenancyConfigDataAttributes.ddStackId)
+ && Objects.equals(this.homeRegion, tenancyConfigDataAttributes.homeRegion)
+ && Objects.equals(this.logsConfig, tenancyConfigDataAttributes.logsConfig)
+ && Objects.equals(this.metricsConfig, tenancyConfigDataAttributes.metricsConfig)
+ && Objects.equals(this.parentTenancyName, tenancyConfigDataAttributes.parentTenancyName)
+ && Objects.equals(this.regionsConfig, tenancyConfigDataAttributes.regionsConfig)
+ && Objects.equals(
+ this.resourceCollectionEnabled, tenancyConfigDataAttributes.resourceCollectionEnabled)
+ && Objects.equals(this.tenancyName, tenancyConfigDataAttributes.tenancyName)
+ && Objects.equals(this.userOcid, tenancyConfigDataAttributes.userOcid)
+ && Objects.equals(
+ this.additionalProperties, tenancyConfigDataAttributes.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ billingPlanId,
+ configVersion,
+ costCollectionEnabled,
+ ddCompartmentId,
+ ddStackId,
+ homeRegion,
+ logsConfig,
+ metricsConfig,
+ parentTenancyName,
+ regionsConfig,
+ resourceCollectionEnabled,
+ tenancyName,
+ userOcid,
+ additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigDataAttributes {\n");
+ sb.append(" billingPlanId: ").append(toIndentedString(billingPlanId)).append("\n");
+ sb.append(" configVersion: ").append(toIndentedString(configVersion)).append("\n");
+ sb.append(" costCollectionEnabled: ")
+ .append(toIndentedString(costCollectionEnabled))
+ .append("\n");
+ sb.append(" ddCompartmentId: ").append(toIndentedString(ddCompartmentId)).append("\n");
+ sb.append(" ddStackId: ").append(toIndentedString(ddStackId)).append("\n");
+ sb.append(" homeRegion: ").append(toIndentedString(homeRegion)).append("\n");
+ sb.append(" logsConfig: ").append(toIndentedString(logsConfig)).append("\n");
+ sb.append(" metricsConfig: ").append(toIndentedString(metricsConfig)).append("\n");
+ sb.append(" parentTenancyName: ").append(toIndentedString(parentTenancyName)).append("\n");
+ sb.append(" regionsConfig: ").append(toIndentedString(regionsConfig)).append("\n");
+ sb.append(" resourceCollectionEnabled: ")
+ .append(toIndentedString(resourceCollectionEnabled))
+ .append("\n");
+ sb.append(" tenancyName: ").append(toIndentedString(tenancyName)).append("\n");
+ sb.append(" userOcid: ").append(toIndentedString(userOcid)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesLogsConfig.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesLogsConfig.java
new file mode 100644
index 00000000000..6ec8efafcc6
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesLogsConfig.java
@@ -0,0 +1,217 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_COMPARTMENT_TAG_FILTERS,
+ TenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_ENABLED,
+ TenancyConfigDataAttributesLogsConfig.JSON_PROPERTY_ENABLED_SERVICES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigDataAttributesLogsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_COMPARTMENT_TAG_FILTERS = "compartment_tag_filters";
+ private List compartmentTagFilters = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_ENABLED_SERVICES = "enabled_services";
+ private List enabledServices = null;
+
+ public TenancyConfigDataAttributesLogsConfig compartmentTagFilters(
+ List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesLogsConfig addCompartmentTagFiltersItem(
+ String compartmentTagFiltersItem) {
+ if (this.compartmentTagFilters == null) {
+ this.compartmentTagFilters = new ArrayList<>();
+ }
+ this.compartmentTagFilters.add(compartmentTagFiltersItem);
+ return this;
+ }
+
+ /**
+ * GetcompartmentTagFilters
+ *
+ * @return compartmentTagFilters
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COMPARTMENT_TAG_FILTERS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getCompartmentTagFilters() {
+ return compartmentTagFilters;
+ }
+
+ public void setCompartmentTagFilters(List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ }
+
+ public TenancyConfigDataAttributesLogsConfig enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public TenancyConfigDataAttributesLogsConfig enabledServices(List enabledServices) {
+ this.enabledServices = enabledServices;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesLogsConfig addEnabledServicesItem(String enabledServicesItem) {
+ if (this.enabledServices == null) {
+ this.enabledServices = new ArrayList<>();
+ }
+ this.enabledServices.add(enabledServicesItem);
+ return this;
+ }
+
+ /**
+ * GetenabledServices
+ *
+ * @return enabledServices
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED_SERVICES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getEnabledServices() {
+ return enabledServices;
+ }
+
+ public void setEnabledServices(List enabledServices) {
+ this.enabledServices = enabledServices;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigDataAttributesLogsConfig
+ */
+ @JsonAnySetter
+ public TenancyConfigDataAttributesLogsConfig putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigDataAttributesLogsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigDataAttributesLogsConfig tenancyConfigDataAttributesLogsConfig =
+ (TenancyConfigDataAttributesLogsConfig) o;
+ return Objects.equals(
+ this.compartmentTagFilters, tenancyConfigDataAttributesLogsConfig.compartmentTagFilters)
+ && Objects.equals(this.enabled, tenancyConfigDataAttributesLogsConfig.enabled)
+ && Objects.equals(
+ this.enabledServices, tenancyConfigDataAttributesLogsConfig.enabledServices)
+ && Objects.equals(
+ this.additionalProperties, tenancyConfigDataAttributesLogsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(compartmentTagFilters, enabled, enabledServices, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigDataAttributesLogsConfig {\n");
+ sb.append(" compartmentTagFilters: ")
+ .append(toIndentedString(compartmentTagFilters))
+ .append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" enabledServices: ").append(toIndentedString(enabledServices)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesMetricsConfig.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesMetricsConfig.java
new file mode 100644
index 00000000000..3d53075d27c
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesMetricsConfig.java
@@ -0,0 +1,220 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_COMPARTMENT_TAG_FILTERS,
+ TenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_ENABLED,
+ TenancyConfigDataAttributesMetricsConfig.JSON_PROPERTY_EXCLUDED_SERVICES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigDataAttributesMetricsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_COMPARTMENT_TAG_FILTERS = "compartment_tag_filters";
+ private List compartmentTagFilters = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_EXCLUDED_SERVICES = "excluded_services";
+ private List excludedServices = null;
+
+ public TenancyConfigDataAttributesMetricsConfig compartmentTagFilters(
+ List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesMetricsConfig addCompartmentTagFiltersItem(
+ String compartmentTagFiltersItem) {
+ if (this.compartmentTagFilters == null) {
+ this.compartmentTagFilters = new ArrayList<>();
+ }
+ this.compartmentTagFilters.add(compartmentTagFiltersItem);
+ return this;
+ }
+
+ /**
+ * GetcompartmentTagFilters
+ *
+ * @return compartmentTagFilters
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_COMPARTMENT_TAG_FILTERS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getCompartmentTagFilters() {
+ return compartmentTagFilters;
+ }
+
+ public void setCompartmentTagFilters(List compartmentTagFilters) {
+ this.compartmentTagFilters = compartmentTagFilters;
+ }
+
+ public TenancyConfigDataAttributesMetricsConfig enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public TenancyConfigDataAttributesMetricsConfig excludedServices(List excludedServices) {
+ this.excludedServices = excludedServices;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesMetricsConfig addExcludedServicesItem(
+ String excludedServicesItem) {
+ if (this.excludedServices == null) {
+ this.excludedServices = new ArrayList<>();
+ }
+ this.excludedServices.add(excludedServicesItem);
+ return this;
+ }
+
+ /**
+ * GetexcludedServices
+ *
+ * @return excludedServices
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_EXCLUDED_SERVICES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getExcludedServices() {
+ return excludedServices;
+ }
+
+ public void setExcludedServices(List excludedServices) {
+ this.excludedServices = excludedServices;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigDataAttributesMetricsConfig
+ */
+ @JsonAnySetter
+ public TenancyConfigDataAttributesMetricsConfig putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigDataAttributesMetricsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigDataAttributesMetricsConfig tenancyConfigDataAttributesMetricsConfig =
+ (TenancyConfigDataAttributesMetricsConfig) o;
+ return Objects.equals(
+ this.compartmentTagFilters,
+ tenancyConfigDataAttributesMetricsConfig.compartmentTagFilters)
+ && Objects.equals(this.enabled, tenancyConfigDataAttributesMetricsConfig.enabled)
+ && Objects.equals(
+ this.excludedServices, tenancyConfigDataAttributesMetricsConfig.excludedServices)
+ && Objects.equals(
+ this.additionalProperties,
+ tenancyConfigDataAttributesMetricsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(compartmentTagFilters, enabled, excludedServices, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigDataAttributesMetricsConfig {\n");
+ sb.append(" compartmentTagFilters: ")
+ .append(toIndentedString(compartmentTagFilters))
+ .append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" excludedServices: ").append(toIndentedString(excludedServices)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesRegionsConfig.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesRegionsConfig.java
new file mode 100644
index 00000000000..31edae30d7d
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigDataAttributesRegionsConfig.java
@@ -0,0 +1,220 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_AVAILABLE,
+ TenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_DISABLED,
+ TenancyConfigDataAttributesRegionsConfig.JSON_PROPERTY_ENABLED
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigDataAttributesRegionsConfig {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_AVAILABLE = "available";
+ private List available = null;
+
+ public static final String JSON_PROPERTY_DISABLED = "disabled";
+ private List disabled = null;
+
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private List enabled = null;
+
+ public TenancyConfigDataAttributesRegionsConfig available(List available) {
+ this.available = available;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesRegionsConfig addAvailableItem(String availableItem) {
+ if (this.available == null) {
+ this.available = new ArrayList<>();
+ }
+ this.available.add(availableItem);
+ return this;
+ }
+
+ /**
+ * Getavailable
+ *
+ * @return available
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_AVAILABLE)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getAvailable() {
+ return available;
+ }
+
+ public void setAvailable(List available) {
+ this.available = available;
+ }
+
+ public TenancyConfigDataAttributesRegionsConfig disabled(List disabled) {
+ this.disabled = disabled;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesRegionsConfig addDisabledItem(String disabledItem) {
+ if (this.disabled == null) {
+ this.disabled = new ArrayList<>();
+ }
+ this.disabled.add(disabledItem);
+ return this;
+ }
+
+ /**
+ * Getdisabled
+ *
+ * @return disabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DISABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getDisabled() {
+ return disabled;
+ }
+
+ public void setDisabled(List disabled) {
+ this.disabled = disabled;
+ }
+
+ public TenancyConfigDataAttributesRegionsConfig enabled(List enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ public TenancyConfigDataAttributesRegionsConfig addEnabledItem(String enabledItem) {
+ if (this.enabled == null) {
+ this.enabled = new ArrayList<>();
+ }
+ this.enabled.add(enabledItem);
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(List enabled) {
+ this.enabled = enabled;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigDataAttributesRegionsConfig
+ */
+ @JsonAnySetter
+ public TenancyConfigDataAttributesRegionsConfig putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigDataAttributesRegionsConfig object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigDataAttributesRegionsConfig tenancyConfigDataAttributesRegionsConfig =
+ (TenancyConfigDataAttributesRegionsConfig) o;
+ return Objects.equals(this.available, tenancyConfigDataAttributesRegionsConfig.available)
+ && Objects.equals(this.disabled, tenancyConfigDataAttributesRegionsConfig.disabled)
+ && Objects.equals(this.enabled, tenancyConfigDataAttributesRegionsConfig.enabled)
+ && Objects.equals(
+ this.additionalProperties,
+ tenancyConfigDataAttributesRegionsConfig.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(available, disabled, enabled, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigDataAttributesRegionsConfig {\n");
+ sb.append(" available: ").append(toIndentedString(available)).append("\n");
+ sb.append(" disabled: ").append(toIndentedString(disabled)).append("\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyConfigList.java b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigList.java
new file mode 100644
index 00000000000..b2b9cc3e5ff
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyConfigList.java
@@ -0,0 +1,154 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({TenancyConfigList.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyConfigList {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private List data = new ArrayList<>();
+
+ public TenancyConfigList() {}
+
+ @JsonCreator
+ public TenancyConfigList(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA) List data) {
+ this.data = data;
+ }
+
+ public TenancyConfigList data(List data) {
+ this.data = data;
+ for (TenancyConfigData item : data) {
+ this.unparsed |= item.unparsed;
+ }
+ return this;
+ }
+
+ public TenancyConfigList addDataItem(TenancyConfigData dataItem) {
+ this.data.add(dataItem);
+ this.unparsed |= dataItem.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyConfigList
+ */
+ @JsonAnySetter
+ public TenancyConfigList putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyConfigList object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyConfigList tenancyConfigList = (TenancyConfigList) o;
+ return Objects.equals(this.data, tenancyConfigList.data)
+ && Objects.equals(this.additionalProperties, tenancyConfigList.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyConfigList {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyProductsData.java b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsData.java
new file mode 100644
index 00000000000..40c36ec9871
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsData.java
@@ -0,0 +1,205 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyProductsData.JSON_PROPERTY_ATTRIBUTES,
+ TenancyProductsData.JSON_PROPERTY_ID,
+ TenancyProductsData.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyProductsData {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private TenancyProductsDataAttributes attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private TenancyProductsDataType type = TenancyProductsDataType.OCI_TENANCY_PRODUCT;
+
+ public TenancyProductsData() {}
+
+ @JsonCreator
+ public TenancyProductsData(
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) TenancyProductsDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public TenancyProductsData attributes(TenancyProductsDataAttributes attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public TenancyProductsDataAttributes getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(TenancyProductsDataAttributes attributes) {
+ this.attributes = attributes;
+ }
+
+ public TenancyProductsData id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Getid
+ *
+ * @return id
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public TenancyProductsData type(TenancyProductsDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * OCI tenancy product resource type.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public TenancyProductsDataType getType() {
+ return type;
+ }
+
+ public void setType(TenancyProductsDataType type) {
+ if (!type.isValid()) {
+ this.unparsed = true;
+ }
+ this.type = type;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyProductsData
+ */
+ @JsonAnySetter
+ public TenancyProductsData putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyProductsData object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyProductsData tenancyProductsData = (TenancyProductsData) o;
+ return Objects.equals(this.attributes, tenancyProductsData.attributes)
+ && Objects.equals(this.id, tenancyProductsData.id)
+ && Objects.equals(this.type, tenancyProductsData.type)
+ && Objects.equals(this.additionalProperties, tenancyProductsData.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyProductsData {\n");
+ sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
+ sb.append(" type: ").append(toIndentedString(type)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributes.java
new file mode 100644
index 00000000000..4096917c267
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributes.java
@@ -0,0 +1,152 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({TenancyProductsDataAttributes.JSON_PROPERTY_PRODUCTS})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyProductsDataAttributes {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_PRODUCTS = "products";
+ private List products = null;
+
+ public TenancyProductsDataAttributes products(
+ List products) {
+ this.products = products;
+ for (TenancyProductsDataAttributesProductsItems item : products) {
+ this.unparsed |= item.unparsed;
+ }
+ return this;
+ }
+
+ public TenancyProductsDataAttributes addProductsItem(
+ TenancyProductsDataAttributesProductsItems productsItem) {
+ if (this.products == null) {
+ this.products = new ArrayList<>();
+ }
+ this.products.add(productsItem);
+ this.unparsed |= productsItem.unparsed;
+ return this;
+ }
+
+ /**
+ * Getproducts
+ *
+ * @return products
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_PRODUCTS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getProducts() {
+ return products;
+ }
+
+ public void setProducts(List products) {
+ this.products = products;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyProductsDataAttributes
+ */
+ @JsonAnySetter
+ public TenancyProductsDataAttributes putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyProductsDataAttributes object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyProductsDataAttributes tenancyProductsDataAttributes = (TenancyProductsDataAttributes) o;
+ return Objects.equals(this.products, tenancyProductsDataAttributes.products)
+ && Objects.equals(
+ this.additionalProperties, tenancyProductsDataAttributes.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(products, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyProductsDataAttributes {\n");
+ sb.append(" products: ").append(toIndentedString(products)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributesProductsItems.java b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributesProductsItems.java
new file mode 100644
index 00000000000..9b18cebeb59
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataAttributesProductsItems.java
@@ -0,0 +1,168 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ TenancyProductsDataAttributesProductsItems.JSON_PROPERTY_ENABLED,
+ TenancyProductsDataAttributesProductsItems.JSON_PROPERTY_PRODUCT_KEY
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyProductsDataAttributesProductsItems {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_PRODUCT_KEY = "product_key";
+ private String productKey;
+
+ public TenancyProductsDataAttributesProductsItems enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Getenabled
+ *
+ * @return enabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(Boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public TenancyProductsDataAttributesProductsItems productKey(String productKey) {
+ this.productKey = productKey;
+ return this;
+ }
+
+ /**
+ * GetproductKey
+ *
+ * @return productKey
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_PRODUCT_KEY)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getProductKey() {
+ return productKey;
+ }
+
+ public void setProductKey(String productKey) {
+ this.productKey = productKey;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyProductsDataAttributesProductsItems
+ */
+ @JsonAnySetter
+ public TenancyProductsDataAttributesProductsItems putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyProductsDataAttributesProductsItems object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyProductsDataAttributesProductsItems tenancyProductsDataAttributesProductsItems =
+ (TenancyProductsDataAttributesProductsItems) o;
+ return Objects.equals(this.enabled, tenancyProductsDataAttributesProductsItems.enabled)
+ && Objects.equals(this.productKey, tenancyProductsDataAttributesProductsItems.productKey)
+ && Objects.equals(
+ this.additionalProperties,
+ tenancyProductsDataAttributesProductsItems.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, productKey, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyProductsDataAttributesProductsItems {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" productKey: ").append(toIndentedString(productKey)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataType.java b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataType.java
new file mode 100644
index 00000000000..e2ab005a130
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsDataType.java
@@ -0,0 +1,57 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.datadog.api.client.ModelEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
+
+/** OCI tenancy product resource type. */
+@JsonSerialize(using = TenancyProductsDataType.TenancyProductsDataTypeSerializer.class)
+public class TenancyProductsDataType extends ModelEnum {
+
+ private static final Set allowedValues =
+ new HashSet(Arrays.asList("oci_tenancy_product"));
+
+ public static final TenancyProductsDataType OCI_TENANCY_PRODUCT =
+ new TenancyProductsDataType("oci_tenancy_product");
+
+ TenancyProductsDataType(String value) {
+ super(value, allowedValues);
+ }
+
+ public static class TenancyProductsDataTypeSerializer
+ extends StdSerializer {
+ public TenancyProductsDataTypeSerializer(Class t) {
+ super(t);
+ }
+
+ public TenancyProductsDataTypeSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ TenancyProductsDataType value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.value);
+ }
+ }
+
+ @JsonCreator
+ public static TenancyProductsDataType fromValue(String value) {
+ return new TenancyProductsDataType(value);
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/TenancyProductsList.java b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsList.java
new file mode 100644
index 00000000000..deb4c4a4b1a
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TenancyProductsList.java
@@ -0,0 +1,154 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({TenancyProductsList.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class TenancyProductsList {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private List data = new ArrayList<>();
+
+ public TenancyProductsList() {}
+
+ @JsonCreator
+ public TenancyProductsList(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA) List data) {
+ this.data = data;
+ }
+
+ public TenancyProductsList data(List data) {
+ this.data = data;
+ for (TenancyProductsData item : data) {
+ this.unparsed |= item.unparsed;
+ }
+ return this;
+ }
+
+ public TenancyProductsList addDataItem(TenancyProductsData dataItem) {
+ this.data.add(dataItem);
+ this.unparsed |= dataItem.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return TenancyProductsList
+ */
+ @JsonAnySetter
+ public TenancyProductsList putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this TenancyProductsList object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TenancyProductsList tenancyProductsList = (TenancyProductsList) o;
+ return Objects.equals(this.data, tenancyProductsList.data)
+ && Objects.equals(this.additionalProperties, tenancyProductsList.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TenancyProductsList {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/UpdateTenancyConfigData.java b/src/main/java/com/datadog/api/client/v2/model/UpdateTenancyConfigData.java
new file mode 100644
index 00000000000..0f95aa7adfe
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/UpdateTenancyConfigData.java
@@ -0,0 +1,206 @@
+/*
+ * 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 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** */
+@JsonPropertyOrder({
+ UpdateTenancyConfigData.JSON_PROPERTY_ATTRIBUTES,
+ UpdateTenancyConfigData.JSON_PROPERTY_ID,
+ UpdateTenancyConfigData.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class UpdateTenancyConfigData {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private UpdateTenancyConfigDataAttributes attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private UpdateTenancyConfigDataType type = UpdateTenancyConfigDataType.OCI_TENANCY;
+
+ public UpdateTenancyConfigData() {}
+
+ @JsonCreator
+ public UpdateTenancyConfigData(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) UpdateTenancyConfigDataType type) {
+ this.id = id;
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public UpdateTenancyConfigData attributes(UpdateTenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public UpdateTenancyConfigDataAttributes getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(UpdateTenancyConfigDataAttributes attributes) {
+ this.attributes = attributes;
+ }
+
+ public UpdateTenancyConfigData id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Getid
+ *
+ * @return id
+ */
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public UpdateTenancyConfigData type(UpdateTenancyConfigDataType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * OCI tenancy resource type.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public UpdateTenancyConfigDataType getType() {
+ return type;
+ }
+
+ public void setType(UpdateTenancyConfigDataType type) {
+ if (!type.isValid()) {
+ this.unparsed = true;
+ }
+ this.type = type;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return UpdateTenancyConfigData
+ */
+ @JsonAnySetter
+ public UpdateTenancyConfigData putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map