From 2a1b430391fcdbbf17b2ef5143449ee981f0202f Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Tue, 8 Sep 2026 11:08:15 +0000 Subject: [PATCH] Regenerate client from commit 0e22451 of spec repo --- .generator/schemas/v2/openapi.yaml | 873 ++++++++++++++++++ .../CreateDatabricksIntegrationAccount.ts | 70 ++ .../DeleteDatabricksIntegrationAccount.ts | 24 + .../GetDatabricksIntegrationAccount.ts | 23 + .../ListDatabricksIntegrationAccounts.ts | 18 + .../UpdateDatabricksIntegrationAccount.ts | 72 ++ features/support/scenarios_model_mapping.ts | 35 + .../databricks_integration_accounts.feature | 152 +++ features/v2/undo.json | 37 + .../configuration.ts | 5 + .../apis/DatabricksIntegrationAccountsApi.ts | 834 +++++++++++++++++ packages/datadog-api-client-v2/index.ts | 50 + ...udCostMetricsIntegrationDataflowRequest.ts | 61 ++ ...dCostMetricsIntegrationDataflowResponse.ts | 61 ++ ...tricsIntegrationDataflowSettingsRequest.ts | 41 + ...ricsIntegrationDataflowSettingsResponse.ts | 52 ++ ...obsMonitoringIntegrationDataflowRequest.ts | 61 ++ ...bsMonitoringIntegrationDataflowResponse.ts | 61 ++ ...oringIntegrationDataflowSettingsRequest.ts | 81 ++ ...ringIntegrationDataflowSettingsResponse.ts | 84 ++ ...ityMonitoringIntegrationDataflowRequest.ts | 61 ++ ...tyMonitoringIntegrationDataflowResponse.ts | 61 ++ ...oringIntegrationDataflowSettingsRequest.ts | 49 + ...ringIntegrationDataflowSettingsResponse.ts | 60 ++ ...IntegrationAccountAuthenticationRequest.ts | 18 + ...ntegrationAccountAuthenticationResponse.ts | 20 + ...sIntegrationAccountAuthenticationUpdate.ts | 20 + ...ricksIntegrationAccountCreateAttributes.ts | 82 ++ .../DatabricksIntegrationAccountCreateData.ts | 64 ++ ...tabricksIntegrationAccountCreateRequest.ts | 54 ++ ...ricksIntegrationAccountOAuthAuthRequest.ts | 69 ++ ...icksIntegrationAccountOAuthAuthResponse.ts | 71 ++ ...tabricksIntegrationAccountOAuthAuthType.ts | 16 + ...bricksIntegrationAccountOAuthAuthUpdate.ts | 68 ++ ...bricksIntegrationAccountPatAuthResponse.ts | 54 ++ ...DatabricksIntegrationAccountPatAuthType.ts | 16 + ...tabricksIntegrationAccountPatAuthUpdate.ts | 51 + .../DatabricksIntegrationAccountResponse.ts | 54 ++ ...cksIntegrationAccountResponseAttributes.ts | 81 ++ ...atabricksIntegrationAccountResponseData.ts | 73 ++ ...bricksIntegrationAccountSettingsRequest.ts | 50 + ...ricksIntegrationAccountSettingsResponse.ts | 61 ++ ...abricksIntegrationAccountSettingsUpdate.ts | 49 + ...ricksIntegrationAccountUpdateAttributes.ts | 79 ++ .../DatabricksIntegrationAccountUpdateData.ts | 73 ++ ...tabricksIntegrationAccountUpdateRequest.ts | 54 ++ .../DatabricksIntegrationAccountsResponse.ts | 54 ++ .../DatabricksIntegrationDataflowsRequest.ts | 69 ++ .../DatabricksIntegrationDataflowsResponse.ts | 80 ++ ...ervingMetricsIntegrationDataflowRequest.ts | 52 ++ ...rvingMetricsIntegrationDataflowResponse.ts | 52 ++ ...onAccountPrivateActionRunnerAuthRequest.ts | 69 ++ ...nAccountPrivateActionRunnerAuthResponse.ts | 80 ++ ...ationAccountPrivateActionRunnerAuthType.ts | 16 + .../models/ObjectSerializer.ts | 122 +++ 55 files changed, 4697 insertions(+) create mode 100644 examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.ts create mode 100644 examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.ts create mode 100644 examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.ts create mode 100644 examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.ts create mode 100644 examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.ts create mode 100644 features/v2/databricks_integration_accounts.feature create mode 100644 packages/datadog-api-client-v2/apis/DatabricksIntegrationAccountsApi.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationUpdate.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateAttributes.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateData.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthType.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthUpdate.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthType.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthUpdate.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseAttributes.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseData.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsUpdate.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateAttributes.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateData.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationAccountsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsResponse.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowRequest.ts create mode 100644 packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowResponse.ts create mode 100644 packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthRequest.ts create mode 100644 packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthResponse.ts create mode 100644 packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthType.ts diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index e6d194c15957..21022d3fbb76 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -31394,6 +31394,514 @@ 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 + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest: + description: The Databricks Data Jobs Monitoring dataflow. + properties: + enabled: + description: Whether the Databricks dataflow is enabled. + example: true + type: boolean + settings: + $ref: '#/components/schemas/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest' + type: object + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse: + description: The Databricks Data Jobs Monitoring dataflow. + properties: + enabled: + description: Whether the Databricks dataflow is enabled. + example: true + type: boolean + settings: + $ref: '#/components/schemas/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse' + type: object + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest: + 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 + serverless_jobs_enabled: + description: >- + Whether metrics are collected from serverless jobs. These jobs run without clusters, so this does not require the global init script. + example: true + type: boolean + type: object + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse: + 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 + serverless_jobs_enabled: + description: >- + Whether metrics are collected from serverless jobs. These jobs run without clusters, so this does not require the global init script. + example: true + type: boolean + type: object + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest: + description: The Databricks data observability quality monitoring dataflow. + properties: + enabled: + description: Whether the Databricks dataflow is enabled. + example: true + type: boolean + settings: + $ref: '#/components/schemas/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest' + type: object + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse: + description: The Databricks data observability quality monitoring dataflow. + properties: + enabled: + description: Whether the Databricks dataflow is enabled. + example: true + type: boolean + settings: + $ref: '#/components/schemas/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse' + type: object + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest: + additionalProperties: false + description: Settings of the Databricks data observability quality monitoring dataflow. Only the fields provided are changed. + properties: + do_crawlers_cron: + description: >- + Cron expression setting how often the data observability crawlers run. Currently, only hourly (`0 * * * *`) and daily (`0 0 * * *`) are supported. + 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 + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse: + description: Settings of the Databricks data observability quality monitoring dataflow. + properties: + do_crawlers_cron: + description: >- + Cron expression setting how often the data observability crawlers run. Currently, only hourly (`0 * * * *`) and daily (`0 0 * * *`) are supported. + 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-observability-jobs-monitoring: + $ref: '#/components/schemas/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest' + databricks-data-observability-quality-monitoring: + $ref: '#/components/schemas/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest' + databricks-model-serving-metrics: + $ref: '#/components/schemas/DatabricksModelServingMetricsIntegrationDataflowRequest' + 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-observability-jobs-monitoring: + $ref: '#/components/schemas/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse' + databricks-data-observability-quality-monitoring: + $ref: '#/components/schemas/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse' + databricks-model-serving-metrics: + $ref: '#/components/schemas/DatabricksModelServingMetricsIntegrationDataflowResponse' + 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 DatadogAPIKey: description: The definition of the `DatadogAPIKey` object. properties: @@ -54372,6 +54880,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`. @@ -161517,6 +162080,304 @@ 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-observability-jobs-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 + serverless_jobs_enabled: true + databricks-data-observability-quality-monitoring: + enabled: true + settings: + do_crawlers_cron: "0 * * * *" + sync_system_catalog: true + databricks-model-serving-metrics: + enabled: false + 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-observability-jobs-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 + serverless_jobs_enabled: true + databricks-data-observability-quality-monitoring: + enabled: true + settings: + do_crawlers_cron: "0 * * * *" + sync_system_catalog: true + databricks-model-serving-metrics: + enabled: false + 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-observability-jobs-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 + serverless_jobs_enabled: true + databricks-data-observability-quality-monitoring: + enabled: true + settings: + do_crawlers_cron: "0 * * * *" + sync_system_catalog: true + databricks-model-serving-metrics: + enabled: false + 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-observability-jobs-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 + serverless_jobs_enabled: true + databricks-data-observability-quality-monitoring: + enabled: true + settings: + do_crawlers_cron: "0 * * * *" + sync_system_catalog: true + databricks-model-serving-metrics: + enabled: false + 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. @@ -224980,6 +225841,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, cloud cost metrics, + data quality monitoring, and model serving metrics, along with their per-dataflow + settings for serverless jobs, cluster logs, and GPU 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.ts b/examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.ts new file mode 100644 index 000000000000..6e9d0879974d --- /dev/null +++ b/examples/v2/databricks-integration-accounts/CreateDatabricksIntegrationAccount.ts @@ -0,0 +1,70 @@ +/** + * Create a Databricks integration account returns "Created" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +configuration.unstableOperations["v2.createDatabricksIntegrationAccount"] = + true; +const apiInstance = new v2.DatabricksIntegrationAccountsApi(configuration); + +const params: v2.DatabricksIntegrationAccountsApiCreateDatabricksIntegrationAccountRequest = + { + body: { + data: { + attributes: { + authentication: { + authType: "databricks-oauth", + azureTenantId: "4d3bac44-0230-4732-9e70-cc00736f0a97", + clientId: "5c10654a-b3a3-4840-b37f-f477590c70a0", + clientSecret: "your-client-secret", + }, + dataflows: { + databricksCloudCostMetrics: { + enabled: true, + settings: { + ccmCollectAllWorkspaces: true, + }, + }, + databricksDataObservabilityJobsMonitoring: { + enabled: true, + settings: { + ddApiKeyId: "fe383f4e-09fc-46bf-8e10-4efdd453a646", + ddApiKeySecret: "your-datadog-api-key", + djmGlobalInitScriptEnabled: true, + scriptGpumEnabled: true, + scriptLogsEnabled: true, + serverlessJobsEnabled: true, + }, + }, + databricksDataObservabilityQualityMonitoring: { + enabled: true, + settings: { + doCrawlersCron: "0 * * * *", + syncSystemCatalog: true, + }, + }, + databricksModelServingMetrics: { + enabled: true, + }, + }, + name: "My Databricks Workspace", + settings: { + systemTablesSqlWarehouseId: "aba7c023d4172910", + workspaceUrl: "https://dbc-1234abcd.cloud.databricks.com", + }, + }, + type: "integration-account", + }, + }, + }; + +apiInstance + .createDatabricksIntegrationAccount(params) + .then((data: v2.DatabricksIntegrationAccountResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.ts b/examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.ts new file mode 100644 index 000000000000..52558c6c0186 --- /dev/null +++ b/examples/v2/databricks-integration-accounts/DeleteDatabricksIntegrationAccount.ts @@ -0,0 +1,24 @@ +/** + * Delete a Databricks integration account returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +configuration.unstableOperations["v2.deleteDatabricksIntegrationAccount"] = + true; +const apiInstance = new v2.DatabricksIntegrationAccountsApi(configuration); + +const params: v2.DatabricksIntegrationAccountsApiDeleteDatabricksIntegrationAccountRequest = + { + accountId: "account_id", + }; + +apiInstance + .deleteDatabricksIntegrationAccount(params) + .then((data: any) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.ts b/examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.ts new file mode 100644 index 000000000000..57c78d265b96 --- /dev/null +++ b/examples/v2/databricks-integration-accounts/GetDatabricksIntegrationAccount.ts @@ -0,0 +1,23 @@ +/** + * Get a Databricks integration account returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +configuration.unstableOperations["v2.getDatabricksIntegrationAccount"] = true; +const apiInstance = new v2.DatabricksIntegrationAccountsApi(configuration); + +const params: v2.DatabricksIntegrationAccountsApiGetDatabricksIntegrationAccountRequest = + { + accountId: "account_id", + }; + +apiInstance + .getDatabricksIntegrationAccount(params) + .then((data: v2.DatabricksIntegrationAccountResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.ts b/examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.ts new file mode 100644 index 000000000000..a218f4608d30 --- /dev/null +++ b/examples/v2/databricks-integration-accounts/ListDatabricksIntegrationAccounts.ts @@ -0,0 +1,18 @@ +/** + * List Databricks integration accounts returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +configuration.unstableOperations["v2.listDatabricksIntegrationAccounts"] = true; +const apiInstance = new v2.DatabricksIntegrationAccountsApi(configuration); + +apiInstance + .listDatabricksIntegrationAccounts() + .then((data: v2.DatabricksIntegrationAccountsResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.ts b/examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.ts new file mode 100644 index 000000000000..67a238622ce2 --- /dev/null +++ b/examples/v2/databricks-integration-accounts/UpdateDatabricksIntegrationAccount.ts @@ -0,0 +1,72 @@ +/** + * Update a Databricks integration account returns "OK" response + */ + +import { client, v2 } from "@datadog/datadog-api-client"; + +const configuration = client.createConfiguration(); +configuration.unstableOperations["v2.updateDatabricksIntegrationAccount"] = + true; +const apiInstance = new v2.DatabricksIntegrationAccountsApi(configuration); + +const params: v2.DatabricksIntegrationAccountsApiUpdateDatabricksIntegrationAccountRequest = + { + body: { + data: { + attributes: { + authentication: { + authType: "databricks-oauth", + azureTenantId: "4d3bac44-0230-4732-9e70-cc00736f0a97", + clientId: "5c10654a-b3a3-4840-b37f-f477590c70a0", + clientSecret: "your-client-secret", + }, + dataflows: { + databricksCloudCostMetrics: { + enabled: true, + settings: { + ccmCollectAllWorkspaces: true, + }, + }, + databricksDataObservabilityJobsMonitoring: { + enabled: true, + settings: { + ddApiKeyId: "fe383f4e-09fc-46bf-8e10-4efdd453a646", + ddApiKeySecret: "your-datadog-api-key", + djmGlobalInitScriptEnabled: true, + scriptGpumEnabled: true, + scriptLogsEnabled: true, + serverlessJobsEnabled: true, + }, + }, + databricksDataObservabilityQualityMonitoring: { + enabled: true, + settings: { + doCrawlersCron: "0 * * * *", + syncSystemCatalog: true, + }, + }, + databricksModelServingMetrics: { + enabled: true, + }, + }, + name: "My Databricks Workspace", + settings: { + systemTablesSqlWarehouseId: "aba7c023d4172910", + workspaceUrl: "https://dbc-1234abcd.cloud.databricks.com", + }, + }, + id: "a9a69c2e-4f8d-4e42-9c1a-2a7a2d3b7c6f", + type: "integration-account", + }, + }, + accountId: "account_id", + }; + +apiInstance + .updateDatabricksIntegrationAccount(params) + .then((data: v2.DatabricksIntegrationAccountResponse) => { + console.log( + "API called successfully. Returned data: " + JSON.stringify(data) + ); + }) + .catch((error: any) => console.error(error)); diff --git a/features/support/scenarios_model_mapping.ts b/features/support/scenarios_model_mapping.ts index 1d41a2d52405..3e6bf3e3e76a 100644 --- a/features/support/scenarios_model_mapping.ts +++ b/features/support/scenarios_model_mapping.ts @@ -11399,6 +11399,41 @@ export const ScenariosModelMappings: {[key: string]: {[key: string]: any}} = { }, "operationResponseType": "IncidentTimestampOverrideResponse", }, + "v2.ListDatabricksIntegrationAccounts": { + "operationResponseType": "DatabricksIntegrationAccountsResponse", + }, + "v2.CreateDatabricksIntegrationAccount": { + "body": { + "type": "DatabricksIntegrationAccountCreateRequest", + "format": "", + }, + "operationResponseType": "DatabricksIntegrationAccountResponse", + }, + "v2.GetDatabricksIntegrationAccount": { + "accountId": { + "type": "string", + "format": "", + }, + "operationResponseType": "DatabricksIntegrationAccountResponse", + }, + "v2.DeleteDatabricksIntegrationAccount": { + "accountId": { + "type": "string", + "format": "", + }, + "operationResponseType": "{}", + }, + "v2.UpdateDatabricksIntegrationAccount": { + "accountId": { + "type": "string", + "format": "", + }, + "body": { + "type": "DatabricksIntegrationAccountUpdateRequest", + "format": "", + }, + "operationResponseType": "DatabricksIntegrationAccountResponse", + }, "v2.ListElasticCloudIntegrationAccounts": { "operationResponseType": "ElasticCloudIntegrationAccountsResponse", }, diff --git a/features/v2/databricks_integration_accounts.feature b/features/v2/databricks_integration_accounts.feature new file mode 100644 index 000000000000..9feb801f3143 --- /dev/null +++ b/features/v2/databricks_integration_accounts.feature @@ -0,0 +1,152 @@ +@endpoint(databricks-integration-accounts) @endpoint(databricks-integration-accounts-v2) +Feature: Databricks Integration Accounts + 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, cloud cost metrics, data quality monitoring, and model serving + metrics, along with their per-dataflow settings for serverless jobs, + cluster logs, and GPU metrics. See the [Databricks integration + page](https://docs.datadoghq.com/integrations/databricks/) for more + information. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "DatabricksIntegrationAccounts" API + + @generated @skip @team:DataDog/saas-integrations + Scenario: Create a Databricks integration account returns "Bad Request" response + Given operation "CreateDatabricksIntegrationAccount" enabled + And new "CreateDatabricksIntegrationAccount" request + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"enabled": true}}, "name": "My Databricks Workspace", "settings": {"system_tables_sql_warehouse_id": "aba7c023d4172910", "workspace_url": "https://dbc-1234abcd.cloud.databricks.com"}}, "type": "integration-account"}} + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/saas-integrations + Scenario: Create a Databricks integration account returns "Created" response + Given operation "CreateDatabricksIntegrationAccount" enabled + And new "CreateDatabricksIntegrationAccount" request + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"enabled": true}}, "name": "My Databricks Workspace", "settings": {"system_tables_sql_warehouse_id": "aba7c023d4172910", "workspace_url": "https://dbc-1234abcd.cloud.databricks.com"}}, "type": "integration-account"}} + When the request is sent + Then the response status is 201 Created + + @generated @skip @team:DataDog/saas-integrations + Scenario: Create a Databricks integration account returns "Not Found" response + Given operation "CreateDatabricksIntegrationAccount" enabled + And new "CreateDatabricksIntegrationAccount" request + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"enabled": true}}, "name": "My Databricks Workspace", "settings": {"system_tables_sql_warehouse_id": "aba7c023d4172910", "workspace_url": "https://dbc-1234abcd.cloud.databricks.com"}}, "type": "integration-account"}} + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/saas-integrations + Scenario: Create a Databricks integration account returns "The server cannot process the request because it contains invalid data." response + Given operation "CreateDatabricksIntegrationAccount" enabled + And new "CreateDatabricksIntegrationAccount" request + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"enabled": true}}, "name": "My Databricks Workspace", "settings": {"system_tables_sql_warehouse_id": "aba7c023d4172910", "workspace_url": "https://dbc-1234abcd.cloud.databricks.com"}}, "type": "integration-account"}} + When the request is sent + Then the response status is 422 The server cannot process the request because it contains invalid data. + + @generated @skip @team:DataDog/saas-integrations + Scenario: Delete a Databricks integration account returns "Bad Request" response + Given operation "DeleteDatabricksIntegrationAccount" enabled + And new "DeleteDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/saas-integrations + Scenario: Delete a Databricks integration account returns "Not Found" response + Given operation "DeleteDatabricksIntegrationAccount" enabled + And new "DeleteDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/saas-integrations + Scenario: Delete a Databricks integration account returns "OK" response + Given operation "DeleteDatabricksIntegrationAccount" enabled + And new "DeleteDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/saas-integrations + Scenario: Get a Databricks integration account returns "Bad Request" response + Given operation "GetDatabricksIntegrationAccount" enabled + And new "GetDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/saas-integrations + Scenario: Get a Databricks integration account returns "Not Found" response + Given operation "GetDatabricksIntegrationAccount" enabled + And new "GetDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/saas-integrations + Scenario: Get a Databricks integration account returns "OK" response + Given operation "GetDatabricksIntegrationAccount" enabled + And new "GetDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/saas-integrations + Scenario: List Databricks integration accounts returns "Bad Request" response + Given operation "ListDatabricksIntegrationAccounts" enabled + And new "ListDatabricksIntegrationAccounts" request + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/saas-integrations + Scenario: List Databricks integration accounts returns "Not Found" response + Given operation "ListDatabricksIntegrationAccounts" enabled + And new "ListDatabricksIntegrationAccounts" request + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/saas-integrations + Scenario: List Databricks integration accounts returns "OK" response + Given operation "ListDatabricksIntegrationAccounts" enabled + And new "ListDatabricksIntegrationAccounts" request + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/saas-integrations + Scenario: Update a Databricks integration account returns "Bad Request" response + Given operation "UpdateDatabricksIntegrationAccount" enabled + And new "UpdateDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"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"}} + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/saas-integrations + Scenario: Update a Databricks integration account returns "Not Found" response + Given operation "UpdateDatabricksIntegrationAccount" enabled + And new "UpdateDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"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"}} + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/saas-integrations + Scenario: Update a Databricks integration account returns "OK" response + Given operation "UpdateDatabricksIntegrationAccount" enabled + And new "UpdateDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"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"}} + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/saas-integrations + Scenario: Update a Databricks integration account returns "The server cannot process the request because it contains invalid data." response + Given operation "UpdateDatabricksIntegrationAccount" enabled + And new "UpdateDatabricksIntegrationAccount" request + And request contains "account_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"authentication": {"auth_type": "databricks-oauth", "azure_tenant_id": "4d3bac44-0230-4732-9e70-cc00736f0a97", "client_id": "5c10654a-b3a3-4840-b37f-f477590c70a0", "client_secret": "your-client-secret"}, "dataflows": {"databricks-cloud-cost-metrics": {"enabled": true, "settings": {"ccm_collect_all_workspaces": true}}, "databricks-data-observability-jobs-monitoring": {"enabled": true, "settings": {"dd_api_key_id": "fe383f4e-09fc-46bf-8e10-4efdd453a646", "dd_api_key_secret": "your-datadog-api-key", "djm_global_init_script_enabled": true, "script_gpum_enabled": true, "script_logs_enabled": true, "serverless_jobs_enabled": true}}, "databricks-data-observability-quality-monitoring": {"enabled": true, "settings": {"do_crawlers_cron": "0 * * * *", "sync_system_catalog": true}}, "databricks-model-serving-metrics": {"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"}} + When the request is sent + Then the response status is 422 The server cannot process the request because it contains invalid data. diff --git a/features/v2/undo.json b/features/v2/undo.json index be4ddd2f98e6..5792de9b93b7 100644 --- a/features/v2/undo.json +++ b/features/v2/undo.json @@ -3643,6 +3643,43 @@ "type": "idempotent" } }, + "ListDatabricksIntegrationAccounts": { + "tag": "Databricks Integration Accounts", + "undo": { + "type": "safe" + } + }, + "CreateDatabricksIntegrationAccount": { + "tag": "Databricks Integration Accounts", + "undo": { + "operationId": "DeleteDatabricksIntegrationAccount", + "parameters": [ + { + "name": "account_id", + "source": "data.id" + } + ], + "type": "unsafe" + } + }, + "DeleteDatabricksIntegrationAccount": { + "tag": "Databricks Integration Accounts", + "undo": { + "type": "idempotent" + } + }, + "GetDatabricksIntegrationAccount": { + "tag": "Databricks Integration Accounts", + "undo": { + "type": "safe" + } + }, + "UpdateDatabricksIntegrationAccount": { + "tag": "Databricks Integration Accounts", + "undo": { + "type": "idempotent" + } + }, "ListElasticCloudIntegrationAccounts": { "tag": "Elastic Cloud Integration Accounts", "undo": { diff --git a/packages/datadog-api-client-common/configuration.ts b/packages/datadog-api-client-common/configuration.ts index b5ad62a056b9..152f61340fd6 100644 --- a/packages/datadog-api-client-common/configuration.ts +++ b/packages/datadog-api-client-common/configuration.ts @@ -615,6 +615,11 @@ export function createConfiguration( "v2.updateIncidentUserDefinedField": false, "v2.updateIncidentUserDefinedRole": false, "v2.updateTimestampOverride": false, + "v2.createDatabricksIntegrationAccount": false, + "v2.deleteDatabricksIntegrationAccount": false, + "v2.getDatabricksIntegrationAccount": false, + "v2.listDatabricksIntegrationAccounts": false, + "v2.updateDatabricksIntegrationAccount": false, "v2.createElasticCloudIntegrationAccount": false, "v2.deleteElasticCloudIntegrationAccount": false, "v2.getElasticCloudIntegrationAccount": false, diff --git a/packages/datadog-api-client-v2/apis/DatabricksIntegrationAccountsApi.ts b/packages/datadog-api-client-v2/apis/DatabricksIntegrationAccountsApi.ts new file mode 100644 index 000000000000..9620c0ebf7fa --- /dev/null +++ b/packages/datadog-api-client-v2/apis/DatabricksIntegrationAccountsApi.ts @@ -0,0 +1,834 @@ +import { + BaseAPIRequestFactory, + RequiredError, +} from "../../datadog-api-client-common/baseapi"; +import { + Configuration, + applySecurityAuthentication, +} from "../../datadog-api-client-common/configuration"; +import { + RequestContext, + HttpMethod, + ResponseContext, +} from "../../datadog-api-client-common/http/http"; + +import { logger } from "../../../logger"; +import { ObjectSerializer } from "../models/ObjectSerializer"; +import { ApiException } from "../../datadog-api-client-common/exception"; + +import { APIErrorResponse } from "../models/APIErrorResponse"; +import { DatabricksIntegrationAccountCreateRequest } from "../models/DatabricksIntegrationAccountCreateRequest"; +import { DatabricksIntegrationAccountResponse } from "../models/DatabricksIntegrationAccountResponse"; +import { DatabricksIntegrationAccountsResponse } from "../models/DatabricksIntegrationAccountsResponse"; +import { DatabricksIntegrationAccountUpdateRequest } from "../models/DatabricksIntegrationAccountUpdateRequest"; +import { JSONAPIErrorResponse } from "../models/JSONAPIErrorResponse"; + +export class DatabricksIntegrationAccountsApiRequestFactory extends BaseAPIRequestFactory { + public async createDatabricksIntegrationAccount( + body: DatabricksIntegrationAccountCreateRequest, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + logger.warn( + "Using unstable operation 'createDatabricksIntegrationAccount'" + ); + if (!_config.unstableOperations["v2.createDatabricksIntegrationAccount"]) { + throw new Error( + "Unstable operation 'createDatabricksIntegrationAccount' is disabled" + ); + } + + // verify required parameter 'body' is not null or undefined + if (body === null || body === undefined) { + throw new RequiredError("body", "createDatabricksIntegrationAccount"); + } + + // Path Params + const localVarPath = "/api/v2/integration-interfaces/databricks/accounts"; + + // Make Request Context + const requestContext = _config + .getServer( + "v2.DatabricksIntegrationAccountsApi.createDatabricksIntegrationAccount" + ) + .makeRequestContext(localVarPath, HttpMethod.POST); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Set IaC header + if (_config.isIaC) { + requestContext.setHeaderParam("X-Datadog-Managed-By", "iac"); + } + + // Body Params + const contentType = ObjectSerializer.getPreferredMediaType([ + "application/json", + ]); + requestContext.setHeaderParam("Content-Type", contentType); + const serializedBody = ObjectSerializer.stringify( + ObjectSerializer.serialize( + body, + "DatabricksIntegrationAccountCreateRequest", + "" + ), + contentType + ); + requestContext.setBody(serializedBody); + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + ]); + + return requestContext; + } + + public async deleteDatabricksIntegrationAccount( + accountId: string, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + logger.warn( + "Using unstable operation 'deleteDatabricksIntegrationAccount'" + ); + if (!_config.unstableOperations["v2.deleteDatabricksIntegrationAccount"]) { + throw new Error( + "Unstable operation 'deleteDatabricksIntegrationAccount' is disabled" + ); + } + + // verify required parameter 'accountId' is not null or undefined + if (accountId === null || accountId === undefined) { + throw new RequiredError( + "accountId", + "deleteDatabricksIntegrationAccount" + ); + } + + // Path Params + const localVarPath = + "/api/v2/integration-interfaces/databricks/accounts/{account_id}".replace( + "{account_id}", + encodeURIComponent(String(accountId)) + ); + + // Make Request Context + const requestContext = _config + .getServer( + "v2.DatabricksIntegrationAccountsApi.deleteDatabricksIntegrationAccount" + ) + .makeRequestContext(localVarPath, HttpMethod.DELETE); + requestContext.setHeaderParam("Accept", "*/*"); + requestContext.setHttpConfig(_config.httpConfig); + + // Set IaC header + if (_config.isIaC) { + requestContext.setHeaderParam("X-Datadog-Managed-By", "iac"); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + ]); + + return requestContext; + } + + public async getDatabricksIntegrationAccount( + accountId: string, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + logger.warn("Using unstable operation 'getDatabricksIntegrationAccount'"); + if (!_config.unstableOperations["v2.getDatabricksIntegrationAccount"]) { + throw new Error( + "Unstable operation 'getDatabricksIntegrationAccount' is disabled" + ); + } + + // verify required parameter 'accountId' is not null or undefined + if (accountId === null || accountId === undefined) { + throw new RequiredError("accountId", "getDatabricksIntegrationAccount"); + } + + // Path Params + const localVarPath = + "/api/v2/integration-interfaces/databricks/accounts/{account_id}".replace( + "{account_id}", + encodeURIComponent(String(accountId)) + ); + + // Make Request Context + const requestContext = _config + .getServer( + "v2.DatabricksIntegrationAccountsApi.getDatabricksIntegrationAccount" + ) + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Set IaC header + if (_config.isIaC) { + requestContext.setHeaderParam("X-Datadog-Managed-By", "iac"); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + ]); + + return requestContext; + } + + public async listDatabricksIntegrationAccounts( + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + logger.warn("Using unstable operation 'listDatabricksIntegrationAccounts'"); + if (!_config.unstableOperations["v2.listDatabricksIntegrationAccounts"]) { + throw new Error( + "Unstable operation 'listDatabricksIntegrationAccounts' is disabled" + ); + } + + // Path Params + const localVarPath = "/api/v2/integration-interfaces/databricks/accounts"; + + // Make Request Context + const requestContext = _config + .getServer( + "v2.DatabricksIntegrationAccountsApi.listDatabricksIntegrationAccounts" + ) + .makeRequestContext(localVarPath, HttpMethod.GET); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Set IaC header + if (_config.isIaC) { + requestContext.setHeaderParam("X-Datadog-Managed-By", "iac"); + } + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + ]); + + return requestContext; + } + + public async updateDatabricksIntegrationAccount( + accountId: string, + body: DatabricksIntegrationAccountUpdateRequest, + _options?: Configuration + ): Promise { + const _config = _options || this.configuration; + + logger.warn( + "Using unstable operation 'updateDatabricksIntegrationAccount'" + ); + if (!_config.unstableOperations["v2.updateDatabricksIntegrationAccount"]) { + throw new Error( + "Unstable operation 'updateDatabricksIntegrationAccount' is disabled" + ); + } + + // verify required parameter 'accountId' is not null or undefined + if (accountId === null || accountId === undefined) { + throw new RequiredError( + "accountId", + "updateDatabricksIntegrationAccount" + ); + } + + // verify required parameter 'body' is not null or undefined + if (body === null || body === undefined) { + throw new RequiredError("body", "updateDatabricksIntegrationAccount"); + } + + // Path Params + const localVarPath = + "/api/v2/integration-interfaces/databricks/accounts/{account_id}".replace( + "{account_id}", + encodeURIComponent(String(accountId)) + ); + + // Make Request Context + const requestContext = _config + .getServer( + "v2.DatabricksIntegrationAccountsApi.updateDatabricksIntegrationAccount" + ) + .makeRequestContext(localVarPath, HttpMethod.PATCH); + requestContext.setHeaderParam("Accept", "application/json"); + requestContext.setHttpConfig(_config.httpConfig); + + // Set IaC header + if (_config.isIaC) { + requestContext.setHeaderParam("X-Datadog-Managed-By", "iac"); + } + + // Body Params + const contentType = ObjectSerializer.getPreferredMediaType([ + "application/json", + ]); + requestContext.setHeaderParam("Content-Type", contentType); + const serializedBody = ObjectSerializer.stringify( + ObjectSerializer.serialize( + body, + "DatabricksIntegrationAccountUpdateRequest", + "" + ), + contentType + ); + requestContext.setBody(serializedBody); + + // Apply auth methods + applySecurityAuthentication(_config, requestContext, [ + "apiKeyAuth", + "appKeyAuth", + ]); + + return requestContext; + } +} + +export class DatabricksIntegrationAccountsApiResponseProcessor { + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to createDatabricksIntegrationAccount + * @throws ApiException if the response code was not in [200, 299] + */ + public async createDatabricksIntegrationAccount( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 201) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse" + ) as DatabricksIntegrationAccountResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 403 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + if (response.httpStatusCode === 422) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: JSONAPIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "JSONAPIErrorResponse" + ) as JSONAPIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException( + response.httpStatusCode, + body + ); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse", + "" + ) as DatabricksIntegrationAccountResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to deleteDatabricksIntegrationAccount + * @throws ApiException if the response code was not in [200, 299] + */ + public async deleteDatabricksIntegrationAccount( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + return; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 403 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + return; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to getDatabricksIntegrationAccount + * @throws ApiException if the response code was not in [200, 299] + */ + public async getDatabricksIntegrationAccount( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse" + ) as DatabricksIntegrationAccountResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 403 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse", + "" + ) as DatabricksIntegrationAccountResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to listDatabricksIntegrationAccounts + * @throws ApiException if the response code was not in [200, 299] + */ + public async listDatabricksIntegrationAccounts( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: DatabricksIntegrationAccountsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountsResponse" + ) as DatabricksIntegrationAccountsResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 403 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: DatabricksIntegrationAccountsResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountsResponse", + "" + ) as DatabricksIntegrationAccountsResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } + + /** + * Unwraps the actual response sent by the server from the response context and deserializes the response content + * to the expected objects + * + * @params response Response returned by the server for a request to updateDatabricksIntegrationAccount + * @throws ApiException if the response code was not in [200, 299] + */ + public async updateDatabricksIntegrationAccount( + response: ResponseContext + ): Promise { + const contentType = ObjectSerializer.normalizeMediaType( + response.headers["content-type"] + ); + if (response.httpStatusCode === 200) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse" + ) as DatabricksIntegrationAccountResponse; + return body; + } + if ( + response.httpStatusCode === 400 || + response.httpStatusCode === 403 || + response.httpStatusCode === 404 || + response.httpStatusCode === 429 + ) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: APIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "APIErrorResponse" + ) as APIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException(response.httpStatusCode, body); + } + if (response.httpStatusCode === 422) { + const bodyText = ObjectSerializer.parse( + await response.body.text(), + contentType + ); + let body: JSONAPIErrorResponse; + try { + body = ObjectSerializer.deserialize( + bodyText, + "JSONAPIErrorResponse" + ) as JSONAPIErrorResponse; + } catch (error) { + logger.debug(`Got error deserializing error: ${error}`); + throw new ApiException( + response.httpStatusCode, + bodyText + ); + } + throw new ApiException( + response.httpStatusCode, + body + ); + } + + // Work around for missing responses in specification, e.g. for petstore.yaml + if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) { + const body: DatabricksIntegrationAccountResponse = + ObjectSerializer.deserialize( + ObjectSerializer.parse(await response.body.text(), contentType), + "DatabricksIntegrationAccountResponse", + "" + ) as DatabricksIntegrationAccountResponse; + return body; + } + + const body = (await response.body.text()) || ""; + throw new ApiException( + response.httpStatusCode, + 'Unknown API Status Code!\nBody: "' + body + '"' + ); + } +} + +export interface DatabricksIntegrationAccountsApiCreateDatabricksIntegrationAccountRequest { + /** + * @type DatabricksIntegrationAccountCreateRequest + */ + body: DatabricksIntegrationAccountCreateRequest; +} + +export interface DatabricksIntegrationAccountsApiDeleteDatabricksIntegrationAccountRequest { + /** + * Unique identifier of the integration account. + * @type string + */ + accountId: string; +} + +export interface DatabricksIntegrationAccountsApiGetDatabricksIntegrationAccountRequest { + /** + * Unique identifier of the integration account. + * @type string + */ + accountId: string; +} + +export interface DatabricksIntegrationAccountsApiUpdateDatabricksIntegrationAccountRequest { + /** + * Unique identifier of the integration account. + * @type string + */ + accountId: string; + /** + * @type DatabricksIntegrationAccountUpdateRequest + */ + body: DatabricksIntegrationAccountUpdateRequest; +} + +export class DatabricksIntegrationAccountsApi { + private requestFactory: DatabricksIntegrationAccountsApiRequestFactory; + private responseProcessor: DatabricksIntegrationAccountsApiResponseProcessor; + private configuration: Configuration; + + public constructor( + configuration: Configuration, + requestFactory?: DatabricksIntegrationAccountsApiRequestFactory, + responseProcessor?: DatabricksIntegrationAccountsApiResponseProcessor + ) { + this.configuration = configuration; + this.requestFactory = + requestFactory || + new DatabricksIntegrationAccountsApiRequestFactory(configuration); + this.responseProcessor = + responseProcessor || + new DatabricksIntegrationAccountsApiResponseProcessor(); + } + + /** + * Create a Databricks integration account. + * @param param The request object + */ + public createDatabricksIntegrationAccount( + param: DatabricksIntegrationAccountsApiCreateDatabricksIntegrationAccountRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.createDatabricksIntegrationAccount( + param.body, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.createDatabricksIntegrationAccount( + responseContext + ); + }); + }); + } + + /** + * Delete a Databricks integration account. + * @param param The request object + */ + public deleteDatabricksIntegrationAccount( + param: DatabricksIntegrationAccountsApiDeleteDatabricksIntegrationAccountRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.deleteDatabricksIntegrationAccount( + param.accountId, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.deleteDatabricksIntegrationAccount( + responseContext + ); + }); + }); + } + + /** + * Get a Databricks integration account. + * @param param The request object + */ + public getDatabricksIntegrationAccount( + param: DatabricksIntegrationAccountsApiGetDatabricksIntegrationAccountRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.getDatabricksIntegrationAccount( + param.accountId, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.getDatabricksIntegrationAccount( + responseContext + ); + }); + }); + } + + /** + * List Databricks integration accounts. + * @param param The request object + */ + public listDatabricksIntegrationAccounts( + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.listDatabricksIntegrationAccounts(options); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.listDatabricksIntegrationAccounts( + responseContext + ); + }); + }); + } + + /** + * Update a Databricks integration account. Only the fields provided are changed. + * @param param The request object + */ + public updateDatabricksIntegrationAccount( + param: DatabricksIntegrationAccountsApiUpdateDatabricksIntegrationAccountRequest, + options?: Configuration + ): Promise { + const requestContextPromise = + this.requestFactory.updateDatabricksIntegrationAccount( + param.accountId, + param.body, + options + ); + return requestContextPromise.then((requestContext) => { + return this.configuration.httpApi + .send(requestContext) + .then((responseContext) => { + return this.responseProcessor.updateDatabricksIntegrationAccount( + responseContext + ); + }); + }); + } +} diff --git a/packages/datadog-api-client-v2/index.ts b/packages/datadog-api-client-v2/index.ts index 7dd4038114db..f4f3d29a7fb8 100644 --- a/packages/datadog-api-client-v2/index.ts +++ b/packages/datadog-api-client-v2/index.ts @@ -593,6 +593,14 @@ export { DataObservabilityApi, } from "./apis/DataObservabilityApi"; +export { + DatabricksIntegrationAccountsApiCreateDatabricksIntegrationAccountRequest, + DatabricksIntegrationAccountsApiDeleteDatabricksIntegrationAccountRequest, + DatabricksIntegrationAccountsApiGetDatabricksIntegrationAccountRequest, + DatabricksIntegrationAccountsApiUpdateDatabricksIntegrationAccountRequest, + DatabricksIntegrationAccountsApi, +} from "./apis/DatabricksIntegrationAccountsApi"; + export { DatasetsApiCreateDatasetRequest, DatasetsApiDeleteDatasetRequest, @@ -3690,6 +3698,45 @@ export { DashboardUsageUser } from "./models/DashboardUsageUser"; export { DataAttributesRulesItemsIfTagExists } from "./models/DataAttributesRulesItemsIfTagExists"; export { DataAttributesRulesItemsMapping } from "./models/DataAttributesRulesItemsMapping"; export { DatabaseMonitoringTriggerWrapper } from "./models/DatabaseMonitoringTriggerWrapper"; +export { DatabricksCloudCostMetricsIntegrationDataflowRequest } from "./models/DatabricksCloudCostMetricsIntegrationDataflowRequest"; +export { DatabricksCloudCostMetricsIntegrationDataflowResponse } from "./models/DatabricksCloudCostMetricsIntegrationDataflowResponse"; +export { DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest } from "./models/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest"; +export { DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse } from "./models/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse"; +export { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest } from "./models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest"; +export { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse } from "./models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse"; +export { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest } from "./models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest"; +export { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse } from "./models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse"; +export { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest } from "./models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest"; +export { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse } from "./models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse"; +export { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest } from "./models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest"; +export { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse } from "./models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse"; +export { DatabricksIntegrationAccountAuthenticationRequest } from "./models/DatabricksIntegrationAccountAuthenticationRequest"; +export { DatabricksIntegrationAccountAuthenticationResponse } from "./models/DatabricksIntegrationAccountAuthenticationResponse"; +export { DatabricksIntegrationAccountAuthenticationUpdate } from "./models/DatabricksIntegrationAccountAuthenticationUpdate"; +export { DatabricksIntegrationAccountCreateAttributes } from "./models/DatabricksIntegrationAccountCreateAttributes"; +export { DatabricksIntegrationAccountCreateData } from "./models/DatabricksIntegrationAccountCreateData"; +export { DatabricksIntegrationAccountCreateRequest } from "./models/DatabricksIntegrationAccountCreateRequest"; +export { DatabricksIntegrationAccountOAuthAuthRequest } from "./models/DatabricksIntegrationAccountOAuthAuthRequest"; +export { DatabricksIntegrationAccountOAuthAuthResponse } from "./models/DatabricksIntegrationAccountOAuthAuthResponse"; +export { DatabricksIntegrationAccountOAuthAuthType } from "./models/DatabricksIntegrationAccountOAuthAuthType"; +export { DatabricksIntegrationAccountOAuthAuthUpdate } from "./models/DatabricksIntegrationAccountOAuthAuthUpdate"; +export { DatabricksIntegrationAccountPatAuthResponse } from "./models/DatabricksIntegrationAccountPatAuthResponse"; +export { DatabricksIntegrationAccountPatAuthType } from "./models/DatabricksIntegrationAccountPatAuthType"; +export { DatabricksIntegrationAccountPatAuthUpdate } from "./models/DatabricksIntegrationAccountPatAuthUpdate"; +export { DatabricksIntegrationAccountResponse } from "./models/DatabricksIntegrationAccountResponse"; +export { DatabricksIntegrationAccountResponseAttributes } from "./models/DatabricksIntegrationAccountResponseAttributes"; +export { DatabricksIntegrationAccountResponseData } from "./models/DatabricksIntegrationAccountResponseData"; +export { DatabricksIntegrationAccountSettingsRequest } from "./models/DatabricksIntegrationAccountSettingsRequest"; +export { DatabricksIntegrationAccountSettingsResponse } from "./models/DatabricksIntegrationAccountSettingsResponse"; +export { DatabricksIntegrationAccountSettingsUpdate } from "./models/DatabricksIntegrationAccountSettingsUpdate"; +export { DatabricksIntegrationAccountsResponse } from "./models/DatabricksIntegrationAccountsResponse"; +export { DatabricksIntegrationAccountUpdateAttributes } from "./models/DatabricksIntegrationAccountUpdateAttributes"; +export { DatabricksIntegrationAccountUpdateData } from "./models/DatabricksIntegrationAccountUpdateData"; +export { DatabricksIntegrationAccountUpdateRequest } from "./models/DatabricksIntegrationAccountUpdateRequest"; +export { DatabricksIntegrationDataflowsRequest } from "./models/DatabricksIntegrationDataflowsRequest"; +export { DatabricksIntegrationDataflowsResponse } from "./models/DatabricksIntegrationDataflowsResponse"; +export { DatabricksModelServingMetricsIntegrationDataflowRequest } from "./models/DatabricksModelServingMetricsIntegrationDataflowRequest"; +export { DatabricksModelServingMetricsIntegrationDataflowResponse } from "./models/DatabricksModelServingMetricsIntegrationDataflowResponse"; export { DataDeletionResponseItem } from "./models/DataDeletionResponseItem"; export { DataDeletionResponseItemAttributes } from "./models/DataDeletionResponseItemAttributes"; export { DataDeletionResponseMeta } from "./models/DataDeletionResponseMeta"; @@ -5184,6 +5231,9 @@ export { IntegrationAccountBasicAuthType } from "./models/IntegrationAccountBasi export { IntegrationAccountBasicAuthUpdate } from "./models/IntegrationAccountBasicAuthUpdate"; export { IntegrationAccountDataflowHealth } from "./models/IntegrationAccountDataflowHealth"; export { IntegrationAccountDataflowStatus } from "./models/IntegrationAccountDataflowStatus"; +export { IntegrationAccountPrivateActionRunnerAuthRequest } from "./models/IntegrationAccountPrivateActionRunnerAuthRequest"; +export { IntegrationAccountPrivateActionRunnerAuthResponse } from "./models/IntegrationAccountPrivateActionRunnerAuthResponse"; +export { IntegrationAccountPrivateActionRunnerAuthType } from "./models/IntegrationAccountPrivateActionRunnerAuthType"; export { IntegrationAccountType } from "./models/IntegrationAccountType"; export { IntegrationAttributes } from "./models/IntegrationAttributes"; export { IntegrationIncident } from "./models/IntegrationIncident"; diff --git a/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowRequest.ts b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowRequest.ts new file mode 100644 index 000000000000..05e212297ed8 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowRequest.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest } from "./DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks cloud cost metrics dataflow. + */ +export class DatabricksCloudCostMetricsIntegrationDataflowRequest { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks cloud cost metrics dataflow. Only the fields provided are changed. + */ + "settings"?: DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksCloudCostMetricsIntegrationDataflowRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowResponse.ts b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowResponse.ts new file mode 100644 index 000000000000..d5aa476c5694 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowResponse.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse } from "./DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks cloud cost metrics dataflow. + */ +export class DatabricksCloudCostMetricsIntegrationDataflowResponse { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks cloud cost metrics dataflow. + */ + "settings"?: DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksCloudCostMetricsIntegrationDataflowResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.ts b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.ts new file mode 100644 index 000000000000..00d12d4ae076 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.ts @@ -0,0 +1,41 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks cloud cost metrics dataflow. Only the fields provided are changed. + */ +export class DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest { + /** + * Whether cost data is collected for every workspace in the Databricks account rather than this workspace only. + */ + "ccmCollectAllWorkspaces"?: boolean; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + ccmCollectAllWorkspaces: { + baseName: "ccm_collect_all_workspaces", + type: "boolean", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.ts new file mode 100644 index 000000000000..29b1c3629b9c --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.ts @@ -0,0 +1,52 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks cloud cost metrics dataflow. + */ +export class DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse { + /** + * Whether cost data is collected for every workspace in the Databricks account rather than this workspace only. + */ + "ccmCollectAllWorkspaces"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + ccmCollectAllWorkspaces: { + baseName: "ccm_collect_all_workspaces", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest.ts new file mode 100644 index 000000000000..e496ff9ee72d --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks Data Jobs Monitoring dataflow. + */ +export class DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks Data Jobs Monitoring dataflow. Only the fields provided are changed. + */ + "settings"?: DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse.ts new file mode 100644 index 000000000000..87920453757b --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks Data Jobs Monitoring dataflow. + */ +export class DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks Data Jobs Monitoring dataflow. + */ + "settings"?: DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest.ts new file mode 100644 index 000000000000..76e15af67a42 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest.ts @@ -0,0 +1,81 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks Data Jobs Monitoring dataflow. Only the fields provided are changed. + */ +export class DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest { + /** + * 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. + */ + "ddApiKeyId"?: string; + /** + * Secret value of the Datadog API key identified by `dd_api_key_id`. + */ + "ddApiKeySecret"?: string; + /** + * Whether Datadog manages the global init script that installs the Agent on your Databricks clusters. + */ + "djmGlobalInitScriptEnabled"?: boolean; + /** + * 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`. + */ + "scriptGpumEnabled"?: boolean; + /** + * 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`. + */ + "scriptLogsEnabled"?: boolean; + /** + * Whether metrics are collected from serverless jobs. These jobs run without clusters, so this does not require the global init script. + */ + "serverlessJobsEnabled"?: boolean; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + ddApiKeyId: { + baseName: "dd_api_key_id", + type: "string", + }, + ddApiKeySecret: { + baseName: "dd_api_key_secret", + type: "string", + }, + djmGlobalInitScriptEnabled: { + baseName: "djm_global_init_script_enabled", + type: "boolean", + }, + scriptGpumEnabled: { + baseName: "script_gpum_enabled", + type: "boolean", + }, + scriptLogsEnabled: { + baseName: "script_logs_enabled", + type: "boolean", + }, + serverlessJobsEnabled: { + baseName: "serverless_jobs_enabled", + type: "boolean", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse.ts new file mode 100644 index 000000000000..91a4dda00b65 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse.ts @@ -0,0 +1,84 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks Data Jobs Monitoring dataflow. + */ +export class DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse { + /** + * ID of the Datadog API key the global init script uses to submit data. + */ + "ddApiKeyId"?: string; + /** + * Whether Datadog manages the global init script that installs the Agent on your Databricks clusters. + */ + "djmGlobalInitScriptEnabled"?: boolean; + /** + * 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`. + */ + "scriptGpumEnabled"?: boolean; + /** + * 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`. + */ + "scriptLogsEnabled"?: boolean; + /** + * Whether metrics are collected from serverless jobs. These jobs run without clusters, so this does not require the global init script. + */ + "serverlessJobsEnabled"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + ddApiKeyId: { + baseName: "dd_api_key_id", + type: "string", + }, + djmGlobalInitScriptEnabled: { + baseName: "djm_global_init_script_enabled", + type: "boolean", + }, + scriptGpumEnabled: { + baseName: "script_gpum_enabled", + type: "boolean", + }, + scriptLogsEnabled: { + baseName: "script_logs_enabled", + type: "boolean", + }, + serverlessJobsEnabled: { + baseName: "serverless_jobs_enabled", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest.ts new file mode 100644 index 000000000000..ac2da9ef92fe --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks data observability quality monitoring dataflow. + */ +export class DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks data observability quality monitoring dataflow. Only the fields provided are changed. + */ + "settings"?: DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse.ts new file mode 100644 index 000000000000..4f3343979622 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks data observability quality monitoring dataflow. + */ +export class DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + /** + * Settings of the Databricks data observability quality monitoring dataflow. + */ + "settings"?: DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + settings: { + baseName: "settings", + type: "DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest.ts new file mode 100644 index 000000000000..b23d3c1fc79c --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest.ts @@ -0,0 +1,49 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks data observability quality monitoring dataflow. Only the fields provided are changed. + */ +export class DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest { + /** + * Cron expression setting how often the data observability crawlers run. Currently, only hourly (`0 * * * *`) and daily (`0 0 * * *`) are supported. + */ + "doCrawlersCron"?: string; + /** + * Whether the Databricks `system` catalog is synchronized alongside your data catalogs. + */ + "syncSystemCatalog"?: boolean; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + doCrawlersCron: { + baseName: "do_crawlers_cron", + type: "string", + }, + syncSystemCatalog: { + baseName: "sync_system_catalog", + type: "boolean", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse.ts new file mode 100644 index 000000000000..055a649d645d --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse.ts @@ -0,0 +1,60 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings of the Databricks data observability quality monitoring dataflow. + */ +export class DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse { + /** + * Cron expression setting how often the data observability crawlers run. Currently, only hourly (`0 * * * *`) and daily (`0 0 * * *`) are supported. + */ + "doCrawlersCron"?: string; + /** + * Whether the Databricks `system` catalog is synchronized alongside your data catalogs. + */ + "syncSystemCatalog"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + doCrawlersCron: { + baseName: "do_crawlers_cron", + type: "string", + }, + syncSystemCatalog: { + baseName: "sync_system_catalog", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationRequest.ts new file mode 100644 index 000000000000..ed0e704b900a --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationRequest.ts @@ -0,0 +1,18 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthRequest } from "./DatabricksIntegrationAccountOAuthAuthRequest"; +import { IntegrationAccountPrivateActionRunnerAuthRequest } from "./IntegrationAccountPrivateActionRunnerAuthRequest"; + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ + +export type DatabricksIntegrationAccountAuthenticationRequest = + | DatabricksIntegrationAccountOAuthAuthRequest + | IntegrationAccountPrivateActionRunnerAuthRequest + | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationResponse.ts new file mode 100644 index 000000000000..496606483cbb --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationResponse.ts @@ -0,0 +1,20 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthResponse } from "./DatabricksIntegrationAccountOAuthAuthResponse"; +import { DatabricksIntegrationAccountPatAuthResponse } from "./DatabricksIntegrationAccountPatAuthResponse"; +import { IntegrationAccountPrivateActionRunnerAuthResponse } from "./IntegrationAccountPrivateActionRunnerAuthResponse"; + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * Authentication configured on the Databricks integration account. + */ + +export type DatabricksIntegrationAccountAuthenticationResponse = + | DatabricksIntegrationAccountOAuthAuthResponse + | IntegrationAccountPrivateActionRunnerAuthResponse + | DatabricksIntegrationAccountPatAuthResponse + | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationUpdate.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationUpdate.ts new file mode 100644 index 000000000000..213995765f73 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountAuthenticationUpdate.ts @@ -0,0 +1,20 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthUpdate } from "./DatabricksIntegrationAccountOAuthAuthUpdate"; +import { DatabricksIntegrationAccountPatAuthUpdate } from "./DatabricksIntegrationAccountPatAuthUpdate"; +import { IntegrationAccountPrivateActionRunnerAuthRequest } from "./IntegrationAccountPrivateActionRunnerAuthRequest"; + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ + +export type DatabricksIntegrationAccountAuthenticationUpdate = + | DatabricksIntegrationAccountOAuthAuthUpdate + | IntegrationAccountPrivateActionRunnerAuthRequest + | DatabricksIntegrationAccountPatAuthUpdate + | UnparsedObject; diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateAttributes.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateAttributes.ts new file mode 100644 index 000000000000..0e2bcb21354d --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateAttributes.ts @@ -0,0 +1,82 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountAuthenticationRequest } from "./DatabricksIntegrationAccountAuthenticationRequest"; +import { DatabricksIntegrationAccountSettingsRequest } from "./DatabricksIntegrationAccountSettingsRequest"; +import { DatabricksIntegrationDataflowsRequest } from "./DatabricksIntegrationDataflowsRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Writable attributes used to create a Databricks integration account. + */ +export class DatabricksIntegrationAccountCreateAttributes { + /** + * 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. + */ + "authentication": DatabricksIntegrationAccountAuthenticationRequest; + /** + * 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. + */ + "dataflows"?: DatabricksIntegrationDataflowsRequest; + /** + * Human-readable name of the Databricks integration account. + */ + "name": string; + /** + * Settings for creating the Databricks integration account. + */ + "settings": DatabricksIntegrationAccountSettingsRequest; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authentication: { + baseName: "authentication", + type: "DatabricksIntegrationAccountAuthenticationRequest", + required: true, + }, + dataflows: { + baseName: "dataflows", + type: "DatabricksIntegrationDataflowsRequest", + }, + name: { + baseName: "name", + type: "string", + required: true, + }, + settings: { + baseName: "settings", + type: "DatabricksIntegrationAccountSettingsRequest", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountCreateAttributes.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateData.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateData.ts new file mode 100644 index 000000000000..220b8a7fb3bd --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateData.ts @@ -0,0 +1,64 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountCreateAttributes } from "./DatabricksIntegrationAccountCreateAttributes"; +import { IntegrationAccountType } from "./IntegrationAccountType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Data envelope for creating a Databricks integration account. + */ +export class DatabricksIntegrationAccountCreateData { + /** + * Writable attributes used to create a Databricks integration account. + */ + "attributes": DatabricksIntegrationAccountCreateAttributes; + /** + * The type of the integration account resource. Always `integration-account`. + */ + "type": IntegrationAccountType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "DatabricksIntegrationAccountCreateAttributes", + required: true, + }, + type: { + baseName: "type", + type: "IntegrationAccountType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountCreateData.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateRequest.ts new file mode 100644 index 000000000000..97719486190c --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountCreateRequest.ts @@ -0,0 +1,54 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountCreateData } from "./DatabricksIntegrationAccountCreateData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Request payload to create a Databricks integration account. + */ +export class DatabricksIntegrationAccountCreateRequest { + /** + * Data envelope for creating a Databricks integration account. + */ + "data": DatabricksIntegrationAccountCreateData; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "DatabricksIntegrationAccountCreateData", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountCreateRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthRequest.ts new file mode 100644 index 000000000000..8e861cd5459f --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthRequest.ts @@ -0,0 +1,69 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthType } from "./DatabricksIntegrationAccountOAuthAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Databricks OAuth machine-to-machine authentication using a service principal. + */ +export class DatabricksIntegrationAccountOAuthAuthRequest { + /** + * The authentication method type. + */ + "authType": DatabricksIntegrationAccountOAuthAuthType; + /** + * Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces. + */ + "azureTenantId"?: string; + /** + * Client ID of the Databricks service principal. + */ + "clientId": string; + /** + * Secret of the Databricks service principal. + */ + "clientSecret": string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "DatabricksIntegrationAccountOAuthAuthType", + required: true, + }, + azureTenantId: { + baseName: "azure_tenant_id", + type: "string", + }, + clientId: { + baseName: "client_id", + type: "string", + required: true, + }, + clientSecret: { + baseName: "client_secret", + type: "string", + required: true, + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountOAuthAuthRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthResponse.ts new file mode 100644 index 000000000000..823c283dbfd0 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthResponse.ts @@ -0,0 +1,71 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthType } from "./DatabricksIntegrationAccountOAuthAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks OAuth authentication method and service principal configured on the account. + */ +export class DatabricksIntegrationAccountOAuthAuthResponse { + /** + * The authentication method type. + */ + "authType": DatabricksIntegrationAccountOAuthAuthType; + /** + * Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces. + */ + "azureTenantId"?: string; + /** + * Client ID of the Databricks service principal. + */ + "clientId": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "DatabricksIntegrationAccountOAuthAuthType", + required: true, + }, + azureTenantId: { + baseName: "azure_tenant_id", + type: "string", + }, + clientId: { + baseName: "client_id", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountOAuthAuthResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthType.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthType.ts new file mode 100644 index 000000000000..984f43adc2a6 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The authentication method type. + */ + +export type DatabricksIntegrationAccountOAuthAuthType = + | typeof DATABRICKS_OAUTH + | UnparsedObject; +export const DATABRICKS_OAUTH = "databricks-oauth"; diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthUpdate.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthUpdate.ts new file mode 100644 index 000000000000..5a07f162a943 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountOAuthAuthUpdate.ts @@ -0,0 +1,68 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountOAuthAuthType } from "./DatabricksIntegrationAccountOAuthAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class DatabricksIntegrationAccountOAuthAuthUpdate { + /** + * The authentication method type. + */ + "authType": DatabricksIntegrationAccountOAuthAuthType; + /** + * Microsoft Entra ID tenant of the service principal, for Azure Databricks workspaces. + */ + "azureTenantId"?: string; + /** + * Client ID of the Databricks service principal. + */ + "clientId": string; + /** + * Secret of the Databricks service principal. + */ + "clientSecret"?: string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "DatabricksIntegrationAccountOAuthAuthType", + required: true, + }, + azureTenantId: { + baseName: "azure_tenant_id", + type: "string", + }, + clientId: { + baseName: "client_id", + type: "string", + required: true, + }, + clientSecret: { + baseName: "client_secret", + type: "string", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountOAuthAuthUpdate.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthResponse.ts new file mode 100644 index 000000000000..d88c9fb81e04 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthResponse.ts @@ -0,0 +1,54 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountPatAuthType } from "./DatabricksIntegrationAccountPatAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Databricks personal access token authentication method configured on the account. Deprecated: migrate these accounts to `databricks-oauth` or `private-action-runner`. + */ +export class DatabricksIntegrationAccountPatAuthResponse { + /** + * The authentication method type. + */ + "authType": DatabricksIntegrationAccountPatAuthType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "DatabricksIntegrationAccountPatAuthType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountPatAuthResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthType.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthType.ts new file mode 100644 index 000000000000..4bd7a9e45dfd --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The authentication method type. + */ + +export type DatabricksIntegrationAccountPatAuthType = + | typeof PAT + | UnparsedObject; +export const PAT = "pat"; diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthUpdate.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthUpdate.ts new file mode 100644 index 000000000000..32cede6f9a2b --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountPatAuthUpdate.ts @@ -0,0 +1,51 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountPatAuthType } from "./DatabricksIntegrationAccountPatAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class DatabricksIntegrationAccountPatAuthUpdate { + /** + * The authentication method type. + */ + "authType": DatabricksIntegrationAccountPatAuthType; + /** + * Secret Databricks personal access token. + */ + "token"?: string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "DatabricksIntegrationAccountPatAuthType", + required: true, + }, + token: { + baseName: "token", + type: "string", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountPatAuthUpdate.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponse.ts new file mode 100644 index 000000000000..81e301fc2494 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponse.ts @@ -0,0 +1,54 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountResponseData } from "./DatabricksIntegrationAccountResponseData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Response payload for a single Databricks integration account. + */ +export class DatabricksIntegrationAccountResponse { + /** + * Data envelope of a Databricks integration account, including server-assigned identity. + */ + "data": DatabricksIntegrationAccountResponseData; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "DatabricksIntegrationAccountResponseData", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseAttributes.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseAttributes.ts new file mode 100644 index 000000000000..1503727f93b2 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseAttributes.ts @@ -0,0 +1,81 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountAuthenticationResponse } from "./DatabricksIntegrationAccountAuthenticationResponse"; +import { DatabricksIntegrationAccountSettingsResponse } from "./DatabricksIntegrationAccountSettingsResponse"; +import { DatabricksIntegrationDataflowsResponse } from "./DatabricksIntegrationDataflowsResponse"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Attributes of a Databricks integration account returned in responses. + */ +export class DatabricksIntegrationAccountResponseAttributes { + /** + * Authentication configured on the Databricks integration account. + */ + "authentication"?: DatabricksIntegrationAccountAuthenticationResponse; + /** + * Dataflows configured on the Databricks integration account, keyed by dataflow id. + */ + "dataflows"?: DatabricksIntegrationDataflowsResponse; + /** + * Human-readable name of the Databricks integration account. + */ + "name": string; + /** + * Settings configured on the Databricks integration account. + */ + "settings": DatabricksIntegrationAccountSettingsResponse; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authentication: { + baseName: "authentication", + type: "DatabricksIntegrationAccountAuthenticationResponse", + }, + dataflows: { + baseName: "dataflows", + type: "DatabricksIntegrationDataflowsResponse", + }, + name: { + baseName: "name", + type: "string", + required: true, + }, + settings: { + baseName: "settings", + type: "DatabricksIntegrationAccountSettingsResponse", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountResponseAttributes.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseData.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseData.ts new file mode 100644 index 000000000000..a9db042aca11 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountResponseData.ts @@ -0,0 +1,73 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountResponseAttributes } from "./DatabricksIntegrationAccountResponseAttributes"; +import { IntegrationAccountType } from "./IntegrationAccountType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Data envelope of a Databricks integration account, including server-assigned identity. + */ +export class DatabricksIntegrationAccountResponseData { + /** + * Attributes of a Databricks integration account returned in responses. + */ + "attributes": DatabricksIntegrationAccountResponseAttributes; + /** + * Server-generated unique identifier of the Databricks integration account. + */ + "id": string; + /** + * The type of the integration account resource. Always `integration-account`. + */ + "type": IntegrationAccountType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "DatabricksIntegrationAccountResponseAttributes", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + type: { + baseName: "type", + type: "IntegrationAccountType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountResponseData.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsRequest.ts new file mode 100644 index 000000000000..479f7ecb223a --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsRequest.ts @@ -0,0 +1,50 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings for creating the Databricks integration account. + */ +export class DatabricksIntegrationAccountSettingsRequest { + /** + * ID of the SQL warehouse used to query the Databricks system tables. + */ + "systemTablesSqlWarehouseId"?: string; + /** + * URL of the Databricks workspace. + */ + "workspaceUrl": string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + systemTablesSqlWarehouseId: { + baseName: "system_tables_sql_warehouse_id", + type: "string", + }, + workspaceUrl: { + baseName: "workspace_url", + type: "string", + required: true, + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountSettingsRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsResponse.ts new file mode 100644 index 000000000000..76a65de3e2ff --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsResponse.ts @@ -0,0 +1,61 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings configured on the Databricks integration account. + */ +export class DatabricksIntegrationAccountSettingsResponse { + /** + * ID of the SQL warehouse used to query the Databricks system tables. + */ + "systemTablesSqlWarehouseId"?: string; + /** + * URL of the Databricks workspace. + */ + "workspaceUrl": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + systemTablesSqlWarehouseId: { + baseName: "system_tables_sql_warehouse_id", + type: "string", + }, + workspaceUrl: { + baseName: "workspace_url", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountSettingsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsUpdate.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsUpdate.ts new file mode 100644 index 000000000000..f1364af85a0b --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountSettingsUpdate.ts @@ -0,0 +1,49 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Settings for updating the Databricks integration account. Only the fields provided are changed. + */ +export class DatabricksIntegrationAccountSettingsUpdate { + /** + * ID of the SQL warehouse used to query the Databricks system tables. + */ + "systemTablesSqlWarehouseId"?: string; + /** + * URL of the Databricks workspace. + */ + "workspaceUrl"?: string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + systemTablesSqlWarehouseId: { + baseName: "system_tables_sql_warehouse_id", + type: "string", + }, + workspaceUrl: { + baseName: "workspace_url", + type: "string", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountSettingsUpdate.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateAttributes.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateAttributes.ts new file mode 100644 index 000000000000..13a2a26fd58d --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateAttributes.ts @@ -0,0 +1,79 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountAuthenticationUpdate } from "./DatabricksIntegrationAccountAuthenticationUpdate"; +import { DatabricksIntegrationAccountSettingsUpdate } from "./DatabricksIntegrationAccountSettingsUpdate"; +import { DatabricksIntegrationDataflowsRequest } from "./DatabricksIntegrationDataflowsRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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`. + */ +export class DatabricksIntegrationAccountUpdateAttributes { + /** + * 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. + */ + "authentication"?: DatabricksIntegrationAccountAuthenticationUpdate; + /** + * 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. + */ + "dataflows"?: DatabricksIntegrationDataflowsRequest; + /** + * Human-readable name of the Databricks integration account. + */ + "name"?: string; + /** + * Settings for updating the Databricks integration account. Only the fields provided are changed. + */ + "settings"?: DatabricksIntegrationAccountSettingsUpdate; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authentication: { + baseName: "authentication", + type: "DatabricksIntegrationAccountAuthenticationUpdate", + }, + dataflows: { + baseName: "dataflows", + type: "DatabricksIntegrationDataflowsRequest", + }, + name: { + baseName: "name", + type: "string", + }, + settings: { + baseName: "settings", + type: "DatabricksIntegrationAccountSettingsUpdate", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountUpdateAttributes.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateData.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateData.ts new file mode 100644 index 000000000000..c2bc6426b074 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateData.ts @@ -0,0 +1,73 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountUpdateAttributes } from "./DatabricksIntegrationAccountUpdateAttributes"; +import { IntegrationAccountType } from "./IntegrationAccountType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Data envelope for updating a Databricks integration account. + */ +export class DatabricksIntegrationAccountUpdateData { + /** + * 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`. + */ + "attributes": DatabricksIntegrationAccountUpdateAttributes; + /** + * Unique identifier of the Databricks integration account to update. + */ + "id": string; + /** + * The type of the integration account resource. Always `integration-account`. + */ + "type": IntegrationAccountType; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + attributes: { + baseName: "attributes", + type: "DatabricksIntegrationAccountUpdateAttributes", + required: true, + }, + id: { + baseName: "id", + type: "string", + required: true, + }, + type: { + baseName: "type", + type: "IntegrationAccountType", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountUpdateData.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateRequest.ts new file mode 100644 index 000000000000..5cc802a2a52f --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountUpdateRequest.ts @@ -0,0 +1,54 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountUpdateData } from "./DatabricksIntegrationAccountUpdateData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Request payload to update a Databricks integration account. + */ +export class DatabricksIntegrationAccountUpdateRequest { + /** + * Data envelope for updating a Databricks integration account. + */ + "data": DatabricksIntegrationAccountUpdateData; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "DatabricksIntegrationAccountUpdateData", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountUpdateRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountsResponse.ts new file mode 100644 index 000000000000..b4d02345ef3f --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationAccountsResponse.ts @@ -0,0 +1,54 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksIntegrationAccountResponseData } from "./DatabricksIntegrationAccountResponseData"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Response payload for a list of Databricks integration accounts. + */ +export class DatabricksIntegrationAccountsResponse { + /** + * List of Databricks integration accounts. + */ + "data": Array; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + data: { + baseName: "data", + type: "Array", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationAccountsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsRequest.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsRequest.ts new file mode 100644 index 000000000000..cc4234d0c599 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsRequest.ts @@ -0,0 +1,69 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksCloudCostMetricsIntegrationDataflowRequest } from "./DatabricksCloudCostMetricsIntegrationDataflowRequest"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest"; +import { DatabricksModelServingMetricsIntegrationDataflowRequest } from "./DatabricksModelServingMetricsIntegrationDataflowRequest"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class DatabricksIntegrationDataflowsRequest { + /** + * The Databricks cloud cost metrics dataflow. + */ + "databricksCloudCostMetrics"?: DatabricksCloudCostMetricsIntegrationDataflowRequest; + /** + * The Databricks Data Jobs Monitoring dataflow. + */ + "databricksDataObservabilityJobsMonitoring"?: DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest; + /** + * The Databricks data observability quality monitoring dataflow. + */ + "databricksDataObservabilityQualityMonitoring"?: DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest; + /** + * 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. + */ + "databricksModelServingMetrics"?: DatabricksModelServingMetricsIntegrationDataflowRequest; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + databricksCloudCostMetrics: { + baseName: "databricks-cloud-cost-metrics", + type: "DatabricksCloudCostMetricsIntegrationDataflowRequest", + }, + databricksDataObservabilityJobsMonitoring: { + baseName: "databricks-data-observability-jobs-monitoring", + type: "DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest", + }, + databricksDataObservabilityQualityMonitoring: { + baseName: "databricks-data-observability-quality-monitoring", + type: "DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest", + }, + databricksModelServingMetrics: { + baseName: "databricks-model-serving-metrics", + type: "DatabricksModelServingMetricsIntegrationDataflowRequest", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationDataflowsRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsResponse.ts b/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsResponse.ts new file mode 100644 index 000000000000..13c8b87ced28 --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksIntegrationDataflowsResponse.ts @@ -0,0 +1,80 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { DatabricksCloudCostMetricsIntegrationDataflowResponse } from "./DatabricksCloudCostMetricsIntegrationDataflowResponse"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse"; +import { DatabricksModelServingMetricsIntegrationDataflowResponse } from "./DatabricksModelServingMetricsIntegrationDataflowResponse"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * Dataflows configured on the Databricks integration account, keyed by dataflow id. + */ +export class DatabricksIntegrationDataflowsResponse { + /** + * The Databricks cloud cost metrics dataflow. + */ + "databricksCloudCostMetrics"?: DatabricksCloudCostMetricsIntegrationDataflowResponse; + /** + * The Databricks Data Jobs Monitoring dataflow. + */ + "databricksDataObservabilityJobsMonitoring"?: DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse; + /** + * The Databricks data observability quality monitoring dataflow. + */ + "databricksDataObservabilityQualityMonitoring"?: DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse; + /** + * 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. + */ + "databricksModelServingMetrics"?: DatabricksModelServingMetricsIntegrationDataflowResponse; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + databricksCloudCostMetrics: { + baseName: "databricks-cloud-cost-metrics", + type: "DatabricksCloudCostMetricsIntegrationDataflowResponse", + }, + databricksDataObservabilityJobsMonitoring: { + baseName: "databricks-data-observability-jobs-monitoring", + type: "DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse", + }, + databricksDataObservabilityQualityMonitoring: { + baseName: "databricks-data-observability-quality-monitoring", + type: "DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse", + }, + databricksModelServingMetrics: { + baseName: "databricks-model-serving-metrics", + type: "DatabricksModelServingMetricsIntegrationDataflowResponse", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksIntegrationDataflowsResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowRequest.ts b/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowRequest.ts new file mode 100644 index 000000000000..143f1c0d46fe --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowRequest.ts @@ -0,0 +1,52 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class DatabricksModelServingMetricsIntegrationDataflowRequest { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksModelServingMetricsIntegrationDataflowRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowResponse.ts b/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowResponse.ts new file mode 100644 index 000000000000..dd4647ebfabe --- /dev/null +++ b/packages/datadog-api-client-v2/models/DatabricksModelServingMetricsIntegrationDataflowResponse.ts @@ -0,0 +1,52 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class DatabricksModelServingMetricsIntegrationDataflowResponse { + /** + * Whether the Databricks dataflow is enabled. + */ + "enabled"?: boolean; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + enabled: { + baseName: "enabled", + type: "boolean", + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return DatabricksModelServingMetricsIntegrationDataflowResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthRequest.ts b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthRequest.ts new file mode 100644 index 000000000000..4bcb2ed88e7f --- /dev/null +++ b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthRequest.ts @@ -0,0 +1,69 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { IntegrationAccountPrivateActionRunnerAuthType } from "./IntegrationAccountPrivateActionRunnerAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * 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. + */ +export class IntegrationAccountPrivateActionRunnerAuthRequest { + /** + * The authentication method type. + */ + "authType": IntegrationAccountPrivateActionRunnerAuthType; + /** + * Unique identifier of the Private Action Runner connection holding the credentials. + */ + "connectionId": string; + /** + * Path of the credential inside the secret backend configured on the runner. + */ + "secretPath"?: string; + /** + * Unique identifier of the user the Private Action Runner connection belongs to. + */ + "userUuid": string; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "IntegrationAccountPrivateActionRunnerAuthType", + required: true, + }, + connectionId: { + baseName: "connection_id", + type: "string", + required: true, + }, + secretPath: { + baseName: "secret_path", + type: "string", + }, + userUuid: { + baseName: "user_uuid", + type: "string", + required: true, + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return IntegrationAccountPrivateActionRunnerAuthRequest.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthResponse.ts b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthResponse.ts new file mode 100644 index 000000000000..fc22be259196 --- /dev/null +++ b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthResponse.ts @@ -0,0 +1,80 @@ +/** + * 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 2020-Present Datadog, Inc. + */ +import { IntegrationAccountPrivateActionRunnerAuthType } from "./IntegrationAccountPrivateActionRunnerAuthType"; + +import { AttributeTypeMap } from "../../datadog-api-client-common/util"; + +/** + * The Private Action Runner authentication method configured on the account. + */ +export class IntegrationAccountPrivateActionRunnerAuthResponse { + /** + * The authentication method type. + */ + "authType": IntegrationAccountPrivateActionRunnerAuthType; + /** + * Unique identifier of the Private Action Runner connection holding the credentials. + */ + "connectionId": string; + /** + * Path of the credential inside the secret backend configured on the runner. + */ + "secretPath"?: string; + /** + * Unique identifier of the user the Private Action Runner connection belongs to. + */ + "userUuid": string; + + /** + * A container for additional, undeclared properties. + * This is a holder for any undeclared properties as specified with + * the 'additionalProperties' keyword in the OAS document. + */ + "additionalProperties"?: { [key: string]: any }; + + /** + * @ignore + */ + "_unparsed"?: boolean; + + /** + * @ignore + */ + static readonly attributeTypeMap: AttributeTypeMap = { + authType: { + baseName: "auth_type", + type: "IntegrationAccountPrivateActionRunnerAuthType", + required: true, + }, + connectionId: { + baseName: "connection_id", + type: "string", + required: true, + }, + secretPath: { + baseName: "secret_path", + type: "string", + }, + userUuid: { + baseName: "user_uuid", + type: "string", + required: true, + }, + additionalProperties: { + baseName: "additionalProperties", + type: "{ [key: string]: any; }", + }, + }; + + /** + * @ignore + */ + static getAttributeTypeMap(): AttributeTypeMap { + return IntegrationAccountPrivateActionRunnerAuthResponse.attributeTypeMap; + } + + public constructor() {} +} diff --git a/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthType.ts b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthType.ts new file mode 100644 index 000000000000..f84a974c4c95 --- /dev/null +++ b/packages/datadog-api-client-v2/models/IntegrationAccountPrivateActionRunnerAuthType.ts @@ -0,0 +1,16 @@ +/** + * 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 2020-Present Datadog, Inc. + */ + +import { UnparsedObject } from "../../datadog-api-client-common/util"; + +/** + * The authentication method type. + */ + +export type IntegrationAccountPrivateActionRunnerAuthType = + | typeof PRIVATE_ACTION_RUNNER + | UnparsedObject; +export const PRIVATE_ACTION_RUNNER = "private-action-runner"; diff --git a/packages/datadog-api-client-v2/models/ObjectSerializer.ts b/packages/datadog-api-client-v2/models/ObjectSerializer.ts index d7ab5132dfd1..3157227d6fd8 100644 --- a/packages/datadog-api-client-v2/models/ObjectSerializer.ts +++ b/packages/datadog-api-client-v2/models/ObjectSerializer.ts @@ -1345,6 +1345,40 @@ import { DataScalarColumn } from "./DataScalarColumn"; import { DataTransform } from "./DataTransform"; import { DataTransformProperties } from "./DataTransformProperties"; import { DatabaseMonitoringTriggerWrapper } from "./DatabaseMonitoringTriggerWrapper"; +import { DatabricksCloudCostMetricsIntegrationDataflowRequest } from "./DatabricksCloudCostMetricsIntegrationDataflowRequest"; +import { DatabricksCloudCostMetricsIntegrationDataflowResponse } from "./DatabricksCloudCostMetricsIntegrationDataflowResponse"; +import { DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest } from "./DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest"; +import { DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse } from "./DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest"; +import { DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse } from "./DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest"; +import { DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse } from "./DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse"; +import { DatabricksIntegrationAccountCreateAttributes } from "./DatabricksIntegrationAccountCreateAttributes"; +import { DatabricksIntegrationAccountCreateData } from "./DatabricksIntegrationAccountCreateData"; +import { DatabricksIntegrationAccountCreateRequest } from "./DatabricksIntegrationAccountCreateRequest"; +import { DatabricksIntegrationAccountOAuthAuthRequest } from "./DatabricksIntegrationAccountOAuthAuthRequest"; +import { DatabricksIntegrationAccountOAuthAuthResponse } from "./DatabricksIntegrationAccountOAuthAuthResponse"; +import { DatabricksIntegrationAccountOAuthAuthUpdate } from "./DatabricksIntegrationAccountOAuthAuthUpdate"; +import { DatabricksIntegrationAccountPatAuthResponse } from "./DatabricksIntegrationAccountPatAuthResponse"; +import { DatabricksIntegrationAccountPatAuthUpdate } from "./DatabricksIntegrationAccountPatAuthUpdate"; +import { DatabricksIntegrationAccountResponse } from "./DatabricksIntegrationAccountResponse"; +import { DatabricksIntegrationAccountResponseAttributes } from "./DatabricksIntegrationAccountResponseAttributes"; +import { DatabricksIntegrationAccountResponseData } from "./DatabricksIntegrationAccountResponseData"; +import { DatabricksIntegrationAccountSettingsRequest } from "./DatabricksIntegrationAccountSettingsRequest"; +import { DatabricksIntegrationAccountSettingsResponse } from "./DatabricksIntegrationAccountSettingsResponse"; +import { DatabricksIntegrationAccountSettingsUpdate } from "./DatabricksIntegrationAccountSettingsUpdate"; +import { DatabricksIntegrationAccountUpdateAttributes } from "./DatabricksIntegrationAccountUpdateAttributes"; +import { DatabricksIntegrationAccountUpdateData } from "./DatabricksIntegrationAccountUpdateData"; +import { DatabricksIntegrationAccountUpdateRequest } from "./DatabricksIntegrationAccountUpdateRequest"; +import { DatabricksIntegrationAccountsResponse } from "./DatabricksIntegrationAccountsResponse"; +import { DatabricksIntegrationDataflowsRequest } from "./DatabricksIntegrationDataflowsRequest"; +import { DatabricksIntegrationDataflowsResponse } from "./DatabricksIntegrationDataflowsResponse"; +import { DatabricksModelServingMetricsIntegrationDataflowRequest } from "./DatabricksModelServingMetricsIntegrationDataflowRequest"; +import { DatabricksModelServingMetricsIntegrationDataflowResponse } from "./DatabricksModelServingMetricsIntegrationDataflowResponse"; import { DatadogAPIKey } from "./DatadogAPIKey"; import { DatadogAPIKeyUpdate } from "./DatadogAPIKeyUpdate"; import { DatadogIntegration } from "./DatadogIntegration"; @@ -2508,6 +2542,8 @@ import { IntegrationAccountBasicAuthRequest } from "./IntegrationAccountBasicAut import { IntegrationAccountBasicAuthResponse } from "./IntegrationAccountBasicAuthResponse"; import { IntegrationAccountBasicAuthUpdate } from "./IntegrationAccountBasicAuthUpdate"; import { IntegrationAccountDataflowStatus } from "./IntegrationAccountDataflowStatus"; +import { IntegrationAccountPrivateActionRunnerAuthRequest } from "./IntegrationAccountPrivateActionRunnerAuthRequest"; +import { IntegrationAccountPrivateActionRunnerAuthResponse } from "./IntegrationAccountPrivateActionRunnerAuthResponse"; import { IntegrationAttributes } from "./IntegrationAttributes"; import { IntegrationIncident } from "./IntegrationIncident"; import { IntegrationIncidentFieldMappingsItems } from "./IntegrationIncidentFieldMappingsItems"; @@ -6714,6 +6750,8 @@ const enumsMap: { [key: string]: any[] } = { DataObservabilityMonitorRunType: ["monitor_run"], DataRelationshipsTeamsDataItemsType: ["teams"], DataTransformType: ["dataTransform"], + DatabricksIntegrationAccountOAuthAuthType: ["databricks-oauth"], + DatabricksIntegrationAccountPatAuthType: ["pat"], DatadogAPIKeyType: ["DatadogAPIKey"], DatadogIntegrationType: ["Datadog"], DatasetReportScheduleResourceType: ["widget_dataset_list"], @@ -7196,6 +7234,7 @@ const enumsMap: { [key: string]: any[] } = { "DATAFLOW_HEALTH_BROKEN", "DATAFLOW_HEALTH_UNKNOWN", ], + IntegrationAccountPrivateActionRunnerAuthType: ["private-action-runner"], IntegrationAccountType: ["integration-account"], IntegrationType: ["integration"], InterfaceAttributesStatus: ["up", "down", "warning", "off"], @@ -10879,6 +10918,71 @@ const typeMap: { [index: string]: any } = { DataTransform: DataTransform, DataTransformProperties: DataTransformProperties, DatabaseMonitoringTriggerWrapper: DatabaseMonitoringTriggerWrapper, + DatabricksCloudCostMetricsIntegrationDataflowRequest: + DatabricksCloudCostMetricsIntegrationDataflowRequest, + DatabricksCloudCostMetricsIntegrationDataflowResponse: + DatabricksCloudCostMetricsIntegrationDataflowResponse, + DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest: + DatabricksCloudCostMetricsIntegrationDataflowSettingsRequest, + DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse: + DatabricksCloudCostMetricsIntegrationDataflowSettingsResponse, + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest: + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowRequest, + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse: + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowResponse, + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest: + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsRequest, + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse: + DatabricksDataObservabilityJobsMonitoringIntegrationDataflowSettingsResponse, + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest: + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowRequest, + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse: + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowResponse, + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest: + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsRequest, + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse: + DatabricksDataObservabilityQualityMonitoringIntegrationDataflowSettingsResponse, + DatabricksIntegrationAccountCreateAttributes: + DatabricksIntegrationAccountCreateAttributes, + DatabricksIntegrationAccountCreateData: + DatabricksIntegrationAccountCreateData, + DatabricksIntegrationAccountCreateRequest: + DatabricksIntegrationAccountCreateRequest, + DatabricksIntegrationAccountOAuthAuthRequest: + DatabricksIntegrationAccountOAuthAuthRequest, + DatabricksIntegrationAccountOAuthAuthResponse: + DatabricksIntegrationAccountOAuthAuthResponse, + DatabricksIntegrationAccountOAuthAuthUpdate: + DatabricksIntegrationAccountOAuthAuthUpdate, + DatabricksIntegrationAccountPatAuthResponse: + DatabricksIntegrationAccountPatAuthResponse, + DatabricksIntegrationAccountPatAuthUpdate: + DatabricksIntegrationAccountPatAuthUpdate, + DatabricksIntegrationAccountResponse: DatabricksIntegrationAccountResponse, + DatabricksIntegrationAccountResponseAttributes: + DatabricksIntegrationAccountResponseAttributes, + DatabricksIntegrationAccountResponseData: + DatabricksIntegrationAccountResponseData, + DatabricksIntegrationAccountSettingsRequest: + DatabricksIntegrationAccountSettingsRequest, + DatabricksIntegrationAccountSettingsResponse: + DatabricksIntegrationAccountSettingsResponse, + DatabricksIntegrationAccountSettingsUpdate: + DatabricksIntegrationAccountSettingsUpdate, + DatabricksIntegrationAccountUpdateAttributes: + DatabricksIntegrationAccountUpdateAttributes, + DatabricksIntegrationAccountUpdateData: + DatabricksIntegrationAccountUpdateData, + DatabricksIntegrationAccountUpdateRequest: + DatabricksIntegrationAccountUpdateRequest, + DatabricksIntegrationAccountsResponse: DatabricksIntegrationAccountsResponse, + DatabricksIntegrationDataflowsRequest: DatabricksIntegrationDataflowsRequest, + DatabricksIntegrationDataflowsResponse: + DatabricksIntegrationDataflowsResponse, + DatabricksModelServingMetricsIntegrationDataflowRequest: + DatabricksModelServingMetricsIntegrationDataflowRequest, + DatabricksModelServingMetricsIntegrationDataflowResponse: + DatabricksModelServingMetricsIntegrationDataflowResponse, DatadogAPIKey: DatadogAPIKey, DatadogAPIKeyUpdate: DatadogAPIKeyUpdate, DatadogIntegration: DatadogIntegration, @@ -12283,6 +12387,10 @@ const typeMap: { [index: string]: any } = { IntegrationAccountBasicAuthResponse: IntegrationAccountBasicAuthResponse, IntegrationAccountBasicAuthUpdate: IntegrationAccountBasicAuthUpdate, IntegrationAccountDataflowStatus: IntegrationAccountDataflowStatus, + IntegrationAccountPrivateActionRunnerAuthRequest: + IntegrationAccountPrivateActionRunnerAuthRequest, + IntegrationAccountPrivateActionRunnerAuthResponse: + IntegrationAccountPrivateActionRunnerAuthResponse, IntegrationAttributes: IntegrationAttributes, IntegrationIncident: IntegrationIncident, IntegrationIncidentFieldMappingsItems: IntegrationIncidentFieldMappingsItems, @@ -16844,6 +16952,20 @@ const oneOfMap: { [index: string]: string[] } = { "DORADeploymentPatchByVersionRemediationByID", "DORADeploymentPatchByVersionRemediationByVersion", ], + DatabricksIntegrationAccountAuthenticationRequest: [ + "DatabricksIntegrationAccountOAuthAuthRequest", + "IntegrationAccountPrivateActionRunnerAuthRequest", + ], + DatabricksIntegrationAccountAuthenticationResponse: [ + "DatabricksIntegrationAccountOAuthAuthResponse", + "IntegrationAccountPrivateActionRunnerAuthResponse", + "DatabricksIntegrationAccountPatAuthResponse", + ], + DatabricksIntegrationAccountAuthenticationUpdate: [ + "DatabricksIntegrationAccountOAuthAuthUpdate", + "IntegrationAccountPrivateActionRunnerAuthRequest", + "DatabricksIntegrationAccountPatAuthUpdate", + ], DatadogCredentials: ["DatadogAPIKey"], DatadogCredentialsUpdate: ["DatadogAPIKeyUpdate"], DegradationIncluded: ["StatusPagesUser", "StatusPageAsIncluded"],