diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 324b65c3ebd..a2567d7cb1e 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -31360,6 +31360,522 @@ components:
required:
- databaseMonitoringTrigger
type: object
+ DatabricksCloudCostMetricsIntegrationDataflowRequest:
+ description: The Databricks cloud cost metrics dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest"
+ type: object
+ DatabricksCloudCostMetricsIntegrationDataflowResponse:
+ description: The Databricks cloud cost metrics dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse"
+ type: object
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest:
+ additionalProperties: false
+ description: Settings of the Databricks cloud cost metrics dataflow. Only the fields provided are changed.
+ properties:
+ ccm_collect_all_workspaces:
+ description: Whether cost data is collected for every workspace in the Databricks account rather than this workspace only.
+ example: true
+ type: boolean
+ type: object
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse:
+ description: Settings of the Databricks cloud cost metrics dataflow.
+ properties:
+ ccm_collect_all_workspaces:
+ description: Whether cost data is collected for every workspace in the Databricks account rather than this workspace only.
+ example: true
+ type: boolean
+ type: object
+ DatabricksDataJobMonitoringIntegrationDataflowRequest:
+ description: The Databricks Data Jobs Monitoring dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest"
+ type: object
+ DatabricksDataJobMonitoringIntegrationDataflowResponse:
+ description: The Databricks Data Jobs Monitoring dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse"
+ type: object
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest:
+ additionalProperties: false
+ description: Settings of the Databricks Data Jobs Monitoring dataflow. Only the fields provided are changed.
+ properties:
+ dd_api_key_id:
+ description: >-
+ ID of the Datadog API key the global init script uses to submit data. Setting or changing it requires `dd_api_key_secret` in the same request.
+ example: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ type: string
+ dd_api_key_secret:
+ description: Secret value of the Datadog API key identified by `dd_api_key_id`.
+ example: your-datadog-api-key
+ type: string
+ writeOnly: true
+ djm_global_init_script_enabled:
+ description: Whether Datadog manages the global init script that installs the Agent on your Databricks clusters.
+ example: true
+ type: boolean
+ script_gpum_enabled:
+ description: >-
+ Whether GPU metrics are collected from your Databricks clusters. The Agent installed by the global init script performs the collection, so this requires the dataflow to be enabled with `djm_global_init_script_enabled` set to `true`.
+ example: true
+ type: boolean
+ script_logs_enabled:
+ description: >-
+ Whether logs are collected from your Databricks clusters. The Agent installed by the global init script performs the collection, so this requires the dataflow to be enabled with `djm_global_init_script_enabled` set to `true`.
+ example: true
+ type: boolean
+ type: object
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse:
+ description: Settings of the Databricks Data Jobs Monitoring dataflow.
+ properties:
+ dd_api_key_id:
+ description: ID of the Datadog API key the global init script uses to submit data.
+ example: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ type: string
+ djm_global_init_script_enabled:
+ description: Whether Datadog manages the global init script that installs the Agent on your Databricks clusters.
+ example: true
+ type: boolean
+ script_gpum_enabled:
+ description: >-
+ Whether GPU metrics are collected from your Databricks clusters. The Agent installed by the global init script performs the collection, so this requires the dataflow to be enabled with `djm_global_init_script_enabled` set to `true`.
+ example: true
+ type: boolean
+ script_logs_enabled:
+ description: >-
+ Whether logs are collected from your Databricks clusters. The Agent installed by the global init script performs the collection, so this requires the dataflow to be enabled with `djm_global_init_script_enabled` set to `true`.
+ example: true
+ type: boolean
+ type: object
+ DatabricksDataObservabilityIntegrationDataflowRequest:
+ description: The Databricks data observability dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksDataObservabilityIntegrationDataflowSettingsRequest"
+ type: object
+ DatabricksDataObservabilityIntegrationDataflowResponse:
+ description: The Databricks data observability dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ settings:
+ $ref: "#/components/schemas/DatabricksDataObservabilityIntegrationDataflowSettingsResponse"
+ type: object
+ DatabricksDataObservabilityIntegrationDataflowSettingsRequest:
+ additionalProperties: false
+ description: Settings of the Databricks data observability dataflow. Only the fields provided are changed.
+ properties:
+ do_crawlers_cron:
+ description: Cron expression setting how often the data observability crawlers run.
+ example: "0 * * * *"
+ type: string
+ sync_system_catalog:
+ description: Whether the Databricks `system` catalog is synchronized alongside your data catalogs.
+ example: true
+ type: boolean
+ type: object
+ DatabricksDataObservabilityIntegrationDataflowSettingsResponse:
+ description: Settings of the Databricks data observability dataflow.
+ properties:
+ do_crawlers_cron:
+ description: Cron expression setting how often the data observability crawlers run.
+ example: "0 * * * *"
+ type: string
+ sync_system_catalog:
+ description: Whether the Databricks `system` catalog is synchronized alongside your data catalogs.
+ example: true
+ type: boolean
+ type: object
+ DatabricksIntegrationAccountAuthenticationRequest:
+ description: >-
+ Authentication for creating the Databricks integration account. Exactly one method is set. Choosing `private-action-runner` leaves the `databricks-model-serving-metrics` dataflow unable to collect data.
+ oneOf:
+ - $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthRequest"
+ - $ref: "#/components/schemas/IntegrationAccountPrivateActionRunnerAuthRequest"
+ DatabricksIntegrationAccountAuthenticationResponse:
+ description: Authentication configured on the Databricks integration account.
+ oneOf:
+ - $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthResponse"
+ - $ref: "#/components/schemas/IntegrationAccountPrivateActionRunnerAuthResponse"
+ - $ref: "#/components/schemas/DatabricksIntegrationAccountPatAuthResponse"
+ DatabricksIntegrationAccountAuthenticationUpdate:
+ description: >-
+ Authentication for updating the Databricks integration account. Exactly one method is set. Choosing `private-action-runner` leaves the `databricks-model-serving-metrics` dataflow unable to collect data. `pat` is accepted only on accounts that already use it, so it cannot move an account onto personal access token authentication.
+ oneOf:
+ - $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthUpdate"
+ - $ref: "#/components/schemas/IntegrationAccountPrivateActionRunnerAuthRequest"
+ - $ref: "#/components/schemas/DatabricksIntegrationAccountPatAuthUpdate"
+ DatabricksIntegrationAccountCreateAttributes:
+ description: Writable attributes used to create a Databricks integration account.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountAuthenticationRequest"
+ dataflows:
+ $ref: "#/components/schemas/DatabricksIntegrationDataflowsRequest"
+ name:
+ description: Human-readable name of the Databricks integration account.
+ example: My Databricks Workspace
+ type: string
+ settings:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountSettingsRequest"
+ required:
+ - name
+ - authentication
+ - settings
+ type: object
+ DatabricksIntegrationAccountCreateData:
+ description: Data envelope for creating a Databricks integration account.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountCreateAttributes"
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - type
+ - attributes
+ type: object
+ DatabricksIntegrationAccountCreateRequest:
+ description: Request payload to create a Databricks integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountCreateData"
+ required:
+ - data
+ type: object
+ DatabricksIntegrationAccountOAuthAuthRequest:
+ additionalProperties: false
+ description: Databricks OAuth machine-to-machine authentication using a service principal.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthType"
+ azure_tenant_id:
+ description: Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces.
+ example: 4d3bac44-0230-4732-9e70-cc00736f0a97
+ type: string
+ client_id:
+ description: Client ID of the Databricks service principal.
+ example: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ type: string
+ client_secret:
+ description: Secret of the Databricks service principal.
+ example: your-client-secret
+ type: string
+ writeOnly: true
+ required:
+ - auth_type
+ - client_id
+ - client_secret
+ type: object
+ DatabricksIntegrationAccountOAuthAuthResponse:
+ description: The Databricks OAuth authentication method and service principal configured on the account.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthType"
+ azure_tenant_id:
+ description: Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces.
+ example: 4d3bac44-0230-4732-9e70-cc00736f0a97
+ type: string
+ client_id:
+ description: Client ID of the Databricks service principal.
+ example: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ type: string
+ required:
+ - auth_type
+ - client_id
+ type: object
+ DatabricksIntegrationAccountOAuthAuthType:
+ default: databricks-oauth
+ description: The authentication method type.
+ enum:
+ - databricks-oauth
+ example: databricks-oauth
+ type: string
+ x-enum-varnames:
+ - DATABRICKS_OAUTH
+ DatabricksIntegrationAccountOAuthAuthUpdate:
+ additionalProperties: false
+ description: >-
+ Databricks OAuth machine-to-machine authentication using a service principal. Omit `client_secret` to keep the stored one; `client_id` must be provided on every submission. Omitting `azure_tenant_id` clears it.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountOAuthAuthType"
+ azure_tenant_id:
+ description: Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces.
+ example: 4d3bac44-0230-4732-9e70-cc00736f0a97
+ type: string
+ client_id:
+ description: Client ID of the Databricks service principal.
+ example: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ type: string
+ client_secret:
+ description: Secret of the Databricks service principal.
+ example: your-client-secret
+ type: string
+ writeOnly: true
+ required:
+ - auth_type
+ - client_id
+ type: object
+ DatabricksIntegrationAccountPatAuthResponse:
+ deprecated: true
+ description: >-
+ The Databricks personal access token authentication method configured on the account. Deprecated: migrate these accounts to `databricks-oauth` or `private-action-runner`.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountPatAuthType"
+ required:
+ - auth_type
+ type: object
+ DatabricksIntegrationAccountPatAuthType:
+ default: pat
+ description: The authentication method type.
+ enum:
+ - pat
+ example: pat
+ type: string
+ x-enum-varnames:
+ - PAT
+ DatabricksIntegrationAccountPatAuthUpdate:
+ additionalProperties: false
+ deprecated: true
+ description: >-
+ Databricks personal access token authentication. Deprecated: accepted only on accounts that already use it, and never on creation. Use `databricks-oauth` or `private-action-runner` instead. Omit `token` to keep the stored one.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountPatAuthType"
+ token:
+ description: Secret Databricks personal access token.
+ example: your-personal-access-token
+ type: string
+ writeOnly: true
+ required:
+ - auth_type
+ type: object
+ DatabricksIntegrationAccountResponse:
+ description: Response payload for a single Databricks integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponseData"
+ required:
+ - data
+ type: object
+ DatabricksIntegrationAccountResponseAttributes:
+ description: Attributes of a Databricks integration account returned in responses.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountAuthenticationResponse"
+ dataflows:
+ $ref: "#/components/schemas/DatabricksIntegrationDataflowsResponse"
+ name:
+ description: Human-readable name of the Databricks integration account.
+ example: My Databricks Workspace
+ type: string
+ settings:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountSettingsResponse"
+ required:
+ - name
+ - settings
+ type: object
+ DatabricksIntegrationAccountResponseData:
+ description: Data envelope of a Databricks integration account, including server-assigned identity.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponseAttributes"
+ id:
+ description: Server-generated unique identifier of the Databricks integration account.
+ example: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ readOnly: true
+ type: string
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - id
+ - attributes
+ - type
+ type: object
+ DatabricksIntegrationAccountSettingsRequest:
+ additionalProperties: false
+ description: Settings for creating the Databricks integration account.
+ properties:
+ system_tables_sql_warehouse_id:
+ description: ID of the SQL warehouse used to query the Databricks system tables.
+ example: aba7c023d4172910
+ type: string
+ workspace_url:
+ description: URL of the Databricks workspace.
+ example: "https://dbc-1234abcd.cloud.databricks.com"
+ type: string
+ required:
+ - workspace_url
+ type: object
+ DatabricksIntegrationAccountSettingsResponse:
+ description: Settings configured on the Databricks integration account.
+ properties:
+ system_tables_sql_warehouse_id:
+ description: ID of the SQL warehouse used to query the Databricks system tables.
+ example: aba7c023d4172910
+ type: string
+ workspace_url:
+ description: URL of the Databricks workspace.
+ example: "https://dbc-1234abcd.cloud.databricks.com"
+ type: string
+ required:
+ - workspace_url
+ type: object
+ DatabricksIntegrationAccountSettingsUpdate:
+ additionalProperties: false
+ description: Settings for updating the Databricks integration account. Only the fields provided are changed.
+ properties:
+ system_tables_sql_warehouse_id:
+ description: ID of the SQL warehouse used to query the Databricks system tables.
+ example: aba7c023d4172910
+ type: string
+ workspace_url:
+ description: URL of the Databricks workspace.
+ example: "https://dbc-1234abcd.cloud.databricks.com"
+ type: string
+ type: object
+ DatabricksIntegrationAccountUpdateAttributes:
+ description: >-
+ Writable attributes used to update a Databricks integration account. Every field is optional; only the fields provided are changed. When `dataflows` is provided, only the dataflow ids included in the request are modified; dataflows omitted from the map keep their current configuration, as do the settings of an included dataflow that provides only `enabled`.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountAuthenticationUpdate"
+ dataflows:
+ $ref: "#/components/schemas/DatabricksIntegrationDataflowsRequest"
+ name:
+ description: Human-readable name of the Databricks integration account.
+ example: My Databricks Workspace
+ type: string
+ settings:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountSettingsUpdate"
+ type: object
+ DatabricksIntegrationAccountUpdateData:
+ description: Data envelope for updating a Databricks integration account.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountUpdateAttributes"
+ id:
+ description: Unique identifier of the Databricks integration account to update.
+ example: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ type: string
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ DatabricksIntegrationAccountUpdateRequest:
+ description: Request payload to update a Databricks integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountUpdateData"
+ required:
+ - data
+ type: object
+ DatabricksIntegrationAccountsResponse:
+ description: Response payload for a list of Databricks integration accounts.
+ properties:
+ data:
+ description: List of Databricks integration accounts.
+ items:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponseData"
+ type: array
+ required:
+ - data
+ type: object
+ DatabricksIntegrationDataflowsRequest:
+ additionalProperties: false
+ description: >-
+ Dataflows to configure on the Databricks integration account, keyed by dataflow id. Some dataflows and settings have prerequisites, noted on each. Those prerequisites are not checked when the request is made, so anything left enabled without them is stored but collects no data.
+ properties:
+ databricks-cloud-cost-metrics:
+ $ref: "#/components/schemas/DatabricksCloudCostMetricsIntegrationDataflowRequest"
+ databricks-data-job-monitoring:
+ $ref: "#/components/schemas/DatabricksDataJobMonitoringIntegrationDataflowRequest"
+ databricks-data-observability:
+ $ref: "#/components/schemas/DatabricksDataObservabilityIntegrationDataflowRequest"
+ databricks-model-serving-metrics:
+ $ref: "#/components/schemas/DatabricksModelServingMetricsIntegrationDataflowRequest"
+ databricks-serverless-jobs:
+ $ref: "#/components/schemas/DatabricksServerlessJobsIntegrationDataflowRequest"
+ type: object
+ DatabricksIntegrationDataflowsResponse:
+ description: Dataflows configured on the Databricks integration account, keyed by dataflow id.
+ properties:
+ databricks-cloud-cost-metrics:
+ $ref: "#/components/schemas/DatabricksCloudCostMetricsIntegrationDataflowResponse"
+ databricks-data-job-monitoring:
+ $ref: "#/components/schemas/DatabricksDataJobMonitoringIntegrationDataflowResponse"
+ databricks-data-observability:
+ $ref: "#/components/schemas/DatabricksDataObservabilityIntegrationDataflowResponse"
+ databricks-model-serving-metrics:
+ $ref: "#/components/schemas/DatabricksModelServingMetricsIntegrationDataflowResponse"
+ databricks-serverless-jobs:
+ $ref: "#/components/schemas/DatabricksServerlessJobsIntegrationDataflowResponse"
+ type: object
+ DatabricksModelServingMetricsIntegrationDataflowRequest:
+ description: >-
+ The Databricks model serving metrics dataflow. Not supported on accounts that authenticate with `private-action-runner`; on those accounts this dataflow collects no data even when enabled.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ type: object
+ DatabricksModelServingMetricsIntegrationDataflowResponse:
+ description: >-
+ The Databricks model serving metrics dataflow. Not supported on accounts that authenticate with `private-action-runner`; on those accounts this dataflow collects no data even when enabled.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ type: object
+ DatabricksServerlessJobsIntegrationDataflowRequest:
+ description: The Databricks serverless jobs dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ type: object
+ DatabricksServerlessJobsIntegrationDataflowResponse:
+ description: The Databricks serverless jobs dataflow.
+ properties:
+ enabled:
+ description: Whether the Databricks dataflow is enabled.
+ example: true
+ type: boolean
+ type: object
DatadogAPIKey:
description: The definition of the `DatadogAPIKey` object.
properties:
@@ -53517,6 +54033,61 @@ components:
type: string
readOnly: true
type: object
+ IntegrationAccountPrivateActionRunnerAuthRequest:
+ additionalProperties: false
+ description: >-
+ Private Action Runner authentication. The runner holds the credentials, so this method carries no secrets; `connection_id` and `user_uuid` must be provided on every submission.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/IntegrationAccountPrivateActionRunnerAuthType"
+ connection_id:
+ description: Unique identifier of the Private Action Runner connection holding the credentials.
+ example: 08356fb7-3ae3-4ea2-913e-b4cb1b7e7ec2
+ type: string
+ secret_path:
+ description: Path of the credential inside the secret backend configured on the runner.
+ example: /vault/databricks/prod
+ type: string
+ user_uuid:
+ description: Unique identifier of the user the Private Action Runner connection belongs to.
+ example: ac470ea4-aa08-11f0-994d-da9212322ca2
+ type: string
+ required:
+ - auth_type
+ - connection_id
+ - user_uuid
+ type: object
+ IntegrationAccountPrivateActionRunnerAuthResponse:
+ description: The Private Action Runner authentication method configured on the account.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/IntegrationAccountPrivateActionRunnerAuthType"
+ connection_id:
+ description: Unique identifier of the Private Action Runner connection holding the credentials.
+ example: 08356fb7-3ae3-4ea2-913e-b4cb1b7e7ec2
+ type: string
+ secret_path:
+ description: Path of the credential inside the secret backend configured on the runner.
+ example: /vault/databricks/prod
+ type: string
+ user_uuid:
+ description: Unique identifier of the user the Private Action Runner connection belongs to.
+ example: ac470ea4-aa08-11f0-994d-da9212322ca2
+ type: string
+ required:
+ - auth_type
+ - connection_id
+ - user_uuid
+ type: object
+ IntegrationAccountPrivateActionRunnerAuthType:
+ default: private-action-runner
+ description: The authentication method type.
+ enum:
+ - private-action-runner
+ example: private-action-runner
+ type: string
+ x-enum-varnames:
+ - PRIVATE_ACTION_RUNNER
IntegrationAccountType:
default: integration-account
description: The type of the integration account resource. Always `integration-account`.
@@ -159672,6 +160243,308 @@ paths:
x-unstable: |-
**Note**: This endpoint is in preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
+ /api/v2/integration-interfaces/databricks/accounts:
+ get:
+ description: List Databricks integration accounts.
+ operationId: ListDatabricksIntegrationAccounts
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ - attributes:
+ authentication:
+ auth_type: databricks-oauth
+ client_id: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ dataflows:
+ databricks-cloud-cost-metrics:
+ enabled: true
+ settings:
+ ccm_collect_all_workspaces: true
+ databricks-data-job-monitoring:
+ enabled: true
+ settings:
+ dd_api_key_id: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ djm_global_init_script_enabled: true
+ script_gpum_enabled: false
+ script_logs_enabled: true
+ databricks-data-observability:
+ enabled: true
+ settings:
+ do_crawlers_cron: "0 * * * *"
+ sync_system_catalog: true
+ databricks-model-serving-metrics:
+ enabled: false
+ databricks-serverless-jobs:
+ enabled: true
+ name: My Databricks Workspace
+ settings:
+ system_tables_sql_warehouse_id: aba7c023d4172910
+ workspace_url: "https://dbc-1234abcd.cloud.databricks.com"
+ id: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountsResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: List Databricks integration accounts
+ tags:
+ - Databricks Integration Accounts
+ "x-permission":
+ operator: OR
+ permissions:
+ - integrations_read
+ x-unstable: |-
+ **Note**: This endpoint is in public beta.
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
+ post:
+ description: Create a Databricks integration account.
+ operationId: CreateDatabricksIntegrationAccount
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountCreateRequest"
+ required: true
+ responses:
+ "201":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: databricks-oauth
+ client_id: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ dataflows:
+ databricks-cloud-cost-metrics:
+ enabled: true
+ settings:
+ ccm_collect_all_workspaces: true
+ databricks-data-job-monitoring:
+ enabled: true
+ settings:
+ dd_api_key_id: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ djm_global_init_script_enabled: true
+ script_gpum_enabled: false
+ script_logs_enabled: true
+ databricks-data-observability:
+ enabled: true
+ settings:
+ do_crawlers_cron: "0 * * * *"
+ sync_system_catalog: true
+ databricks-model-serving-metrics:
+ enabled: false
+ databricks-serverless-jobs:
+ enabled: true
+ name: My Databricks Workspace
+ settings:
+ system_tables_sql_warehouse_id: aba7c023d4172910
+ workspace_url: "https://dbc-1234abcd.cloud.databricks.com"
+ id: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponse"
+ description: Created
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "422":
+ $ref: "#/components/responses/UnprocessableEntityResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Create a Databricks integration account
+ tags:
+ - Databricks Integration Accounts
+ x-codegen-request-body-name: body
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ x-unstable: |-
+ **Note**: This endpoint is in public beta.
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
+ /api/v2/integration-interfaces/databricks/accounts/{account_id}:
+ delete:
+ description: Delete a Databricks integration account.
+ operationId: DeleteDatabricksIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ responses:
+ "200":
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Delete a Databricks integration account
+ tags:
+ - Databricks Integration Accounts
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ x-unstable: |-
+ **Note**: This endpoint is in public beta.
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
+ get:
+ description: Get a Databricks integration account.
+ operationId: GetDatabricksIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: databricks-oauth
+ client_id: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ dataflows:
+ databricks-cloud-cost-metrics:
+ enabled: true
+ settings:
+ ccm_collect_all_workspaces: true
+ databricks-data-job-monitoring:
+ enabled: true
+ settings:
+ dd_api_key_id: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ djm_global_init_script_enabled: true
+ script_gpum_enabled: false
+ script_logs_enabled: true
+ databricks-data-observability:
+ enabled: true
+ settings:
+ do_crawlers_cron: "0 * * * *"
+ sync_system_catalog: true
+ databricks-model-serving-metrics:
+ enabled: false
+ databricks-serverless-jobs:
+ enabled: true
+ name: My Databricks Workspace
+ settings:
+ system_tables_sql_warehouse_id: aba7c023d4172910
+ workspace_url: "https://dbc-1234abcd.cloud.databricks.com"
+ id: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Get a Databricks integration account
+ tags:
+ - Databricks Integration Accounts
+ "x-permission":
+ operator: OR
+ permissions:
+ - integrations_read
+ x-unstable: |-
+ **Note**: This endpoint is in public beta.
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
+ patch:
+ description: Update a Databricks integration account. Only the fields provided are changed.
+ operationId: UpdateDatabricksIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountUpdateRequest"
+ required: true
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: databricks-oauth
+ client_id: 5c10654a-b3a3-4840-b37f-f477590c70a0
+ dataflows:
+ databricks-cloud-cost-metrics:
+ enabled: true
+ settings:
+ ccm_collect_all_workspaces: true
+ databricks-data-job-monitoring:
+ enabled: true
+ settings:
+ dd_api_key_id: fe383f4e-09fc-46bf-8e10-4efdd453a646
+ djm_global_init_script_enabled: true
+ script_gpum_enabled: false
+ script_logs_enabled: true
+ databricks-data-observability:
+ enabled: true
+ settings:
+ do_crawlers_cron: "0 * * * *"
+ sync_system_catalog: true
+ databricks-model-serving-metrics:
+ enabled: false
+ databricks-serverless-jobs:
+ enabled: true
+ name: My Databricks Workspace
+ settings:
+ system_tables_sql_warehouse_id: aba7c023d4172910
+ workspace_url: "https://dbc-1234abcd.cloud.databricks.com"
+ id: a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/DatabricksIntegrationAccountResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "422":
+ $ref: "#/components/responses/UnprocessableEntityResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Update a Databricks integration account
+ tags:
+ - Databricks Integration Accounts
+ x-codegen-request-body-name: body
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ x-unstable: |-
+ **Note**: This endpoint is in public beta.
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
/api/v2/integration-interfaces/elastic-cloud/accounts:
get:
description: List Elastic Cloud integration accounts.
@@ -223011,6 +223884,18 @@ tags:
name: Data Deletion
- description: Manage and run data observability monitors.
name: Data Observability
+ - description: |-
+ Manage your Datadog Databricks integration accounts directly through the Datadog API.
+ Create, update, and delete accounts, configure authentication and settings, and
+ enable or disable dataflows such as Data Jobs Monitoring, serverless jobs,
+ cluster logs, GPU metrics, cloud cost metrics, data observability, and model serving
+ metrics. See the
+ [Databricks integration page](https://docs.datadoghq.com/integrations/databricks/) for
+ more information.
+ externalDocs:
+ description: Databricks integration.
+ url: https://docs.datadoghq.com/integrations/databricks/
+ name: Databricks Integration Accounts
- description: |-
Data Access Controls in Datadog is a feature that allows administrators and access managers to regulate
access to sensitive data. By defining Restricted Datasets, you can ensure that only specific teams or roles can
diff --git a/examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.java b/examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.java
new file mode 100644
index 00000000000..0b50b5eaf5f
--- /dev/null
+++ b/examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.java
@@ -0,0 +1,100 @@
+// Create a Databricks integration account returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.DatabricksIntegrationAccountsApi;
+import com.datadog.api.client.v2.model.DatabricksCloudCostMetricsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksDataJobMonitoringIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksDataObservabilityIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksDataObservabilityIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountAuthenticationRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountCreateAttributes;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountCreateData;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountCreateRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountOAuthAuthRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountOAuthAuthType;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationDataflowsRequest;
+import com.datadog.api.client.v2.model.DatabricksModelServingMetricsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksServerlessJobsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.IntegrationAccountType;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.createDatabricksIntegrationAccount", true);
+ DatabricksIntegrationAccountsApi apiInstance =
+ new DatabricksIntegrationAccountsApi(defaultClient);
+
+ DatabricksIntegrationAccountCreateRequest body =
+ new DatabricksIntegrationAccountCreateRequest()
+ .data(
+ new DatabricksIntegrationAccountCreateData()
+ .attributes(
+ new DatabricksIntegrationAccountCreateAttributes()
+ .authentication(
+ new DatabricksIntegrationAccountAuthenticationRequest(
+ new DatabricksIntegrationAccountOAuthAuthRequest()
+ .authType(
+ DatabricksIntegrationAccountOAuthAuthType
+ .DATABRICKS_OAUTH)
+ .azureTenantId("4d3bac44-0230-4732-9e70-cc00736f0a97")
+ .clientId("5c10654a-b3a3-4840-b37f-f477590c70a0")
+ .clientSecret("your-client-secret")))
+ .dataflows(
+ new DatabricksIntegrationDataflowsRequest()
+ .databricksCloudCostMetrics(
+ new DatabricksCloudCostMetricsIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest()
+ .ccmCollectAllWorkspaces(true)))
+ .databricksDataJobMonitoring(
+ new DatabricksDataJobMonitoringIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest()
+ .ddApiKeyId(
+ "fe383f4e-09fc-46bf-8e10-4efdd453a646")
+ .ddApiKeySecret("your-datadog-api-key")
+ .djmGlobalInitScriptEnabled(true)
+ .scriptGpumEnabled(true)
+ .scriptLogsEnabled(true)))
+ .databricksDataObservability(
+ new DatabricksDataObservabilityIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksDataObservabilityIntegrationDataflowSettingsRequest()
+ .doCrawlersCron("0 * * * *")
+ .syncSystemCatalog(true)))
+ .databricksModelServingMetrics(
+ new DatabricksModelServingMetricsIntegrationDataflowRequest()
+ .enabled(true))
+ .databricksServerlessJobs(
+ new DatabricksServerlessJobsIntegrationDataflowRequest()
+ .enabled(true)))
+ .name("My Databricks Workspace")
+ .settings(
+ new DatabricksIntegrationAccountSettingsRequest()
+ .systemTablesSqlWarehouseId("aba7c023d4172910")
+ .workspaceUrl("https://dbc-1234abcd.cloud.databricks.com")))
+ .type(IntegrationAccountType.INTEGRATION_ACCOUNT));
+
+ try {
+ DatabricksIntegrationAccountResponse result =
+ apiInstance.createDatabricksIntegrationAccount(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " DatabricksIntegrationAccountsApi#createDatabricksIntegrationAccount");
+ 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/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.java b/examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.java
new file mode 100644
index 00000000000..3cf9edd4bfb
--- /dev/null
+++ b/examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.java
@@ -0,0 +1,26 @@
+// Delete a Databricks integration account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.DatabricksIntegrationAccountsApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.deleteDatabricksIntegrationAccount", true);
+ DatabricksIntegrationAccountsApi apiInstance =
+ new DatabricksIntegrationAccountsApi(defaultClient);
+
+ try {
+ apiInstance.deleteDatabricksIntegrationAccount("account_id");
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " DatabricksIntegrationAccountsApi#deleteDatabricksIntegrationAccount");
+ 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/databricks-integration-accounts/GetDatabricksIntegrationAccount.java b/examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.java
new file mode 100644
index 00000000000..736a9cedc2a
--- /dev/null
+++ b/examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.java
@@ -0,0 +1,29 @@
+// Get a Databricks integration account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.DatabricksIntegrationAccountsApi;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.getDatabricksIntegrationAccount", true);
+ DatabricksIntegrationAccountsApi apiInstance =
+ new DatabricksIntegrationAccountsApi(defaultClient);
+
+ try {
+ DatabricksIntegrationAccountResponse result =
+ apiInstance.getDatabricksIntegrationAccount("account_id");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " DatabricksIntegrationAccountsApi#getDatabricksIntegrationAccount");
+ 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/databricks-integration-accounts/ListDatabricksIntegrationAccounts.java b/examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.java
new file mode 100644
index 00000000000..85e2e441cea
--- /dev/null
+++ b/examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.java
@@ -0,0 +1,29 @@
+// List Databricks integration accounts returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.DatabricksIntegrationAccountsApi;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountsResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.listDatabricksIntegrationAccounts", true);
+ DatabricksIntegrationAccountsApi apiInstance =
+ new DatabricksIntegrationAccountsApi(defaultClient);
+
+ try {
+ DatabricksIntegrationAccountsResponse result =
+ apiInstance.listDatabricksIntegrationAccounts();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " DatabricksIntegrationAccountsApi#listDatabricksIntegrationAccounts");
+ 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/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.java b/examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.java
new file mode 100644
index 00000000000..d0fc29f03e1
--- /dev/null
+++ b/examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.java
@@ -0,0 +1,101 @@
+// Update a Databricks integration account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.DatabricksIntegrationAccountsApi;
+import com.datadog.api.client.v2.model.DatabricksCloudCostMetricsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksDataJobMonitoringIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksDataObservabilityIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksDataObservabilityIntegrationDataflowSettingsRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountAuthenticationUpdate;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountOAuthAuthType;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountOAuthAuthUpdate;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountSettingsUpdate;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountUpdateAttributes;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountUpdateData;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountUpdateRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationDataflowsRequest;
+import com.datadog.api.client.v2.model.DatabricksModelServingMetricsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.DatabricksServerlessJobsIntegrationDataflowRequest;
+import com.datadog.api.client.v2.model.IntegrationAccountType;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.updateDatabricksIntegrationAccount", true);
+ DatabricksIntegrationAccountsApi apiInstance =
+ new DatabricksIntegrationAccountsApi(defaultClient);
+
+ DatabricksIntegrationAccountUpdateRequest body =
+ new DatabricksIntegrationAccountUpdateRequest()
+ .data(
+ new DatabricksIntegrationAccountUpdateData()
+ .attributes(
+ new DatabricksIntegrationAccountUpdateAttributes()
+ .authentication(
+ new DatabricksIntegrationAccountAuthenticationUpdate(
+ new DatabricksIntegrationAccountOAuthAuthUpdate()
+ .authType(
+ DatabricksIntegrationAccountOAuthAuthType
+ .DATABRICKS_OAUTH)
+ .azureTenantId("4d3bac44-0230-4732-9e70-cc00736f0a97")
+ .clientId("5c10654a-b3a3-4840-b37f-f477590c70a0")
+ .clientSecret("your-client-secret")))
+ .dataflows(
+ new DatabricksIntegrationDataflowsRequest()
+ .databricksCloudCostMetrics(
+ new DatabricksCloudCostMetricsIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest()
+ .ccmCollectAllWorkspaces(true)))
+ .databricksDataJobMonitoring(
+ new DatabricksDataJobMonitoringIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest()
+ .ddApiKeyId(
+ "fe383f4e-09fc-46bf-8e10-4efdd453a646")
+ .ddApiKeySecret("your-datadog-api-key")
+ .djmGlobalInitScriptEnabled(true)
+ .scriptGpumEnabled(true)
+ .scriptLogsEnabled(true)))
+ .databricksDataObservability(
+ new DatabricksDataObservabilityIntegrationDataflowRequest()
+ .enabled(true)
+ .settings(
+ new DatabricksDataObservabilityIntegrationDataflowSettingsRequest()
+ .doCrawlersCron("0 * * * *")
+ .syncSystemCatalog(true)))
+ .databricksModelServingMetrics(
+ new DatabricksModelServingMetricsIntegrationDataflowRequest()
+ .enabled(true))
+ .databricksServerlessJobs(
+ new DatabricksServerlessJobsIntegrationDataflowRequest()
+ .enabled(true)))
+ .name("My Databricks Workspace")
+ .settings(
+ new DatabricksIntegrationAccountSettingsUpdate()
+ .systemTablesSqlWarehouseId("aba7c023d4172910")
+ .workspaceUrl("https://dbc-1234abcd.cloud.databricks.com")))
+ .id("a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f")
+ .type(IntegrationAccountType.INTEGRATION_ACCOUNT));
+
+ try {
+ DatabricksIntegrationAccountResponse result =
+ apiInstance.updateDatabricksIntegrationAccount("account_id", body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " DatabricksIntegrationAccountsApi#updateDatabricksIntegrationAccount");
+ 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 9635aa7aab5..f83dbacc894 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -1222,6 +1222,11 @@ public class ApiClient {
put("v2.updateIncidentUserDefinedField", false);
put("v2.updateIncidentUserDefinedRole", false);
put("v2.updateTimestampOverride", false);
+ put("v2.createDatabricksIntegrationAccount", false);
+ put("v2.deleteDatabricksIntegrationAccount", false);
+ put("v2.getDatabricksIntegrationAccount", false);
+ put("v2.listDatabricksIntegrationAccounts", false);
+ put("v2.updateDatabricksIntegrationAccount", false);
put("v2.createElasticCloudIntegrationAccount", false);
put("v2.deleteElasticCloudIntegrationAccount", false);
put("v2.getElasticCloudIntegrationAccount", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/DatabricksIntegrationAccountsApi.java b/src/main/java/com/datadog/api/client/v2/api/DatabricksIntegrationAccountsApi.java
new file mode 100644
index 00000000000..415d3e04e50
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/DatabricksIntegrationAccountsApi.java
@@ -0,0 +1,849 @@
+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.DatabricksIntegrationAccountCreateRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountUpdateRequest;
+import com.datadog.api.client.v2.model.DatabricksIntegrationAccountsResponse;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.core.GenericType;
+import java.util.ArrayList;
+import java.util.HashMap;
+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 DatabricksIntegrationAccountsApi {
+ private ApiClient apiClient;
+
+ public DatabricksIntegrationAccountsApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public DatabricksIntegrationAccountsApi(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 a Databricks integration account.
+ *
+ *
See {@link #createDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return DatabricksIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public DatabricksIntegrationAccountResponse createDatabricksIntegrationAccount(
+ DatabricksIntegrationAccountCreateRequest body) throws ApiException {
+ return createDatabricksIntegrationAccountWithHttpInfo(body).getData();
+ }
+
+ /**
+ * Create a Databricks integration account.
+ *
+ *
See {@link #createDatabricksIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<DatabricksIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ createDatabricksIntegrationAccountAsync(DatabricksIntegrationAccountCreateRequest body) {
+ return createDatabricksIntegrationAccountWithHttpInfoAsync(body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create a Databricks integration account.
+ *
+ * @param body (required)
+ * @return ApiResponse<DatabricksIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 422 | The server cannot process the request because it contains invalid data. | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ createDatabricksIntegrationAccountWithHttpInfo(DatabricksIntegrationAccountCreateRequest body)
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "createDatabricksIntegrationAccount";
+ 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 createDatabricksIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/databricks/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.createDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #createDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<DatabricksIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ createDatabricksIntegrationAccountWithHttpInfoAsync(
+ DatabricksIntegrationAccountCreateRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "createDatabricksIntegrationAccount";
+ 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"
+ + " createDatabricksIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/databricks/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.createDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #deleteDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteDatabricksIntegrationAccount(String accountId) throws ApiException {
+ deleteDatabricksIntegrationAccountWithHttpInfo(accountId);
+ }
+
+ /**
+ * Delete a Databricks integration account.
+ *
+ *
See {@link #deleteDatabricksIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteDatabricksIntegrationAccountAsync(String accountId) {
+ return deleteDatabricksIntegrationAccountWithHttpInfoAsync(accountId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Delete a Databricks integration account.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteDatabricksIntegrationAccountWithHttpInfo(String accountId)
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "deleteDatabricksIntegrationAccount";
+ 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;
+
+ // verify the required parameter 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " deleteDatabricksIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.deleteDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #deleteDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture> deleteDatabricksIntegrationAccountWithHttpInfoAsync(
+ String accountId) {
+ // Check if unstable operation is enabled
+ String operationId = "deleteDatabricksIntegrationAccount";
+ 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;
+
+ // verify the required parameter 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " deleteDatabricksIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.deleteDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #getDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return DatabricksIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public DatabricksIntegrationAccountResponse getDatabricksIntegrationAccount(String accountId)
+ throws ApiException {
+ return getDatabricksIntegrationAccountWithHttpInfo(accountId).getData();
+ }
+
+ /**
+ * Get a Databricks integration account.
+ *
+ *
See {@link #getDatabricksIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture<DatabricksIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ getDatabricksIntegrationAccountAsync(String accountId) {
+ return getDatabricksIntegrationAccountWithHttpInfoAsync(accountId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get a Databricks integration account.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return ApiResponse<DatabricksIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ getDatabricksIntegrationAccountWithHttpInfo(String accountId) throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "getDatabricksIntegrationAccount";
+ 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;
+
+ // verify the required parameter 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " getDatabricksIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.getDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #getDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture<ApiResponse<DatabricksIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ getDatabricksIntegrationAccountWithHttpInfoAsync(String accountId) {
+ // Check if unstable operation is enabled
+ String operationId = "getDatabricksIntegrationAccount";
+ 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;
+
+ // verify the required parameter 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " getDatabricksIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.getDatabricksIntegrationAccount",
+ 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 Databricks integration accounts.
+ *
+ * See {@link #listDatabricksIntegrationAccountsWithHttpInfo}.
+ *
+ * @return DatabricksIntegrationAccountsResponse
+ * @throws ApiException if fails to make API call
+ */
+ public DatabricksIntegrationAccountsResponse listDatabricksIntegrationAccounts()
+ throws ApiException {
+ return listDatabricksIntegrationAccountsWithHttpInfo().getData();
+ }
+
+ /**
+ * List Databricks integration accounts.
+ *
+ *
See {@link #listDatabricksIntegrationAccountsWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<DatabricksIntegrationAccountsResponse>
+ */
+ public CompletableFuture
+ listDatabricksIntegrationAccountsAsync() {
+ return listDatabricksIntegrationAccountsWithHttpInfoAsync()
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * List Databricks integration accounts.
+ *
+ * @return ApiResponse<DatabricksIntegrationAccountsResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ listDatabricksIntegrationAccountsWithHttpInfo() throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "listDatabricksIntegrationAccounts";
+ 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-interfaces/databricks/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.listDatabricksIntegrationAccounts",
+ 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() {});
+ }
+
+ /**
+ * List Databricks integration accounts.
+ *
+ * See {@link #listDatabricksIntegrationAccountsWithHttpInfo}.
+ *
+ * @return CompletableFuture<ApiResponse<DatabricksIntegrationAccountsResponse>>
+ */
+ public CompletableFuture>
+ listDatabricksIntegrationAccountsWithHttpInfoAsync() {
+ // Check if unstable operation is enabled
+ String operationId = "listDatabricksIntegrationAccounts";
+ 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-interfaces/databricks/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.listDatabricksIntegrationAccounts",
+ 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() {});
+ }
+
+ /**
+ * Update a Databricks integration account.
+ *
+ * See {@link #updateDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return DatabricksIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public DatabricksIntegrationAccountResponse updateDatabricksIntegrationAccount(
+ String accountId, DatabricksIntegrationAccountUpdateRequest body) throws ApiException {
+ return updateDatabricksIntegrationAccountWithHttpInfo(accountId, body).getData();
+ }
+
+ /**
+ * Update a Databricks integration account.
+ *
+ *
See {@link #updateDatabricksIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return CompletableFuture<DatabricksIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ updateDatabricksIntegrationAccountAsync(
+ String accountId, DatabricksIntegrationAccountUpdateRequest body) {
+ return updateDatabricksIntegrationAccountWithHttpInfoAsync(accountId, body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Update a Databricks integration account. Only the fields provided are changed.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return ApiResponse<DatabricksIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 422 | The server cannot process the request because it contains invalid data. | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ updateDatabricksIntegrationAccountWithHttpInfo(
+ String accountId, DatabricksIntegrationAccountUpdateRequest body) throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "updateDatabricksIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " updateDatabricksIntegrationAccount");
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'body' when calling updateDatabricksIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.updateDatabricksIntegrationAccount",
+ 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 a Databricks integration account.
+ *
+ * See {@link #updateDatabricksIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<DatabricksIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ updateDatabricksIntegrationAccountWithHttpInfoAsync(
+ String accountId, DatabricksIntegrationAccountUpdateRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "updateDatabricksIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " updateDatabricksIntegrationAccount"));
+ 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"
+ + " updateDatabricksIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/databricks/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.DatabricksIntegrationAccountsApi.updateDatabricksIntegrationAccount",
+ 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/DatabricksCloudCostMetricsIntegrationDataflowRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowRequest.java
new file mode 100644
index 00000000000..683fb11db8a
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowRequest.java
@@ -0,0 +1,178 @@
+/*
+ * 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;
+
+/** The Databricks cloud cost metrics dataflow. */
+@JsonPropertyOrder({
+ DatabricksCloudCostMetricsIntegrationDataflowRequest.JSON_PROPERTY_ENABLED,
+ DatabricksCloudCostMetricsIntegrationDataflowRequest.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksCloudCostMetricsIntegrationDataflowRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest settings;
+
+ public DatabricksCloudCostMetricsIntegrationDataflowRequest enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksCloudCostMetricsIntegrationDataflowRequest settings(
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks cloud cost metrics dataflow. Only the fields provided are changed.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksCloudCostMetricsIntegrationDataflowRequest
+ */
+ @JsonAnySetter
+ public DatabricksCloudCostMetricsIntegrationDataflowRequest 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 DatabricksCloudCostMetricsIntegrationDataflowRequest object is equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksCloudCostMetricsIntegrationDataflowRequest
+ databricksCloudCostMetricsIntegrationDataflowRequest =
+ (DatabricksCloudCostMetricsIntegrationDataflowRequest) o;
+ return Objects.equals(
+ this.enabled, databricksCloudCostMetricsIntegrationDataflowRequest.enabled)
+ && Objects.equals(
+ this.settings, databricksCloudCostMetricsIntegrationDataflowRequest.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksCloudCostMetricsIntegrationDataflowRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksCloudCostMetricsIntegrationDataflowRequest {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksCloudCostMetricsIntegrationDataflowResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowResponse.java
new file mode 100644
index 00000000000..acfa3f77b1f
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowResponse.java
@@ -0,0 +1,178 @@
+/*
+ * 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;
+
+/** The Databricks cloud cost metrics dataflow. */
+@JsonPropertyOrder({
+ DatabricksCloudCostMetricsIntegrationDataflowResponse.JSON_PROPERTY_ENABLED,
+ DatabricksCloudCostMetricsIntegrationDataflowResponse.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksCloudCostMetricsIntegrationDataflowResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse settings;
+
+ public DatabricksCloudCostMetricsIntegrationDataflowResponse enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksCloudCostMetricsIntegrationDataflowResponse settings(
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks cloud cost metrics dataflow.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksCloudCostMetricsIntegrationDataflowResponse
+ */
+ @JsonAnySetter
+ public DatabricksCloudCostMetricsIntegrationDataflowResponse 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 DatabricksCloudCostMetricsIntegrationDataflowResponse object is equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksCloudCostMetricsIntegrationDataflowResponse
+ databricksCloudCostMetricsIntegrationDataflowResponse =
+ (DatabricksCloudCostMetricsIntegrationDataflowResponse) o;
+ return Objects.equals(
+ this.enabled, databricksCloudCostMetricsIntegrationDataflowResponse.enabled)
+ && Objects.equals(
+ this.settings, databricksCloudCostMetricsIntegrationDataflowResponse.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksCloudCostMetricsIntegrationDataflowResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksCloudCostMetricsIntegrationDataflowResponse {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.java
new file mode 100644
index 00000000000..bc66cb817a0
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.java
@@ -0,0 +1,96 @@
+/*
+ * 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.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.Objects;
+
+/** Settings of the Databricks cloud cost metrics dataflow. Only the fields provided are changed. */
+@JsonPropertyOrder({
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest
+ .JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES =
+ "ccm_collect_all_workspaces";
+ private Boolean ccmCollectAllWorkspaces;
+
+ public DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest ccmCollectAllWorkspaces(
+ Boolean ccmCollectAllWorkspaces) {
+ this.ccmCollectAllWorkspaces = ccmCollectAllWorkspaces;
+ return this;
+ }
+
+ /**
+ * Whether cost data is collected for every workspace in the Databricks account rather than this
+ * workspace only.
+ *
+ * @return ccmCollectAllWorkspaces
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getCcmCollectAllWorkspaces() {
+ return ccmCollectAllWorkspaces;
+ }
+
+ public void setCcmCollectAllWorkspaces(Boolean ccmCollectAllWorkspaces) {
+ this.ccmCollectAllWorkspaces = ccmCollectAllWorkspaces;
+ }
+
+ /**
+ * Return true if this DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest
+ databricksCloudCostMetricsIntegrationDataflowSettingsRequest =
+ (DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest) o;
+ return Objects.equals(
+ this.ccmCollectAllWorkspaces,
+ databricksCloudCostMetricsIntegrationDataflowSettingsRequest.ccmCollectAllWorkspaces);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(ccmCollectAllWorkspaces);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest {\n");
+ sb.append(" ccmCollectAllWorkspaces: ")
+ .append(toIndentedString(ccmCollectAllWorkspaces))
+ .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/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.java
new file mode 100644
index 00000000000..ef6c9e7d093
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.java
@@ -0,0 +1,153 @@
+/*
+ * 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;
+
+/** Settings of the Databricks cloud cost metrics dataflow. */
+@JsonPropertyOrder({
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse
+ .JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES =
+ "ccm_collect_all_workspaces";
+ private Boolean ccmCollectAllWorkspaces;
+
+ public DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse ccmCollectAllWorkspaces(
+ Boolean ccmCollectAllWorkspaces) {
+ this.ccmCollectAllWorkspaces = ccmCollectAllWorkspaces;
+ return this;
+ }
+
+ /**
+ * Whether cost data is collected for every workspace in the Databricks account rather than this
+ * workspace only.
+ *
+ * @return ccmCollectAllWorkspaces
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_CCM_COLLECT_ALL_WORKSPACES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getCcmCollectAllWorkspaces() {
+ return ccmCollectAllWorkspaces;
+ }
+
+ public void setCcmCollectAllWorkspaces(Boolean ccmCollectAllWorkspaces) {
+ this.ccmCollectAllWorkspaces = ccmCollectAllWorkspaces;
+ }
+
+ /**
+ * 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 DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse
+ */
+ @JsonAnySetter
+ public DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse 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 DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse
+ databricksCloudCostMetricsIntegrationDataflowSettingsResponse =
+ (DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse) o;
+ return Objects.equals(
+ this.ccmCollectAllWorkspaces,
+ databricksCloudCostMetricsIntegrationDataflowSettingsResponse.ccmCollectAllWorkspaces)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksCloudCostMetricsIntegrationDataflowSettingsResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(ccmCollectAllWorkspaces, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse {\n");
+ sb.append(" ccmCollectAllWorkspaces: ")
+ .append(toIndentedString(ccmCollectAllWorkspaces))
+ .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/DatabricksDataJobMonitoringIntegrationDataflowRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowRequest.java
new file mode 100644
index 00000000000..9602d1f7020
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowRequest.java
@@ -0,0 +1,178 @@
+/*
+ * 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;
+
+/** The Databricks Data Jobs Monitoring dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataJobMonitoringIntegrationDataflowRequest.JSON_PROPERTY_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowRequest.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataJobMonitoringIntegrationDataflowRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest settings;
+
+ public DatabricksDataJobMonitoringIntegrationDataflowRequest enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksDataJobMonitoringIntegrationDataflowRequest settings(
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks Data Jobs Monitoring dataflow. Only the fields provided are changed.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksDataJobMonitoringIntegrationDataflowRequest
+ */
+ @JsonAnySetter
+ public DatabricksDataJobMonitoringIntegrationDataflowRequest 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 DatabricksDataJobMonitoringIntegrationDataflowRequest object is equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataJobMonitoringIntegrationDataflowRequest
+ databricksDataJobMonitoringIntegrationDataflowRequest =
+ (DatabricksDataJobMonitoringIntegrationDataflowRequest) o;
+ return Objects.equals(
+ this.enabled, databricksDataJobMonitoringIntegrationDataflowRequest.enabled)
+ && Objects.equals(
+ this.settings, databricksDataJobMonitoringIntegrationDataflowRequest.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataJobMonitoringIntegrationDataflowRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataJobMonitoringIntegrationDataflowRequest {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksDataJobMonitoringIntegrationDataflowResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowResponse.java
new file mode 100644
index 00000000000..46b4f6cf516
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowResponse.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.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;
+
+/** The Databricks Data Jobs Monitoring dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataJobMonitoringIntegrationDataflowResponse.JSON_PROPERTY_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowResponse.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataJobMonitoringIntegrationDataflowResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse settings;
+
+ public DatabricksDataJobMonitoringIntegrationDataflowResponse enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksDataJobMonitoringIntegrationDataflowResponse settings(
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks Data Jobs Monitoring dataflow.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksDataJobMonitoringIntegrationDataflowResponse
+ */
+ @JsonAnySetter
+ public DatabricksDataJobMonitoringIntegrationDataflowResponse 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 DatabricksDataJobMonitoringIntegrationDataflowResponse object is equal to
+ * o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataJobMonitoringIntegrationDataflowResponse
+ databricksDataJobMonitoringIntegrationDataflowResponse =
+ (DatabricksDataJobMonitoringIntegrationDataflowResponse) o;
+ return Objects.equals(
+ this.enabled, databricksDataJobMonitoringIntegrationDataflowResponse.enabled)
+ && Objects.equals(
+ this.settings, databricksDataJobMonitoringIntegrationDataflowResponse.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataJobMonitoringIntegrationDataflowResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataJobMonitoringIntegrationDataflowResponse {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.java
new file mode 100644
index 00000000000..29e6d01739f
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.java
@@ -0,0 +1,229 @@
+/*
+ * 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.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.Objects;
+
+/**
+ * Settings of the Databricks Data Jobs Monitoring dataflow. Only the fields provided are changed.
+ */
+@JsonPropertyOrder({
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.JSON_PROPERTY_DD_API_KEY_ID,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.JSON_PROPERTY_DD_API_KEY_SECRET,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest
+ .JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.JSON_PROPERTY_SCRIPT_GPUM_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest.JSON_PROPERTY_SCRIPT_LOGS_ENABLED
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DD_API_KEY_ID = "dd_api_key_id";
+ private String ddApiKeyId;
+
+ public static final String JSON_PROPERTY_DD_API_KEY_SECRET = "dd_api_key_secret";
+ private String ddApiKeySecret;
+
+ public static final String JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED =
+ "djm_global_init_script_enabled";
+ private Boolean djmGlobalInitScriptEnabled;
+
+ public static final String JSON_PROPERTY_SCRIPT_GPUM_ENABLED = "script_gpum_enabled";
+ private Boolean scriptGpumEnabled;
+
+ public static final String JSON_PROPERTY_SCRIPT_LOGS_ENABLED = "script_logs_enabled";
+ private Boolean scriptLogsEnabled;
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest ddApiKeyId(
+ String ddApiKeyId) {
+ this.ddApiKeyId = ddApiKeyId;
+ return this;
+ }
+
+ /**
+ * ID of the Datadog API key the global init script uses to submit data. Setting or changing it
+ * requires dd_api_key_secret in the same request.
+ *
+ * @return ddApiKeyId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_API_KEY_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdApiKeyId() {
+ return ddApiKeyId;
+ }
+
+ public void setDdApiKeyId(String ddApiKeyId) {
+ this.ddApiKeyId = ddApiKeyId;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest ddApiKeySecret(
+ String ddApiKeySecret) {
+ this.ddApiKeySecret = ddApiKeySecret;
+ return this;
+ }
+
+ /**
+ * Secret value of the Datadog API key identified by dd_api_key_id.
+ *
+ * @return ddApiKeySecret
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_API_KEY_SECRET)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdApiKeySecret() {
+ return ddApiKeySecret;
+ }
+
+ public void setDdApiKeySecret(String ddApiKeySecret) {
+ this.ddApiKeySecret = ddApiKeySecret;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest djmGlobalInitScriptEnabled(
+ Boolean djmGlobalInitScriptEnabled) {
+ this.djmGlobalInitScriptEnabled = djmGlobalInitScriptEnabled;
+ return this;
+ }
+
+ /**
+ * Whether Datadog manages the global init script that installs the Agent on your Databricks
+ * clusters.
+ *
+ * @return djmGlobalInitScriptEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getDjmGlobalInitScriptEnabled() {
+ return djmGlobalInitScriptEnabled;
+ }
+
+ public void setDjmGlobalInitScriptEnabled(Boolean djmGlobalInitScriptEnabled) {
+ this.djmGlobalInitScriptEnabled = djmGlobalInitScriptEnabled;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest scriptGpumEnabled(
+ Boolean scriptGpumEnabled) {
+ this.scriptGpumEnabled = scriptGpumEnabled;
+ return this;
+ }
+
+ /**
+ * Whether GPU metrics are collected from your Databricks clusters. The Agent installed by the
+ * global init script performs the collection, so this requires the dataflow to be enabled with
+ * djm_global_init_script_enabled set to true.
+ *
+ * @return scriptGpumEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SCRIPT_GPUM_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getScriptGpumEnabled() {
+ return scriptGpumEnabled;
+ }
+
+ public void setScriptGpumEnabled(Boolean scriptGpumEnabled) {
+ this.scriptGpumEnabled = scriptGpumEnabled;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest scriptLogsEnabled(
+ Boolean scriptLogsEnabled) {
+ this.scriptLogsEnabled = scriptLogsEnabled;
+ return this;
+ }
+
+ /**
+ * Whether logs are collected from your Databricks clusters. The Agent installed by the global
+ * init script performs the collection, so this requires the dataflow to be enabled with
+ * djm_global_init_script_enabled set to true.
+ *
+ * @return scriptLogsEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SCRIPT_LOGS_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getScriptLogsEnabled() {
+ return scriptLogsEnabled;
+ }
+
+ public void setScriptLogsEnabled(Boolean scriptLogsEnabled) {
+ this.scriptLogsEnabled = scriptLogsEnabled;
+ }
+
+ /**
+ * Return true if this DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest =
+ (DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest) o;
+ return Objects.equals(
+ this.ddApiKeyId,
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest.ddApiKeyId)
+ && Objects.equals(
+ this.ddApiKeySecret,
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest.ddApiKeySecret)
+ && Objects.equals(
+ this.djmGlobalInitScriptEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest
+ .djmGlobalInitScriptEnabled)
+ && Objects.equals(
+ this.scriptGpumEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest.scriptGpumEnabled)
+ && Objects.equals(
+ this.scriptLogsEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsRequest.scriptLogsEnabled);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ ddApiKeyId,
+ ddApiKeySecret,
+ djmGlobalInitScriptEnabled,
+ scriptGpumEnabled,
+ scriptLogsEnabled);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataJobMonitoringIntegrationDataflowSettingsRequest {\n");
+ sb.append(" ddApiKeyId: ").append(toIndentedString(ddApiKeyId)).append("\n");
+ sb.append(" ddApiKeySecret: ").append(toIndentedString(ddApiKeySecret)).append("\n");
+ sb.append(" djmGlobalInitScriptEnabled: ")
+ .append(toIndentedString(djmGlobalInitScriptEnabled))
+ .append("\n");
+ sb.append(" scriptGpumEnabled: ").append(toIndentedString(scriptGpumEnabled)).append("\n");
+ sb.append(" scriptLogsEnabled: ").append(toIndentedString(scriptLogsEnabled)).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/DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.java
new file mode 100644
index 00000000000..0f41a506f7a
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.java
@@ -0,0 +1,253 @@
+/*
+ * 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;
+
+/** Settings of the Databricks Data Jobs Monitoring dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.JSON_PROPERTY_DD_API_KEY_ID,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse
+ .JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.JSON_PROPERTY_SCRIPT_GPUM_ENABLED,
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse.JSON_PROPERTY_SCRIPT_LOGS_ENABLED
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DD_API_KEY_ID = "dd_api_key_id";
+ private String ddApiKeyId;
+
+ public static final String JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED =
+ "djm_global_init_script_enabled";
+ private Boolean djmGlobalInitScriptEnabled;
+
+ public static final String JSON_PROPERTY_SCRIPT_GPUM_ENABLED = "script_gpum_enabled";
+ private Boolean scriptGpumEnabled;
+
+ public static final String JSON_PROPERTY_SCRIPT_LOGS_ENABLED = "script_logs_enabled";
+ private Boolean scriptLogsEnabled;
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse ddApiKeyId(
+ String ddApiKeyId) {
+ this.ddApiKeyId = ddApiKeyId;
+ return this;
+ }
+
+ /**
+ * ID of the Datadog API key the global init script uses to submit data.
+ *
+ * @return ddApiKeyId
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DD_API_KEY_ID)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDdApiKeyId() {
+ return ddApiKeyId;
+ }
+
+ public void setDdApiKeyId(String ddApiKeyId) {
+ this.ddApiKeyId = ddApiKeyId;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse djmGlobalInitScriptEnabled(
+ Boolean djmGlobalInitScriptEnabled) {
+ this.djmGlobalInitScriptEnabled = djmGlobalInitScriptEnabled;
+ return this;
+ }
+
+ /**
+ * Whether Datadog manages the global init script that installs the Agent on your Databricks
+ * clusters.
+ *
+ * @return djmGlobalInitScriptEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DJM_GLOBAL_INIT_SCRIPT_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getDjmGlobalInitScriptEnabled() {
+ return djmGlobalInitScriptEnabled;
+ }
+
+ public void setDjmGlobalInitScriptEnabled(Boolean djmGlobalInitScriptEnabled) {
+ this.djmGlobalInitScriptEnabled = djmGlobalInitScriptEnabled;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse scriptGpumEnabled(
+ Boolean scriptGpumEnabled) {
+ this.scriptGpumEnabled = scriptGpumEnabled;
+ return this;
+ }
+
+ /**
+ * Whether GPU metrics are collected from your Databricks clusters. The Agent installed by the
+ * global init script performs the collection, so this requires the dataflow to be enabled with
+ * djm_global_init_script_enabled set to true.
+ *
+ * @return scriptGpumEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SCRIPT_GPUM_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getScriptGpumEnabled() {
+ return scriptGpumEnabled;
+ }
+
+ public void setScriptGpumEnabled(Boolean scriptGpumEnabled) {
+ this.scriptGpumEnabled = scriptGpumEnabled;
+ }
+
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse scriptLogsEnabled(
+ Boolean scriptLogsEnabled) {
+ this.scriptLogsEnabled = scriptLogsEnabled;
+ return this;
+ }
+
+ /**
+ * Whether logs are collected from your Databricks clusters. The Agent installed by the global
+ * init script performs the collection, so this requires the dataflow to be enabled with
+ * djm_global_init_script_enabled set to true.
+ *
+ * @return scriptLogsEnabled
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SCRIPT_LOGS_ENABLED)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getScriptLogsEnabled() {
+ return scriptLogsEnabled;
+ }
+
+ public void setScriptLogsEnabled(Boolean scriptLogsEnabled) {
+ this.scriptLogsEnabled = scriptLogsEnabled;
+ }
+
+ /**
+ * 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 DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse
+ */
+ @JsonAnySetter
+ public DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse 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 DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse =
+ (DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse) o;
+ return Objects.equals(
+ this.ddApiKeyId,
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse.ddApiKeyId)
+ && Objects.equals(
+ this.djmGlobalInitScriptEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse
+ .djmGlobalInitScriptEnabled)
+ && Objects.equals(
+ this.scriptGpumEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse.scriptGpumEnabled)
+ && Objects.equals(
+ this.scriptLogsEnabled,
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse.scriptLogsEnabled)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataJobMonitoringIntegrationDataflowSettingsResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ ddApiKeyId,
+ djmGlobalInitScriptEnabled,
+ scriptGpumEnabled,
+ scriptLogsEnabled,
+ additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataJobMonitoringIntegrationDataflowSettingsResponse {\n");
+ sb.append(" ddApiKeyId: ").append(toIndentedString(ddApiKeyId)).append("\n");
+ sb.append(" djmGlobalInitScriptEnabled: ")
+ .append(toIndentedString(djmGlobalInitScriptEnabled))
+ .append("\n");
+ sb.append(" scriptGpumEnabled: ").append(toIndentedString(scriptGpumEnabled)).append("\n");
+ sb.append(" scriptLogsEnabled: ").append(toIndentedString(scriptLogsEnabled)).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/DatabricksDataObservabilityIntegrationDataflowRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowRequest.java
new file mode 100644
index 00000000000..b27b125a39c
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowRequest.java
@@ -0,0 +1,178 @@
+/*
+ * 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;
+
+/** The Databricks data observability dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataObservabilityIntegrationDataflowRequest.JSON_PROPERTY_ENABLED,
+ DatabricksDataObservabilityIntegrationDataflowRequest.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataObservabilityIntegrationDataflowRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksDataObservabilityIntegrationDataflowSettingsRequest settings;
+
+ public DatabricksDataObservabilityIntegrationDataflowRequest enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksDataObservabilityIntegrationDataflowRequest settings(
+ DatabricksDataObservabilityIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks data observability dataflow. Only the fields provided are changed.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksDataObservabilityIntegrationDataflowSettingsRequest getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksDataObservabilityIntegrationDataflowSettingsRequest settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksDataObservabilityIntegrationDataflowRequest
+ */
+ @JsonAnySetter
+ public DatabricksDataObservabilityIntegrationDataflowRequest 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 DatabricksDataObservabilityIntegrationDataflowRequest object is equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataObservabilityIntegrationDataflowRequest
+ databricksDataObservabilityIntegrationDataflowRequest =
+ (DatabricksDataObservabilityIntegrationDataflowRequest) o;
+ return Objects.equals(
+ this.enabled, databricksDataObservabilityIntegrationDataflowRequest.enabled)
+ && Objects.equals(
+ this.settings, databricksDataObservabilityIntegrationDataflowRequest.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataObservabilityIntegrationDataflowRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataObservabilityIntegrationDataflowRequest {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksDataObservabilityIntegrationDataflowResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowResponse.java
new file mode 100644
index 00000000000..7c0217a0f4c
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowResponse.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.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;
+
+/** The Databricks data observability dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataObservabilityIntegrationDataflowResponse.JSON_PROPERTY_ENABLED,
+ DatabricksDataObservabilityIntegrationDataflowResponse.JSON_PROPERTY_SETTINGS
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataObservabilityIntegrationDataflowResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ENABLED = "enabled";
+ private Boolean enabled;
+
+ public static final String JSON_PROPERTY_SETTINGS = "settings";
+ private DatabricksDataObservabilityIntegrationDataflowSettingsResponse settings;
+
+ public DatabricksDataObservabilityIntegrationDataflowResponse enabled(Boolean enabled) {
+ this.enabled = enabled;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks dataflow is enabled.
+ *
+ * @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 DatabricksDataObservabilityIntegrationDataflowResponse settings(
+ DatabricksDataObservabilityIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ this.unparsed |= settings.unparsed;
+ return this;
+ }
+
+ /**
+ * Settings of the Databricks data observability dataflow.
+ *
+ * @return settings
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SETTINGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public DatabricksDataObservabilityIntegrationDataflowSettingsResponse getSettings() {
+ return settings;
+ }
+
+ public void setSettings(DatabricksDataObservabilityIntegrationDataflowSettingsResponse settings) {
+ this.settings = settings;
+ if (settings != null) {
+ this.unparsed |= settings.unparsed;
+ }
+ }
+
+ /**
+ * 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 DatabricksDataObservabilityIntegrationDataflowResponse
+ */
+ @JsonAnySetter
+ public DatabricksDataObservabilityIntegrationDataflowResponse 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 DatabricksDataObservabilityIntegrationDataflowResponse object is equal to
+ * o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataObservabilityIntegrationDataflowResponse
+ databricksDataObservabilityIntegrationDataflowResponse =
+ (DatabricksDataObservabilityIntegrationDataflowResponse) o;
+ return Objects.equals(
+ this.enabled, databricksDataObservabilityIntegrationDataflowResponse.enabled)
+ && Objects.equals(
+ this.settings, databricksDataObservabilityIntegrationDataflowResponse.settings)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataObservabilityIntegrationDataflowResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(enabled, settings, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataObservabilityIntegrationDataflowResponse {\n");
+ sb.append(" enabled: ").append(toIndentedString(enabled)).append("\n");
+ sb.append(" settings: ").append(toIndentedString(settings)).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/DatabricksDataObservabilityIntegrationDataflowSettingsRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowSettingsRequest.java
new file mode 100644
index 00000000000..4fe2002fda3
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowSettingsRequest.java
@@ -0,0 +1,122 @@
+/*
+ * 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.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.Objects;
+
+/** Settings of the Databricks data observability dataflow. Only the fields provided are changed. */
+@JsonPropertyOrder({
+ DatabricksDataObservabilityIntegrationDataflowSettingsRequest.JSON_PROPERTY_DO_CRAWLERS_CRON,
+ DatabricksDataObservabilityIntegrationDataflowSettingsRequest.JSON_PROPERTY_SYNC_SYSTEM_CATALOG
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataObservabilityIntegrationDataflowSettingsRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DO_CRAWLERS_CRON = "do_crawlers_cron";
+ private String doCrawlersCron;
+
+ public static final String JSON_PROPERTY_SYNC_SYSTEM_CATALOG = "sync_system_catalog";
+ private Boolean syncSystemCatalog;
+
+ public DatabricksDataObservabilityIntegrationDataflowSettingsRequest doCrawlersCron(
+ String doCrawlersCron) {
+ this.doCrawlersCron = doCrawlersCron;
+ return this;
+ }
+
+ /**
+ * Cron expression setting how often the data observability crawlers run.
+ *
+ * @return doCrawlersCron
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DO_CRAWLERS_CRON)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDoCrawlersCron() {
+ return doCrawlersCron;
+ }
+
+ public void setDoCrawlersCron(String doCrawlersCron) {
+ this.doCrawlersCron = doCrawlersCron;
+ }
+
+ public DatabricksDataObservabilityIntegrationDataflowSettingsRequest syncSystemCatalog(
+ Boolean syncSystemCatalog) {
+ this.syncSystemCatalog = syncSystemCatalog;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks system catalog is synchronized alongside your data
+ * catalogs.
+ *
+ * @return syncSystemCatalog
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SYNC_SYSTEM_CATALOG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getSyncSystemCatalog() {
+ return syncSystemCatalog;
+ }
+
+ public void setSyncSystemCatalog(Boolean syncSystemCatalog) {
+ this.syncSystemCatalog = syncSystemCatalog;
+ }
+
+ /**
+ * Return true if this DatabricksDataObservabilityIntegrationDataflowSettingsRequest object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataObservabilityIntegrationDataflowSettingsRequest
+ databricksDataObservabilityIntegrationDataflowSettingsRequest =
+ (DatabricksDataObservabilityIntegrationDataflowSettingsRequest) o;
+ return Objects.equals(
+ this.doCrawlersCron,
+ databricksDataObservabilityIntegrationDataflowSettingsRequest.doCrawlersCron)
+ && Objects.equals(
+ this.syncSystemCatalog,
+ databricksDataObservabilityIntegrationDataflowSettingsRequest.syncSystemCatalog);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(doCrawlersCron, syncSystemCatalog);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataObservabilityIntegrationDataflowSettingsRequest {\n");
+ sb.append(" doCrawlersCron: ").append(toIndentedString(doCrawlersCron)).append("\n");
+ sb.append(" syncSystemCatalog: ").append(toIndentedString(syncSystemCatalog)).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/DatabricksDataObservabilityIntegrationDataflowSettingsResponse.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowSettingsResponse.java
new file mode 100644
index 00000000000..9e5de0cb9e1
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksDataObservabilityIntegrationDataflowSettingsResponse.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.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;
+
+/** Settings of the Databricks data observability dataflow. */
+@JsonPropertyOrder({
+ DatabricksDataObservabilityIntegrationDataflowSettingsResponse.JSON_PROPERTY_DO_CRAWLERS_CRON,
+ DatabricksDataObservabilityIntegrationDataflowSettingsResponse.JSON_PROPERTY_SYNC_SYSTEM_CATALOG
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class DatabricksDataObservabilityIntegrationDataflowSettingsResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DO_CRAWLERS_CRON = "do_crawlers_cron";
+ private String doCrawlersCron;
+
+ public static final String JSON_PROPERTY_SYNC_SYSTEM_CATALOG = "sync_system_catalog";
+ private Boolean syncSystemCatalog;
+
+ public DatabricksDataObservabilityIntegrationDataflowSettingsResponse doCrawlersCron(
+ String doCrawlersCron) {
+ this.doCrawlersCron = doCrawlersCron;
+ return this;
+ }
+
+ /**
+ * Cron expression setting how often the data observability crawlers run.
+ *
+ * @return doCrawlersCron
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DO_CRAWLERS_CRON)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDoCrawlersCron() {
+ return doCrawlersCron;
+ }
+
+ public void setDoCrawlersCron(String doCrawlersCron) {
+ this.doCrawlersCron = doCrawlersCron;
+ }
+
+ public DatabricksDataObservabilityIntegrationDataflowSettingsResponse syncSystemCatalog(
+ Boolean syncSystemCatalog) {
+ this.syncSystemCatalog = syncSystemCatalog;
+ return this;
+ }
+
+ /**
+ * Whether the Databricks system catalog is synchronized alongside your data
+ * catalogs.
+ *
+ * @return syncSystemCatalog
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_SYNC_SYSTEM_CATALOG)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Boolean getSyncSystemCatalog() {
+ return syncSystemCatalog;
+ }
+
+ public void setSyncSystemCatalog(Boolean syncSystemCatalog) {
+ this.syncSystemCatalog = syncSystemCatalog;
+ }
+
+ /**
+ * 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 DatabricksDataObservabilityIntegrationDataflowSettingsResponse
+ */
+ @JsonAnySetter
+ public DatabricksDataObservabilityIntegrationDataflowSettingsResponse 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 DatabricksDataObservabilityIntegrationDataflowSettingsResponse object is
+ * equal to o.
+ */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ DatabricksDataObservabilityIntegrationDataflowSettingsResponse
+ databricksDataObservabilityIntegrationDataflowSettingsResponse =
+ (DatabricksDataObservabilityIntegrationDataflowSettingsResponse) o;
+ return Objects.equals(
+ this.doCrawlersCron,
+ databricksDataObservabilityIntegrationDataflowSettingsResponse.doCrawlersCron)
+ && Objects.equals(
+ this.syncSystemCatalog,
+ databricksDataObservabilityIntegrationDataflowSettingsResponse.syncSystemCatalog)
+ && Objects.equals(
+ this.additionalProperties,
+ databricksDataObservabilityIntegrationDataflowSettingsResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(doCrawlersCron, syncSystemCatalog, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class DatabricksDataObservabilityIntegrationDataflowSettingsResponse {\n");
+ sb.append(" doCrawlersCron: ").append(toIndentedString(doCrawlersCron)).append("\n");
+ sb.append(" syncSystemCatalog: ").append(toIndentedString(syncSystemCatalog)).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/DatabricksIntegrationAccountAuthenticationRequest.java b/src/main/java/com/datadog/api/client/v2/model/DatabricksIntegrationAccountAuthenticationRequest.java
new file mode 100644
index 00000000000..2a599373480
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/DatabricksIntegrationAccountAuthenticationRequest.java
@@ -0,0 +1,330 @@
+/*
+ * 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.AbstractOpenApiSchema;
+import com.datadog.api.client.JSON;
+import com.datadog.api.client.UnparsedObject;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.JsonToken;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.MapperFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import jakarta.ws.rs.core.GenericType;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+@JsonDeserialize(
+ using =
+ DatabricksIntegrationAccountAuthenticationRequest
+ .DatabricksIntegrationAccountAuthenticationRequestDeserializer.class)
+@JsonSerialize(
+ using =
+ DatabricksIntegrationAccountAuthenticationRequest
+ .DatabricksIntegrationAccountAuthenticationRequestSerializer.class)
+public class DatabricksIntegrationAccountAuthenticationRequest extends AbstractOpenApiSchema {
+ private static final Logger log =
+ Logger.getLogger(DatabricksIntegrationAccountAuthenticationRequest.class.getName());
+
+ @JsonIgnore public boolean unparsed = false;
+
+ public static class DatabricksIntegrationAccountAuthenticationRequestSerializer
+ extends StdSerializer {
+ public DatabricksIntegrationAccountAuthenticationRequestSerializer(
+ Class t) {
+ super(t);
+ }
+
+ public DatabricksIntegrationAccountAuthenticationRequestSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ DatabricksIntegrationAccountAuthenticationRequest value,
+ JsonGenerator jgen,
+ SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.getActualInstance());
+ }
+ }
+
+ public static class DatabricksIntegrationAccountAuthenticationRequestDeserializer
+ extends StdDeserializer {
+ public DatabricksIntegrationAccountAuthenticationRequestDeserializer() {
+ this(DatabricksIntegrationAccountAuthenticationRequest.class);
+ }
+
+ public DatabricksIntegrationAccountAuthenticationRequestDeserializer(Class> vc) {
+ super(vc);
+ }
+
+ @Override
+ public DatabricksIntegrationAccountAuthenticationRequest deserialize(
+ JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
+ JsonNode tree = jp.readValueAsTree();
+ Object deserialized = null;
+ Object tmp = null;
+ boolean typeCoercion = ctxt.isEnabled(MapperFeature.ALLOW_COERCION_OF_SCALARS);
+ int match = 0;
+ JsonToken token = tree.traverse(jp.getCodec()).nextToken();
+ // deserialize DatabricksIntegrationAccountOAuthAuthRequest
+ try {
+ boolean attemptParsing = true;
+ // ensure that we respect type coercion as set on the client ObjectMapper
+ if (DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Integer.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Long.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Float.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Double.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Boolean.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(String.class)) {
+ attemptParsing = typeCoercion;
+ if (!attemptParsing) {
+ attemptParsing |=
+ ((DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Integer.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Long.class))
+ && token == JsonToken.VALUE_NUMBER_INT);
+ attemptParsing |=
+ ((DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Float.class)
+ || DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Double.class))
+ && (token == JsonToken.VALUE_NUMBER_FLOAT
+ || token == JsonToken.VALUE_NUMBER_INT));
+ attemptParsing |=
+ (DatabricksIntegrationAccountOAuthAuthRequest.class.equals(Boolean.class)
+ && (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
+ attemptParsing |=
+ (DatabricksIntegrationAccountOAuthAuthRequest.class.equals(String.class)
+ && token == JsonToken.VALUE_STRING);
+ }
+ }
+ if (attemptParsing) {
+ tmp =
+ tree.traverse(jp.getCodec())
+ .readValueAs(DatabricksIntegrationAccountOAuthAuthRequest.class);
+ // TODO: there is no validation against JSON schema constraints
+ // (min, max, enum, pattern...), this does not perform a strict JSON
+ // validation, which means the 'match' count may be higher than it should be.
+ if (!((DatabricksIntegrationAccountOAuthAuthRequest) tmp).unparsed) {
+ deserialized = tmp;
+ match++;
+ }
+ log.log(
+ Level.FINER,
+ "Input data matches schema 'DatabricksIntegrationAccountOAuthAuthRequest'");
+ }
+ } catch (Exception e) {
+ // deserialization failed, continue
+ log.log(
+ Level.FINER,
+ "Input data does not match schema 'DatabricksIntegrationAccountOAuthAuthRequest'",
+ e);
+ }
+
+ // deserialize IntegrationAccountPrivateActionRunnerAuthRequest
+ try {
+ boolean attemptParsing = true;
+ // ensure that we respect type coercion as set on the client ObjectMapper
+ if (IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Integer.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Long.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Float.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Double.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Boolean.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(String.class)) {
+ attemptParsing = typeCoercion;
+ if (!attemptParsing) {
+ attemptParsing |=
+ ((IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Integer.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(
+ Long.class))
+ && token == JsonToken.VALUE_NUMBER_INT);
+ attemptParsing |=
+ ((IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Float.class)
+ || IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(
+ Double.class))
+ && (token == JsonToken.VALUE_NUMBER_FLOAT
+ || token == JsonToken.VALUE_NUMBER_INT));
+ attemptParsing |=
+ (IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(Boolean.class)
+ && (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
+ attemptParsing |=
+ (IntegrationAccountPrivateActionRunnerAuthRequest.class.equals(String.class)
+ && token == JsonToken.VALUE_STRING);
+ }
+ }
+ if (attemptParsing) {
+ tmp =
+ tree.traverse(jp.getCodec())
+ .readValueAs(IntegrationAccountPrivateActionRunnerAuthRequest.class);
+ // TODO: there is no validation against JSON schema constraints
+ // (min, max, enum, pattern...), this does not perform a strict JSON
+ // validation, which means the 'match' count may be higher than it should be.
+ if (!((IntegrationAccountPrivateActionRunnerAuthRequest) tmp).unparsed) {
+ deserialized = tmp;
+ match++;
+ }
+ log.log(
+ Level.FINER,
+ "Input data matches schema 'IntegrationAccountPrivateActionRunnerAuthRequest'");
+ }
+ } catch (Exception e) {
+ // deserialization failed, continue
+ log.log(
+ Level.FINER,
+ "Input data does not match schema 'IntegrationAccountPrivateActionRunnerAuthRequest'",
+ e);
+ }
+
+ DatabricksIntegrationAccountAuthenticationRequest ret =
+ new DatabricksIntegrationAccountAuthenticationRequest();
+ if (match == 1) {
+ ret.setActualInstance(deserialized);
+ } else {
+ Map res =
+ new ObjectMapper()
+ .readValue(
+ tree.traverse(jp.getCodec()).readValueAsTree().toString(),
+ new TypeReference