@pulumi/databricks 1.35.0-alpha.1711603543 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/types/output.d.ts CHANGED
@@ -1334,9 +1334,9 @@ export interface GetJobJobSettingsSettingsTask {
1334
1334
  webhookNotifications?: outputs.GetJobJobSettingsSettingsTaskWebhookNotifications;
1335
1335
  }
1336
1336
  export interface GetJobJobSettingsSettingsTaskConditionTask {
1337
- left?: string;
1338
- op?: string;
1339
- right?: string;
1337
+ left: string;
1338
+ op: string;
1339
+ right: string;
1340
1340
  }
1341
1341
  export interface GetJobJobSettingsSettingsTaskDbtTask {
1342
1342
  catalog?: string;
@@ -1352,6 +1352,7 @@ export interface GetJobJobSettingsSettingsTaskDependsOn {
1352
1352
  taskKey: string;
1353
1353
  }
1354
1354
  export interface GetJobJobSettingsSettingsTaskEmailNotifications {
1355
+ noAlertForSkippedRuns?: boolean;
1355
1356
  onDurationWarningThresholdExceededs?: string[];
1356
1357
  onFailures?: string[];
1357
1358
  onStarts?: string[];
@@ -1392,9 +1393,9 @@ export interface GetJobJobSettingsSettingsTaskForEachTaskTask {
1392
1393
  webhookNotifications?: outputs.GetJobJobSettingsSettingsTaskForEachTaskTaskWebhookNotifications;
1393
1394
  }
1394
1395
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskConditionTask {
1395
- left?: string;
1396
- op?: string;
1397
- right?: string;
1396
+ left: string;
1397
+ op: string;
1398
+ right: string;
1398
1399
  }
1399
1400
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskDbtTask {
1400
1401
  catalog?: string;
@@ -1410,6 +1411,7 @@ export interface GetJobJobSettingsSettingsTaskForEachTaskTaskDependsOn {
1410
1411
  taskKey: string;
1411
1412
  }
1412
1413
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskEmailNotifications {
1414
+ noAlertForSkippedRuns?: boolean;
1413
1415
  onDurationWarningThresholdExceededs?: string[];
1414
1416
  onFailures?: string[];
1415
1417
  onStarts?: string[];
@@ -1674,25 +1676,25 @@ export interface GetJobJobSettingsSettingsTaskForEachTaskTaskWebhookNotification
1674
1676
  /**
1675
1677
  * the id of databricks.Job if the resource was matched by name.
1676
1678
  */
1677
- id?: string;
1679
+ id: string;
1678
1680
  }
1679
1681
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskWebhookNotificationsOnFailure {
1680
1682
  /**
1681
1683
  * the id of databricks.Job if the resource was matched by name.
1682
1684
  */
1683
- id?: string;
1685
+ id: string;
1684
1686
  }
1685
1687
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskWebhookNotificationsOnStart {
1686
1688
  /**
1687
1689
  * the id of databricks.Job if the resource was matched by name.
1688
1690
  */
1689
- id?: string;
1691
+ id: string;
1690
1692
  }
1691
1693
  export interface GetJobJobSettingsSettingsTaskForEachTaskTaskWebhookNotificationsOnSuccess {
1692
1694
  /**
1693
1695
  * the id of databricks.Job if the resource was matched by name.
1694
1696
  */
1695
- id?: string;
1697
+ id: string;
1696
1698
  }
1697
1699
  export interface GetJobJobSettingsSettingsTaskHealth {
1698
1700
  rules: outputs.GetJobJobSettingsSettingsTaskHealthRule[];
@@ -1953,35 +1955,42 @@ export interface GetJobJobSettingsSettingsTaskWebhookNotificationsOnDurationWarn
1953
1955
  /**
1954
1956
  * the id of databricks.Job if the resource was matched by name.
1955
1957
  */
1956
- id?: string;
1958
+ id: string;
1957
1959
  }
1958
1960
  export interface GetJobJobSettingsSettingsTaskWebhookNotificationsOnFailure {
1959
1961
  /**
1960
1962
  * the id of databricks.Job if the resource was matched by name.
1961
1963
  */
1962
- id?: string;
1964
+ id: string;
1963
1965
  }
1964
1966
  export interface GetJobJobSettingsSettingsTaskWebhookNotificationsOnStart {
1965
1967
  /**
1966
1968
  * the id of databricks.Job if the resource was matched by name.
1967
1969
  */
1968
- id?: string;
1970
+ id: string;
1969
1971
  }
1970
1972
  export interface GetJobJobSettingsSettingsTaskWebhookNotificationsOnSuccess {
1971
1973
  /**
1972
1974
  * the id of databricks.Job if the resource was matched by name.
1973
1975
  */
1974
- id?: string;
1976
+ id: string;
1975
1977
  }
1976
1978
  export interface GetJobJobSettingsSettingsTrigger {
1977
- fileArrival: outputs.GetJobJobSettingsSettingsTriggerFileArrival;
1979
+ fileArrival?: outputs.GetJobJobSettingsSettingsTriggerFileArrival;
1978
1980
  pauseStatus?: string;
1981
+ tableUpdate?: outputs.GetJobJobSettingsSettingsTriggerTableUpdate;
1979
1982
  }
1980
1983
  export interface GetJobJobSettingsSettingsTriggerFileArrival {
1981
1984
  minTimeBetweenTriggersSeconds?: number;
1982
1985
  url: string;
1983
1986
  waitAfterLastChangeSeconds?: number;
1984
1987
  }
1988
+ export interface GetJobJobSettingsSettingsTriggerTableUpdate {
1989
+ condition?: string;
1990
+ minTimeBetweenTriggersSeconds?: number;
1991
+ tableNames: string[];
1992
+ waitAfterLastChangeSeconds?: number;
1993
+ }
1985
1994
  export interface GetJobJobSettingsSettingsWebhookNotifications {
1986
1995
  onDurationWarningThresholdExceededs?: outputs.GetJobJobSettingsSettingsWebhookNotificationsOnDurationWarningThresholdExceeded[];
1987
1996
  onFailures?: outputs.GetJobJobSettingsSettingsWebhookNotificationsOnFailure[];
@@ -1992,25 +2001,25 @@ export interface GetJobJobSettingsSettingsWebhookNotificationsOnDurationWarningT
1992
2001
  /**
1993
2002
  * the id of databricks.Job if the resource was matched by name.
1994
2003
  */
1995
- id?: string;
2004
+ id: string;
1996
2005
  }
1997
2006
  export interface GetJobJobSettingsSettingsWebhookNotificationsOnFailure {
1998
2007
  /**
1999
2008
  * the id of databricks.Job if the resource was matched by name.
2000
2009
  */
2001
- id?: string;
2010
+ id: string;
2002
2011
  }
2003
2012
  export interface GetJobJobSettingsSettingsWebhookNotificationsOnStart {
2004
2013
  /**
2005
2014
  * the id of databricks.Job if the resource was matched by name.
2006
2015
  */
2007
- id?: string;
2016
+ id: string;
2008
2017
  }
2009
2018
  export interface GetJobJobSettingsSettingsWebhookNotificationsOnSuccess {
2010
2019
  /**
2011
2020
  * the id of databricks.Job if the resource was matched by name.
2012
2021
  */
2013
- id?: string;
2022
+ id: string;
2014
2023
  }
2015
2024
  export interface GetMetastoreMetastoreInfo {
2016
2025
  cloud?: string;
@@ -2982,7 +2991,7 @@ export interface JobTask {
2982
2991
  */
2983
2992
  jobClusterKey?: string;
2984
2993
  /**
2985
- * (Set) An optional list of libraries to be installed on the cluster that will execute the job. Please consult libraries section for databricks.Cluster resource.
2994
+ * (Set) An optional list of libraries to be installed on the cluster that will execute the job.
2986
2995
  */
2987
2996
  libraries?: outputs.JobTaskLibrary[];
2988
2997
  /**
@@ -3035,17 +3044,17 @@ export interface JobTaskConditionTask {
3035
3044
  /**
3036
3045
  * The left operand of the condition task. It could be a string value, job state, or a parameter reference.
3037
3046
  */
3038
- left?: string;
3047
+ left: string;
3039
3048
  /**
3040
3049
  * The string specifying the operation used to compare operands. Currently, following operators are supported: `EQUAL_TO`, `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL`, `NOT_EQUAL`. (Check the [API docs](https://docs.databricks.com/api/workspace/jobs/create) for the latest information).
3041
3050
  *
3042
3051
  * This task does not require a cluster to execute and does not support retries or notifications.
3043
3052
  */
3044
- op?: string;
3053
+ op: string;
3045
3054
  /**
3046
3055
  * The right operand of the condition task. It could be a string value, job state, or parameter reference.
3047
3056
  */
3048
- right?: string;
3057
+ right: string;
3049
3058
  }
3050
3059
  export interface JobTaskDbtTask {
3051
3060
  /**
@@ -3092,6 +3101,10 @@ export interface JobTaskDependsOn {
3092
3101
  taskKey: string;
3093
3102
  }
3094
3103
  export interface JobTaskEmailNotifications {
3104
+ /**
3105
+ * (Bool) don't send alert for skipped runs. (It's recommended to use the corresponding setting in the `notificationSettings` configuration block).
3106
+ */
3107
+ noAlertForSkippedRuns?: boolean;
3095
3108
  /**
3096
3109
  * (List) list of emails to notify when the duration of a run exceeds the threshold specified by the `RUN_DURATION_SECONDS` metric in the `health` block.
3097
3110
  */
@@ -3149,7 +3162,7 @@ export interface JobTaskForEachTaskTask {
3149
3162
  */
3150
3163
  jobClusterKey?: string;
3151
3164
  /**
3152
- * (Set) An optional list of libraries to be installed on the cluster that will execute the job. Please consult libraries section for databricks.Cluster resource.
3165
+ * (Set) An optional list of libraries to be installed on the cluster that will execute the job.
3153
3166
  */
3154
3167
  libraries?: outputs.JobTaskForEachTaskTaskLibrary[];
3155
3168
  /**
@@ -3202,17 +3215,17 @@ export interface JobTaskForEachTaskTaskConditionTask {
3202
3215
  /**
3203
3216
  * The left operand of the condition task. It could be a string value, job state, or a parameter reference.
3204
3217
  */
3205
- left?: string;
3218
+ left: string;
3206
3219
  /**
3207
3220
  * The string specifying the operation used to compare operands. Currently, following operators are supported: `EQUAL_TO`, `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL`, `NOT_EQUAL`. (Check the [API docs](https://docs.databricks.com/api/workspace/jobs/create) for the latest information).
3208
3221
  *
3209
3222
  * This task does not require a cluster to execute and does not support retries or notifications.
3210
3223
  */
3211
- op?: string;
3224
+ op: string;
3212
3225
  /**
3213
3226
  * The right operand of the condition task. It could be a string value, job state, or parameter reference.
3214
3227
  */
3215
- right?: string;
3228
+ right: string;
3216
3229
  }
3217
3230
  export interface JobTaskForEachTaskTaskDbtTask {
3218
3231
  /**
@@ -3259,6 +3272,10 @@ export interface JobTaskForEachTaskTaskDependsOn {
3259
3272
  taskKey: string;
3260
3273
  }
3261
3274
  export interface JobTaskForEachTaskTaskEmailNotifications {
3275
+ /**
3276
+ * (Bool) don't send alert for skipped runs. (It's recommended to use the corresponding setting in the `notificationSettings` configuration block).
3277
+ */
3278
+ noAlertForSkippedRuns?: boolean;
3262
3279
  /**
3263
3280
  * (List) list of emails to notify when the duration of a run exceeds the threshold specified by the `RUN_DURATION_SECONDS` metric in the `health` block.
3264
3281
  */
@@ -3737,7 +3754,7 @@ export interface JobTaskForEachTaskTaskWebhookNotificationsOnDurationWarningThre
3737
3754
  *
3738
3755
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
3739
3756
  */
3740
- id?: string;
3757
+ id: string;
3741
3758
  }
3742
3759
  export interface JobTaskForEachTaskTaskWebhookNotificationsOnFailure {
3743
3760
  /**
@@ -3745,7 +3762,7 @@ export interface JobTaskForEachTaskTaskWebhookNotificationsOnFailure {
3745
3762
  *
3746
3763
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
3747
3764
  */
3748
- id?: string;
3765
+ id: string;
3749
3766
  }
3750
3767
  export interface JobTaskForEachTaskTaskWebhookNotificationsOnStart {
3751
3768
  /**
@@ -3753,7 +3770,7 @@ export interface JobTaskForEachTaskTaskWebhookNotificationsOnStart {
3753
3770
  *
3754
3771
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
3755
3772
  */
3756
- id?: string;
3773
+ id: string;
3757
3774
  }
3758
3775
  export interface JobTaskForEachTaskTaskWebhookNotificationsOnSuccess {
3759
3776
  /**
@@ -3761,7 +3778,7 @@ export interface JobTaskForEachTaskTaskWebhookNotificationsOnSuccess {
3761
3778
  *
3762
3779
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
3763
3780
  */
3764
- id?: string;
3781
+ id: string;
3765
3782
  }
3766
3783
  export interface JobTaskHealth {
3767
3784
  /**
@@ -4227,7 +4244,7 @@ export interface JobTaskWebhookNotificationsOnDurationWarningThresholdExceeded {
4227
4244
  *
4228
4245
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4229
4246
  */
4230
- id?: string;
4247
+ id: string;
4231
4248
  }
4232
4249
  export interface JobTaskWebhookNotificationsOnFailure {
4233
4250
  /**
@@ -4235,7 +4252,7 @@ export interface JobTaskWebhookNotificationsOnFailure {
4235
4252
  *
4236
4253
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4237
4254
  */
4238
- id?: string;
4255
+ id: string;
4239
4256
  }
4240
4257
  export interface JobTaskWebhookNotificationsOnStart {
4241
4258
  /**
@@ -4243,7 +4260,7 @@ export interface JobTaskWebhookNotificationsOnStart {
4243
4260
  *
4244
4261
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4245
4262
  */
4246
- id?: string;
4263
+ id: string;
4247
4264
  }
4248
4265
  export interface JobTaskWebhookNotificationsOnSuccess {
4249
4266
  /**
@@ -4251,17 +4268,21 @@ export interface JobTaskWebhookNotificationsOnSuccess {
4251
4268
  *
4252
4269
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4253
4270
  */
4254
- id?: string;
4271
+ id: string;
4255
4272
  }
4256
4273
  export interface JobTrigger {
4257
4274
  /**
4258
4275
  * configuration block to define a trigger for [File Arrival events](https://learn.microsoft.com/en-us/azure/databricks/workflows/jobs/file-arrival-triggers) consisting of following attributes:
4259
4276
  */
4260
- fileArrival: outputs.JobTriggerFileArrival;
4277
+ fileArrival?: outputs.JobTriggerFileArrival;
4261
4278
  /**
4262
4279
  * Indicate whether this trigger is paused or not. Either `PAUSED` or `UNPAUSED`. When the `pauseStatus` field is omitted in the block, the server will default to using `UNPAUSED` as a value for `pauseStatus`.
4263
4280
  */
4264
4281
  pauseStatus?: string;
4282
+ /**
4283
+ * configuration block to define a trigger for Table Update events consisting of following attributes:
4284
+ */
4285
+ tableUpdate?: outputs.JobTriggerTableUpdate;
4265
4286
  }
4266
4287
  export interface JobTriggerFileArrival {
4267
4288
  /**
@@ -4277,6 +4298,24 @@ export interface JobTriggerFileArrival {
4277
4298
  */
4278
4299
  waitAfterLastChangeSeconds?: number;
4279
4300
  }
4301
+ export interface JobTriggerTableUpdate {
4302
+ /**
4303
+ * The table(s) condition based on which to trigger a job run. Valid values are `ANY_UPDATED` or `ALL_UPDATED`.
4304
+ */
4305
+ condition?: string;
4306
+ /**
4307
+ * If set, the trigger starts a run only after the specified amount of time passed since the last time the trigger fired. The minimum allowed value is 60 seconds.
4308
+ */
4309
+ minTimeBetweenTriggersSeconds?: number;
4310
+ /**
4311
+ * A list of Delta tables to monitor for changes. The table name must be in the format `catalog_name.schema_name.table_name`.
4312
+ */
4313
+ tableNames: string[];
4314
+ /**
4315
+ * If set, the trigger starts a run only after no file activity has occurred for the specified amount of time. This makes it possible to wait for a batch of incoming files to arrive before triggering a run. The minimum allowed value is 60 seconds.
4316
+ */
4317
+ waitAfterLastChangeSeconds?: number;
4318
+ }
4280
4319
  export interface JobWebhookNotifications {
4281
4320
  /**
4282
4321
  * (List) list of notification IDs to call when the duration of a run exceeds the threshold specified by the `RUN_DURATION_SECONDS` metric in the `health` block.
@@ -4311,7 +4350,7 @@ export interface JobWebhookNotificationsOnDurationWarningThresholdExceeded {
4311
4350
  *
4312
4351
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4313
4352
  */
4314
- id?: string;
4353
+ id: string;
4315
4354
  }
4316
4355
  export interface JobWebhookNotificationsOnFailure {
4317
4356
  /**
@@ -4319,7 +4358,7 @@ export interface JobWebhookNotificationsOnFailure {
4319
4358
  *
4320
4359
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4321
4360
  */
4322
- id?: string;
4361
+ id: string;
4323
4362
  }
4324
4363
  export interface JobWebhookNotificationsOnStart {
4325
4364
  /**
@@ -4327,7 +4366,7 @@ export interface JobWebhookNotificationsOnStart {
4327
4366
  *
4328
4367
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4329
4368
  */
4330
- id?: string;
4369
+ id: string;
4331
4370
  }
4332
4371
  export interface JobWebhookNotificationsOnSuccess {
4333
4372
  /**
@@ -4335,7 +4374,85 @@ export interface JobWebhookNotificationsOnSuccess {
4335
4374
  *
4336
4375
  * > **Note** The following configuration blocks can be standalone or nested inside a `task` block
4337
4376
  */
4338
- id?: string;
4377
+ id: string;
4378
+ }
4379
+ export interface LakehouseMonitorCustomMetric {
4380
+ /**
4381
+ * [create metric definition]: https://docs.databricks.com/en/lakehouse-monitoring/custom-metrics.html#create-definition
4382
+ */
4383
+ definition?: string;
4384
+ /**
4385
+ * Columns on the monitored table to apply the custom metrics to.
4386
+ */
4387
+ inputColumns?: string[];
4388
+ /**
4389
+ * Name of the custom metric.
4390
+ */
4391
+ name?: string;
4392
+ /**
4393
+ * The output type of the custom metric.
4394
+ */
4395
+ outputDataType?: string;
4396
+ /**
4397
+ * The type of the custom metric.
4398
+ */
4399
+ type?: string;
4400
+ }
4401
+ export interface LakehouseMonitorDataClassificationConfig {
4402
+ enabled?: boolean;
4403
+ }
4404
+ export interface LakehouseMonitorInferenceLog {
4405
+ /**
4406
+ * List of granularities to use when aggregating data into time windows based on their timestamp.
4407
+ */
4408
+ granularities?: string[];
4409
+ /**
4410
+ * Column of the model label
4411
+ */
4412
+ labelCol?: string;
4413
+ /**
4414
+ * Column of the model id or version
4415
+ */
4416
+ modelIdCol?: string;
4417
+ /**
4418
+ * Column of the model prediction
4419
+ */
4420
+ predictionCol?: string;
4421
+ /**
4422
+ * Column of the model prediction probabilities
4423
+ */
4424
+ predictionProbaCol?: string;
4425
+ /**
4426
+ * Problem type the model aims to solve. Either `PROBLEM_TYPE_CLASSIFICATION` or `PROBLEM_TYPE_REGRESSION`
4427
+ */
4428
+ problemType?: string;
4429
+ /**
4430
+ * Column of the timestamp of predictions
4431
+ */
4432
+ timestampCol?: string;
4433
+ }
4434
+ export interface LakehouseMonitorNotifications {
4435
+ onFailure?: outputs.LakehouseMonitorNotificationsOnFailure;
4436
+ }
4437
+ export interface LakehouseMonitorNotificationsOnFailure {
4438
+ emailAddresses?: string[];
4439
+ }
4440
+ export interface LakehouseMonitorSchedule {
4441
+ pauseStatus?: string;
4442
+ quartzCronExpression?: string;
4443
+ timezoneId?: string;
4444
+ }
4445
+ export interface LakehouseMonitorSnapshot {
4446
+ }
4447
+ export interface LakehouseMonitorTimeSeries {
4448
+ /**
4449
+ * List of granularities to use when aggregating data into time windows based on their timestamp.
4450
+ */
4451
+ granularities?: string[];
4452
+ /**
4453
+ * Column of the timestamp of predictions
4454
+ */
4455
+ timestampCol?: string;
4339
4456
  }
4340
4457
  export interface LibraryCran {
4341
4458
  package: string;
@@ -4411,9 +4528,18 @@ export interface MlflowWebhookJobSpec {
4411
4528
  workspaceUrl?: string;
4412
4529
  }
4413
4530
  export interface ModelServingConfig {
4531
+ /**
4532
+ * Configuration for Inference Tables which automatically logs requests and responses to Unity Catalog.
4533
+ */
4414
4534
  autoCaptureConfig?: outputs.ModelServingConfigAutoCaptureConfig;
4535
+ /**
4536
+ * A list of served entities for the endpoint to serve. A serving endpoint can have up to 10 served entities.
4537
+ */
4538
+ servedEntities?: outputs.ModelServingConfigServedEntity[];
4415
4539
  /**
4416
4540
  * Each block represents a served model for the endpoint to serve. A model serving endpoint can have up to 10 served models.
4541
+ *
4542
+ * @deprecated Please use 'config.served_entities' instead of 'config.served_models'.
4417
4543
  */
4418
4544
  servedModels?: outputs.ModelServingConfigServedModel[];
4419
4545
  /**
@@ -4422,11 +4548,192 @@ export interface ModelServingConfig {
4422
4548
  trafficConfig: outputs.ModelServingConfigTrafficConfig;
4423
4549
  }
4424
4550
  export interface ModelServingConfigAutoCaptureConfig {
4551
+ /**
4552
+ * The name of the catalog in Unity Catalog. NOTE: On update, you cannot change the catalog name if it was already set.
4553
+ */
4425
4554
  catalogName?: string;
4555
+ /**
4556
+ * If inference tables are enabled or not. NOTE: If you have already disabled payload logging once, you cannot enable again.
4557
+ */
4426
4558
  enabled?: boolean;
4559
+ /**
4560
+ * The name of the schema in Unity Catalog. NOTE: On update, you cannot change the schema name if it was already set.
4561
+ */
4427
4562
  schemaName?: string;
4563
+ /**
4564
+ * The prefix of the table in Unity Catalog. NOTE: On update, you cannot change the prefix name if it was already set.
4565
+ */
4428
4566
  tableNamePrefix?: string;
4429
4567
  }
4568
+ export interface ModelServingConfigServedEntity {
4569
+ /**
4570
+ * The name of the entity to be served. The entity may be a model in the Databricks Model Registry, a model in the Unity Catalog (UC), or a function of type `FEATURE_SPEC` in the UC. If it is a UC object, the full name of the object should be given in the form of `catalog_name.schema_name.model_name`.
4571
+ */
4572
+ entityName?: string;
4573
+ /**
4574
+ * The version of the model in Databricks Model Registry to be served or empty if the entity is a `FEATURE_SPEC`.
4575
+ */
4576
+ entityVersion?: string;
4577
+ /**
4578
+ * An object containing a set of optional, user-specified environment variable key-value pairs used for serving this entity. Note: this is an experimental feature and subject to change. Example entity environment variables that refer to Databricks secrets: ```{"OPENAI_API_KEY": "{{secrets/my_scope/my_key}}", "DATABRICKS_TOKEN": "{{secrets/my_scope2/my_key2}}"}```
4579
+ */
4580
+ environmentVars?: {
4581
+ [key: string]: any;
4582
+ };
4583
+ /**
4584
+ * The external model to be served. NOTE: Only one of `externalModel` and (`entityName`, `entityVersion`, `workloadSize`, `workloadType`, and `scaleToZeroEnabled`) can be specified with the latter set being used for custom model serving for a Databricks registered model. When an `externalModel` is present, the served entities list can only have one `servedEntity` object. For an existing endpoint with `externalModel`, it can not be updated to an endpoint without `externalModel`. If the endpoint is created without `externalModel`, users cannot update it to add `externalModel` later.
4585
+ */
4586
+ externalModel?: outputs.ModelServingConfigServedEntityExternalModel;
4587
+ /**
4588
+ * ARN of the instance profile that the served entity uses to access AWS resources.
4589
+ */
4590
+ instanceProfileArn?: string;
4591
+ /**
4592
+ * The maximum tokens per second that the endpoint can scale up to.
4593
+ */
4594
+ maxProvisionedThroughput?: number;
4595
+ /**
4596
+ * The minimum tokens per second that the endpoint can scale down to.
4597
+ */
4598
+ minProvisionedThroughput?: number;
4599
+ /**
4600
+ * The name of the external model.
4601
+ */
4602
+ name: string;
4603
+ /**
4604
+ * Whether the compute resources for the served entity should scale down to zero.
4605
+ */
4606
+ scaleToZeroEnabled?: boolean;
4607
+ /**
4608
+ * The workload size of the served entity. The workload size corresponds to a range of provisioned concurrency that the compute autoscales between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are `Small` (4 - 4 provisioned concurrency), `Medium` (8 - 16 provisioned concurrency), and `Large` (16 - 64 provisioned concurrency). If `scale-to-zero` is enabled, the lower bound of the provisioned concurrency for each workload size is 0.
4609
+ */
4610
+ workloadSize?: string;
4611
+ /**
4612
+ * The workload type of the served entity. The workload type selects which type of compute to use in the endpoint. The default value for this parameter is `CPU`. For deep learning workloads, GPU acceleration is available by selecting workload types like `GPU_SMALL` and others. See the available [GPU types](https://docs.databricks.com/machine-learning/model-serving/create-manage-serving-endpoints.html#gpu-workload-types).
4613
+ */
4614
+ workloadType?: string;
4615
+ }
4616
+ export interface ModelServingConfigServedEntityExternalModel {
4617
+ /**
4618
+ * AI21Labs Config
4619
+ */
4620
+ ai21labsConfig?: outputs.ModelServingConfigServedEntityExternalModelAi21labsConfig;
4621
+ /**
4622
+ * Amazon Bedrock Config
4623
+ */
4624
+ amazonBedrockConfig?: outputs.ModelServingConfigServedEntityExternalModelAmazonBedrockConfig;
4625
+ /**
4626
+ * Anthropic Config
4627
+ */
4628
+ anthropicConfig?: outputs.ModelServingConfigServedEntityExternalModelAnthropicConfig;
4629
+ /**
4630
+ * Cohere Config
4631
+ */
4632
+ cohereConfig?: outputs.ModelServingConfigServedEntityExternalModelCohereConfig;
4633
+ /**
4634
+ * Databricks Model Serving Config
4635
+ */
4636
+ databricksModelServingConfig?: outputs.ModelServingConfigServedEntityExternalModelDatabricksModelServingConfig;
4637
+ /**
4638
+ * The name of the model serving endpoint. This field is required and must be unique across a workspace. An endpoint name can consist of alphanumeric characters, dashes, and underscores. NOTE: Changing this name will delete the existing endpoint and create a new endpoint with the update name.
4639
+ */
4640
+ name: string;
4641
+ /**
4642
+ * OpenAI Config
4643
+ */
4644
+ openaiConfig?: outputs.ModelServingConfigServedEntityExternalModelOpenaiConfig;
4645
+ /**
4646
+ * PaLM Config
4647
+ */
4648
+ palmConfig?: outputs.ModelServingConfigServedEntityExternalModelPalmConfig;
4649
+ /**
4650
+ * The name of the provider for the external model. Currently, the supported providers are `ai21labs`, `anthropic`, `amazon-bedrock`, `cohere`, `databricks-model-serving`, `openai`, and `palm`.
4651
+ */
4652
+ provider: string;
4653
+ /**
4654
+ * The task type of the external model.
4655
+ */
4656
+ task: string;
4657
+ }
4658
+ export interface ModelServingConfigServedEntityExternalModelAi21labsConfig {
4659
+ /**
4660
+ * The Databricks secret key reference for an AI21Labs API key.
4661
+ */
4662
+ ai21labsApiKey: string;
4663
+ }
4664
+ export interface ModelServingConfigServedEntityExternalModelAmazonBedrockConfig {
4665
+ /**
4666
+ * The Databricks secret key reference for an AWS Access Key ID with permissions to interact with Bedrock services.
4667
+ */
4668
+ awsAccessKeyId: string;
4669
+ /**
4670
+ * The AWS region to use. Bedrock has to be enabled there.
4671
+ */
4672
+ awsRegion: string;
4673
+ /**
4674
+ * The Databricks secret key reference for an AWS Secret Access Key paired with the access key ID, with permissions to interact with Bedrock services.
4675
+ */
4676
+ awsSecretAccessKey: string;
4677
+ /**
4678
+ * The underlying provider in Amazon Bedrock. Supported values (case insensitive) include: `Anthropic`, `Cohere`, `AI21Labs`, `Amazon`.
4679
+ */
4680
+ bedrockProvider: string;
4681
+ }
4682
+ export interface ModelServingConfigServedEntityExternalModelAnthropicConfig {
4683
+ /**
4684
+ * The Databricks secret key reference for an Anthropic API key.
4685
+ * The Databricks secret key reference for an Anthropic API key.
4686
+ */
4687
+ anthropicApiKey: string;
4688
+ }
4689
+ export interface ModelServingConfigServedEntityExternalModelCohereConfig {
4690
+ /**
4691
+ * The Databricks secret key reference for a Cohere API key.
4692
+ */
4693
+ cohereApiKey: string;
4694
+ }
4695
+ export interface ModelServingConfigServedEntityExternalModelDatabricksModelServingConfig {
4696
+ /**
4697
+ * The Databricks secret key reference for a Databricks API token that corresponds to a user or service principal with Can Query access to the model serving endpoint pointed to by this external model.
4698
+ */
4699
+ databricksApiToken: string;
4700
+ /**
4701
+ * The URL of the Databricks workspace containing the model serving endpoint pointed to by this external model.
4702
+ */
4703
+ databricksWorkspaceUrl: string;
4704
+ }
4705
+ export interface ModelServingConfigServedEntityExternalModelOpenaiConfig {
4706
+ /**
4707
+ * This is the base URL for the OpenAI API (default: "https://api.openai.com/v1"). For Azure OpenAI, this field is required, and is the base URL for the Azure OpenAI API service provided by Azure.
4708
+ */
4709
+ openaiApiBase?: string;
4710
+ /**
4711
+ * The Databricks secret key reference for an OpenAI or Azure OpenAI API key.
4712
+ */
4713
+ openaiApiKey: string;
4714
+ /**
4715
+ * This is an optional field to specify the type of OpenAI API to use. For Azure OpenAI, this field is required, and adjust this parameter to represent the preferred security access validation protocol. For access token validation, use azure. For authentication using Azure Active Directory (Azure AD) use, azuread.
4716
+ */
4717
+ openaiApiType?: string;
4718
+ /**
4719
+ * This is an optional field to specify the OpenAI API version. For Azure OpenAI, this field is required, and is the version of the Azure OpenAI service to utilize, specified by a date.
4720
+ */
4721
+ openaiApiVersion?: string;
4722
+ /**
4723
+ * This field is only required for Azure OpenAI and is the name of the deployment resource for the Azure OpenAI service.
4724
+ */
4725
+ openaiDeploymentName?: string;
4726
+ /**
4727
+ * This is an optional field to specify the organization in OpenAI or Azure OpenAI.
4728
+ */
4729
+ openaiOrganization?: string;
4730
+ }
4731
+ export interface ModelServingConfigServedEntityExternalModelPalmConfig {
4732
+ /**
4733
+ * The Databricks secret key reference for a PaLM API key.
4734
+ */
4735
+ palmApiKey: string;
4736
+ }
4430
4737
  export interface ModelServingConfigServedModel {
4431
4738
  /**
4432
4739
  * a map of environment variable name/values that will be used for serving this model. Environment variables may refer to Databricks secrets using the standard syntax: `{{secrets/secret_scope/secret_key}}`.
@@ -4451,11 +4758,11 @@ export interface ModelServingConfigServedModel {
4451
4758
  */
4452
4759
  name: string;
4453
4760
  /**
4454
- * Whether the compute resources for the served model should scale down to zero. If scale-to-zero is enabled, the lower bound of the provisioned concurrency for each workload size will be 0. The default value is `true`.
4761
+ * Whether the compute resources for the served model should scale down to zero. If `scale-to-zero` is enabled, the lower bound of the provisioned concurrency for each workload size will be 0. The default value is `true`.
4455
4762
  */
4456
4763
  scaleToZeroEnabled?: boolean;
4457
4764
  /**
4458
- * The workload size of the served model. The workload size corresponds to a range of provisioned concurrency that the compute will autoscale between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are "Small" (4 - 4 provisioned concurrency), "Medium" (8 - 16 provisioned concurrency), and "Large" (16 - 64 provisioned concurrency).
4765
+ * The workload size of the served model. The workload size corresponds to a range of provisioned concurrency that the compute will autoscale between. A single unit of provisioned concurrency can process one request at a time. Valid workload sizes are `Small` (4 - 4 provisioned concurrency), `Medium` (8 - 16 provisioned concurrency), and `Large` (16 - 64 provisioned concurrency).
4459
4766
  */
4460
4767
  workloadSize: string;
4461
4768
  /**
@@ -4465,14 +4772,11 @@ export interface ModelServingConfigServedModel {
4465
4772
  }
4466
4773
  export interface ModelServingConfigTrafficConfig {
4467
4774
  /**
4468
- * Each block represents a route that defines traffic to each served model. Each `servedModels` block needs to have a corresponding `routes` block
4775
+ * Each block represents a route that defines traffic to each served entity. Each `servedEntity` block needs to have a corresponding `routes` block.
4469
4776
  */
4470
4777
  routes?: outputs.ModelServingConfigTrafficConfigRoute[];
4471
4778
  }
4472
4779
  export interface ModelServingConfigTrafficConfigRoute {
4473
- /**
4474
- * The name of the served model this route configures traffic for. This needs to match the name of a `servedModels` block
4475
- */
4476
4780
  servedModelName: string;
4477
4781
  /**
4478
4782
  * The percentage of endpoint traffic to send to this route. It must be an integer between 0 and 100 inclusive.
@@ -4480,12 +4784,27 @@ export interface ModelServingConfigTrafficConfigRoute {
4480
4784
  trafficPercentage: number;
4481
4785
  }
4482
4786
  export interface ModelServingRateLimit {
4787
+ /**
4788
+ * Used to specify how many calls are allowed for a key within the renewal_period.
4789
+ */
4483
4790
  calls: number;
4791
+ /**
4792
+ * Key field for a serving endpoint rate limit. Currently, only `user` and `endpoint` are supported, with `endpoint` being the default if not specified.
4793
+ */
4484
4794
  key?: string;
4795
+ /**
4796
+ * Renewal period field for a serving endpoint rate limit. Currently, only `minute` is supported.
4797
+ */
4485
4798
  renewalPeriod: string;
4486
4799
  }
4487
4800
  export interface ModelServingTag {
4801
+ /**
4802
+ * The key field for a tag.
4803
+ */
4488
4804
  key: string;
4805
+ /**
4806
+ * The value field for a tag.
4807
+ */
4489
4808
  value?: string;
4490
4809
  }
4491
4810
  export interface MountAbfs {
@@ -4640,6 +4959,92 @@ export interface MwsWorkspacesToken {
4640
4959
  tokenId: string;
4641
4960
  tokenValue: string;
4642
4961
  }
4962
+ export interface OnlineTableSpec {
4963
+ /**
4964
+ * Whether to create a full-copy pipeline -- a pipeline that stops after creates a full copy of the source table upon initialization and does not process any change data feeds (CDFs) afterwards. The pipeline can still be manually triggered afterwards, but it always perform a full copy of the source table and there are no incremental updates. This mode is useful for syncing views or tables without CDFs to online tables. Note that the full-copy pipeline only supports "triggered" scheduling policy.
4965
+ */
4966
+ performFullCopy?: boolean;
4967
+ /**
4968
+ * ID of the associated Delta Live Table pipeline.
4969
+ */
4970
+ pipelineId: string;
4971
+ /**
4972
+ * list of the columns comprising the primary key.
4973
+ */
4974
+ primaryKeyColumns?: string[];
4975
+ /**
4976
+ * empty block that specifies that pipeline runs continuously after generating the initial data. Conflicts with `runTriggered`.
4977
+ */
4978
+ runContinuously?: outputs.OnlineTableSpecRunContinuously;
4979
+ /**
4980
+ * empty block that specifies that pipeline stops after generating the initial data and can be triggered later (manually, through a cron job or through data triggers).
4981
+ */
4982
+ runTriggered?: outputs.OnlineTableSpecRunTriggered;
4983
+ /**
4984
+ * full name of the source table.
4985
+ */
4986
+ sourceTableFullName?: string;
4987
+ /**
4988
+ * Time series key to deduplicate (tie-break) rows with the same primary key.
4989
+ */
4990
+ timeseriesKey?: string;
4991
+ }
4992
+ export interface OnlineTableSpecRunContinuously {
4993
+ }
4994
+ export interface OnlineTableSpecRunTriggered {
4995
+ }
4996
+ export interface OnlineTableStatus {
4997
+ continuousUpdateStatus?: outputs.OnlineTableStatusContinuousUpdateStatus;
4998
+ /**
4999
+ * The state of the online table.
5000
+ */
5001
+ detailedState?: string;
5002
+ failedStatus?: outputs.OnlineTableStatusFailedStatus;
5003
+ /**
5004
+ * A text description of the current state of the online table.
5005
+ */
5006
+ message?: string;
5007
+ provisioningStatus?: outputs.OnlineTableStatusProvisioningStatus;
5008
+ triggeredUpdateStatus?: outputs.OnlineTableStatusTriggeredUpdateStatus;
5009
+ }
5010
+ export interface OnlineTableStatusContinuousUpdateStatus {
5011
+ initialPipelineSyncProgress?: outputs.OnlineTableStatusContinuousUpdateStatusInitialPipelineSyncProgress;
5012
+ lastProcessedCommitVersion?: number;
5013
+ timestamp?: string;
5014
+ }
5015
+ export interface OnlineTableStatusContinuousUpdateStatusInitialPipelineSyncProgress {
5016
+ estimatedCompletionTimeSeconds?: number;
5017
+ latestVersionCurrentlyProcessing?: number;
5018
+ syncProgressCompletion?: number;
5019
+ syncedRowCount?: number;
5020
+ totalRowCount?: number;
5021
+ }
5022
+ export interface OnlineTableStatusFailedStatus {
5023
+ lastProcessedCommitVersion?: number;
5024
+ timestamp?: string;
5025
+ }
5026
+ export interface OnlineTableStatusProvisioningStatus {
5027
+ initialPipelineSyncProgress?: outputs.OnlineTableStatusProvisioningStatusInitialPipelineSyncProgress;
5028
+ }
5029
+ export interface OnlineTableStatusProvisioningStatusInitialPipelineSyncProgress {
5030
+ estimatedCompletionTimeSeconds?: number;
5031
+ latestVersionCurrentlyProcessing?: number;
5032
+ syncProgressCompletion?: number;
5033
+ syncedRowCount?: number;
5034
+ totalRowCount?: number;
5035
+ }
5036
+ export interface OnlineTableStatusTriggeredUpdateStatus {
5037
+ lastProcessedCommitVersion?: number;
5038
+ timestamp?: string;
5039
+ triggeredUpdateProgress?: outputs.OnlineTableStatusTriggeredUpdateStatusTriggeredUpdateProgress;
5040
+ }
5041
+ export interface OnlineTableStatusTriggeredUpdateStatusTriggeredUpdateProgress {
5042
+ estimatedCompletionTimeSeconds?: number;
5043
+ latestVersionCurrentlyProcessing?: number;
5044
+ syncProgressCompletion?: number;
5045
+ syncedRowCount?: number;
5046
+ totalRowCount?: number;
5047
+ }
4643
5048
  export interface PermissionsAccessControl {
4644
5049
  /**
4645
5050
  * name of the group. We recommend setting permissions on groups.
@@ -4870,7 +5275,7 @@ export interface ShareObject {
4870
5275
  */
4871
5276
  comment?: string;
4872
5277
  /**
4873
- * Type of the data object, currently `TABLE`, `SCHEMA`, `VOLUME`, `NOTEBOOK_FILE` are supported.
5278
+ * Type of the data object, currently `TABLE`, `SCHEMA`, `VOLUME`, and `MODEL` are supported.
4874
5279
  */
4875
5280
  dataObjectType: string;
4876
5281
  /**
@@ -4880,7 +5285,7 @@ export interface ShareObject {
4880
5285
  */
4881
5286
  historyDataSharingStatus?: string;
4882
5287
  /**
4883
- * Full name of the object, e.g. `catalog.schema.name` for a table.
5288
+ * Full name of the object, e.g. `catalog.schema.name` for a tables, volumes and models, or `catalog.schema` for schemas.
4884
5289
  */
4885
5290
  name: string;
4886
5291
  partitions?: outputs.ShareObjectPartition[];
@@ -5168,19 +5573,13 @@ export interface SqlWidgetPosition {
5168
5573
  sizeY: number;
5169
5574
  }
5170
5575
  export interface StorageCredentialAwsIamRole {
5171
- /**
5172
- * The external ID used in role assumption to prevent confused deputy problem.
5173
- */
5174
5576
  externalId: string;
5175
5577
  /**
5176
5578
  * The Amazon Resource Name (ARN) of the AWS IAM role for S3 data access, of the form `arn:aws:iam::1234567890:role/MyRole-AJJHDSKSDF`
5177
- */
5178
- roleArn: string;
5179
- /**
5180
- * The Amazon Resource Name (ARN) of the AWS IAM user managed by Databricks. This is the identity that is going to assume the AWS IAM role.
5181
5579
  *
5182
5580
  * `azureManagedIdentity` optional configuration block for using managed identity as credential details for Azure (recommended over service principal):
5183
5581
  */
5582
+ roleArn: string;
5184
5583
  unityCatalogIamArn: string;
5185
5584
  }
5186
5585
  export interface StorageCredentialAzureManagedIdentity {
@@ -5248,7 +5647,101 @@ export interface VectorSearchEndpointEndpointStatus {
5248
5647
  */
5249
5648
  message?: string;
5250
5649
  /**
5251
- * Current state of the endpoint. Currently following values are supported: `PROVISIONING`, `ONLINE`, `OFFLINE`.
5650
+ * Current state of the endpoint. Currently following values are supported: `PROVISIONING`, `ONLINE`, and `OFFLINE`.
5252
5651
  */
5253
5652
  state?: string;
5254
5653
  }
5654
+ export interface VectorSearchIndexDeltaSyncIndexSpec {
5655
+ /**
5656
+ * array of objects representing columns that contain the embedding source. Each entry consists of:
5657
+ */
5658
+ embeddingSourceColumns?: outputs.VectorSearchIndexDeltaSyncIndexSpecEmbeddingSourceColumn[];
5659
+ /**
5660
+ * array of objects representing columns that contain the embedding vectors. Each entry consists of:
5661
+ */
5662
+ embeddingVectorColumns?: outputs.VectorSearchIndexDeltaSyncIndexSpecEmbeddingVectorColumn[];
5663
+ /**
5664
+ * ID of the associated Delta Live Table pipeline.
5665
+ */
5666
+ pipelineId: string;
5667
+ /**
5668
+ * Pipeline execution mode. Possible values are:
5669
+ */
5670
+ pipelineType?: string;
5671
+ /**
5672
+ * The name of the source table.
5673
+ */
5674
+ sourceTable?: string;
5675
+ }
5676
+ export interface VectorSearchIndexDeltaSyncIndexSpecEmbeddingSourceColumn {
5677
+ /**
5678
+ * The name of the embedding model endpoint
5679
+ */
5680
+ embeddingModelEndpointName?: string;
5681
+ /**
5682
+ * The name of the column.
5683
+ */
5684
+ name?: string;
5685
+ }
5686
+ export interface VectorSearchIndexDeltaSyncIndexSpecEmbeddingVectorColumn {
5687
+ /**
5688
+ * Dimension of the embedding vector.
5689
+ */
5690
+ embeddingDimension?: number;
5691
+ /**
5692
+ * The name of the column.
5693
+ */
5694
+ name?: string;
5695
+ }
5696
+ export interface VectorSearchIndexDirectAccessIndexSpec {
5697
+ /**
5698
+ * array of objects representing columns that contain the embedding source. Each entry consists of:
5699
+ */
5700
+ embeddingSourceColumns?: outputs.VectorSearchIndexDirectAccessIndexSpecEmbeddingSourceColumn[];
5701
+ /**
5702
+ * array of objects representing columns that contain the embedding vectors. Each entry consists of:
5703
+ */
5704
+ embeddingVectorColumns?: outputs.VectorSearchIndexDirectAccessIndexSpecEmbeddingVectorColumn[];
5705
+ /**
5706
+ * The schema of the index in JSON format. Check the [API documentation](https://docs.databricks.com/api/workspace/vectorsearchindexes/createindex#direct_access_index_spec-schema_json) for a list of supported data types.
5707
+ */
5708
+ schemaJson?: string;
5709
+ }
5710
+ export interface VectorSearchIndexDirectAccessIndexSpecEmbeddingSourceColumn {
5711
+ /**
5712
+ * The name of the embedding model endpoint
5713
+ */
5714
+ embeddingModelEndpointName?: string;
5715
+ /**
5716
+ * The name of the column.
5717
+ */
5718
+ name?: string;
5719
+ }
5720
+ export interface VectorSearchIndexDirectAccessIndexSpecEmbeddingVectorColumn {
5721
+ /**
5722
+ * Dimension of the embedding vector.
5723
+ */
5724
+ embeddingDimension?: number;
5725
+ /**
5726
+ * The name of the column.
5727
+ */
5728
+ name?: string;
5729
+ }
5730
+ export interface VectorSearchIndexStatus {
5731
+ /**
5732
+ * Index API Url to be used to perform operations on the index
5733
+ */
5734
+ indexUrl?: string;
5735
+ /**
5736
+ * Number of rows indexed
5737
+ */
5738
+ indexedRowCount?: number;
5739
+ /**
5740
+ * Message associated with the index status
5741
+ */
5742
+ message?: string;
5743
+ /**
5744
+ * Whether the index is ready for search
5745
+ */
5746
+ ready?: boolean;
5747
+ }