透過設定 API 管理設定

設定 API 讓你能以程式化方式閱讀並更新 Azure Databricks 帳號、工作區及使用者設定,包括帳號與工作區層級的功能預覽。 本頁說明如何發現可用設定,以及如何閱讀和更新它們。 關於透過公開 API 提供的設定清單,請參閱 Settings API 鍵數參考。

完整端點參考,請參閱 設定 REST API。

Note

工作區和帳號層級的功能預覽也透過 Settings v2 API 管理,但它們未列於 Settings API 金鑰參考資料 中,因為當功能正式推出或遭移除時,預覽最終都會走到生命週期終點。 透過 settings-metadata 端點查看目前可供您使用的預覽功能。 它回傳的每個預覽都能透過相同的 get 和 update (PATCH) 端點讀取並更新,就像其他設定一樣。

設定 API 模型

設定 v2 API 是動態的。 單一的通用 API 適用於所有設定,而新的設定也可透過此 API 提供,無需新的 API 版本、SDK 發行或文件更新。 你不是依賴固定且需手動維護的端點清單,而是透過 中繼資料端點 在執行階段找出目前可設定的項目。

設定包含名稱、一個其形式取決於設定類型的值,以及一個決定其套用位置的範圍:

  • 帳號設定 會套用到整個帳號。
  • 工作區設定 會套用到單一工作區。
  • 使用者偏好 會適用於帳號中的使用者。

有些設定可在多個層級中使用。 帳號和工作區設定通常需要管理員權限才能閱讀或更新。

依範圍劃分的端點

每個範圍都有自己的端點集合。 使用與設定管理方式相符的那個:

Scope 取得 更新(PATCH)
Account /api/2.1/accounts/<account-id>/settings/<key-name> /api/2.1/accounts/<account-id>/settings/<key-name>
工作區 /api/2.1/settings/<key-name> /api/2.1/settings/<key-name>
使用者偏好 /api/2.1/accounts/<account-id>/users/<user-id>/settings/<key-name> /api/2.1/accounts/<account-id>/users/<user-id>/settings/<key-name>

探索可用設定

設定名稱及其目前的元資料(包括你需要更新的值類型)都可以從元資料端點取得。 這是關於您工作區或帳號中目前可設定項目的最新權威依據。 端點有分頁,請翻閱結果以取得完整清單:

curl -n --request GET \
  'https://<databricks-instance>/api/2.1/settings-metadata'

你也可以用 Databricks CLI 列出設定:

databricks workspace-settings-v2 list-workspace-settings-metadata

關於帳號設定,請改用帳號範圍的元資料端點:

curl -n --request GET \
  'https://<databricks-instance>/api/2.1/accounts/<account-id>/settings-metadata'

讀取設定

get 回應會對每個設定回傳兩個值。 儲存的值位於型別欄位(例如 boolean_val),且是已設定的值。 有效值位於對應effective_*欄位(例如 effective_boolean_val),是伺服器在套用預設值及任何更高範圍覆寫後計算出的值。 例如,某個布林值設定會回傳:

{
  "name": "<key-name>",
  "boolean_val": { "value": true },
  "effective_boolean_val": { "value": true }
}

要讀取工作區設定,請呼叫帶有設定鍵名的 get 端點:

curl -n --request GET \
  'https://<databricks-instance>/api/2.1/settings/<key-name>'

要讀取帳號設定,請使用帳號範圍路徑:

curl -n --request GET \
  'https://<databricks-instance>/api/2.1/accounts/<account-id>/settings/<key-name>'

若要讀取使用者偏好設定,請使用帳戶範圍的使用者路徑。 閱讀及更新使用者偏好設定需要帳號管理員權限:

curl -n --request GET \
  'https://<databricks-instance>/api/2.1/accounts/<account-id>/users/<user-id>/settings/<key-name>'

更新設定

若要更新設定,請傳送一個 PATCH 要求,其本文為設定物件,而值則放在與該設定類型相符的欄位中。 使用 list-workspace-settings-metadata (或元資料端點)來判斷特定設定的正確類型欄位。 例如,要更新布林工作區設定:

curl -n --request PATCH \
  'https://<databricks-instance>/api/2.1/settings/<key-name>' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "name": "<key-name>",
    "boolean_val": { "value": true }
  }'

要更新帳戶設定,請將同一主體傳送到帳戶範圍路徑:

curl -n --request PATCH \
  'https://<databricks-instance>/api/2.1/accounts/<account-id>/settings/<key-name>' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "name": "<key-name>",
    "boolean_val": { "value": true }
  }'

要更新使用者偏好設定,請將請求發送到帳號範圍的使用者路徑。 以下範例更新了一個字串型別偏好設定:

curl -n --request PATCH \
  'https://<databricks-instance>/api/2.1/accounts/<account-id>/users/<user-id>/settings/<key-name>' \
  --header 'Content-Type: application/json' \
  --data-raw '{
    "name": "<key-name>",
    "string_val": { "value": "<value>" }
  }'

其他資源