API の例API Examples

このトピックには、Azure Databricks API の使用方法を示すさまざまな例が含まれています。This topic contains a range of examples that demonstrate how to use the Azure Databricks API.

前提条件Requirements

これらの例を確認または試す前に、認証に関するトピックを確認してください。Before you review or try these examples, you should review the Authentication topic. CURL を使用する場合は Azure Databricks API 資格情報を. netrcに格納するか、BEARER 認証を使用することを前提としています。When you use cURL, we assume that you store Azure Databricks API credentials under .netrc or use BEARER authentication. 次の例では、<your-token>Databricks 個人用アクセストークンに置き換えます。In the following examples, replace <your-token> with your Databricks personal access token. この例ではトークンをコードに格納していますが、Azure Databricks で安全に資格情報を活用するために、シークレットユーザーガイドに従うことをお勧めします。Although the examples show storing the token in the code, for leveraging credentials safely in Azure Databricks, we recommend that you follow the Secrets user guide.

次の例では、<databricks-instance> を Azure Databricks デプロイの <region>.azuredatabricks.net ドメイン名に置き換えます。In the following examples, replace <databricks-instance> with the <region>.azuredatabricks.net domain name of your Azure Databricks deployment.

jq を使用して API 出力を解析するUse jq to parse API output

場合によっては、JSON 出力の一部を解析することが役に立つことがあります。Sometimes it can be useful to parse out parts of the JSON output. このような場合は、jq ユーティリティを使用することをお勧めします。In these cases, we recommend that you to use the utility jq. 詳細については、 jq のマニュアルを参照してください。For more information, see the jq Manual. jq は、brew install jqと共に Homebrew を使用して MacOS にインストールできます。You can install jq on MacOS using Homebrew with brew install jq.

GET を呼び出します。Invoke a GET

ほとんどの API 呼び出しでは JSON 本文を指定する必要がありますが、GET 呼び出しではクエリ文字列を指定できます。While most API calls require that you specify a JSON body, for GET calls you can specify a query string. たとえば、クラスターの詳細を取得するには、次のように実行します。For example, to get the details for a cluster, run:

curl -n https://<databricks-instance>/api/2.0/clusters/get?cluster_id=<cluster-id>

DBFS ルートの内容を一覧表示するには、次のように実行します。To list the contents of the DBFS root, run:

curl -n https://<databricks-instance>/api/2.0/dbfs/list?path=/ | jq

クラスターの圧縮リストを取得する Get a gzipped list of clusters

curl -n -H "Accept-Encoding: gzip" https://<databricks-instance>/api/2.0/clusters/list > clusters.gz

DBFS に大きなファイルをアップロードする Upload a big file into DBFS

単一の API 呼び出しでアップロードされるデータの量が 1 MB を超えることはできません。The amount of data uploaded by single API call cannot exceed 1MB. 1 MB を超えるサイズのファイルを DBFS にアップロードするには、ストリーミング API を使用します。これは createaddBlock、および close の組み合わせです。To upload a file that is larger than 1MB to DBFS, use the streaming API, which is a combination of create, addBlock, and close.

Python を使用してこのアクションを実行する方法の例を次に示します。Here is an example of how to perform this action using Python.

import json
import base64
import requests

DOMAIN = '<databricks-instance>'
TOKEN = b'<your-token>'
BASE_URL = 'https://%s/api/2.0/dbfs/' % (DOMAIN)

def dbfs_rpc(action, body):
  """ A helper function to make the DBFS API request, request/response is encoded/decoded as JSON """
  response = requests.post(
    BASE_URL + action,
    headers={"Authorization": b"Basic " + base64.standard_b64encode(b"token:" + TOKEN)},
    json=body
  )
  return response.json()

# Create a handle that will be used to add blocks
handle = dbfs_rpc("create", {"path": "/temp/upload_large_file", "overwrite": "true"})['handle']
with open('/a/local/file') as f:
  while True:
    # A block can be at most 1MB
    block = f.read(1 << 20)
    if not block:
        break
    data = base64.standard_b64encode(block)
    dbfs_rpc("add-block", {"handle": handle, "data": data})
# close the handle to finish uploading
dbfs_rpc("close", {"handle": handle})

Python 3 クラスターを作成します (Databricks Runtime 5.5 以下) Create a Python 3 cluster (Databricks Runtime 5.5 and below)

注意

Databricks Runtime 6.0 以降、およびConda を使用した Databricks Runtime には、python 3 が既定のバージョンの python として設定されています。Databricks Runtime 6.0 and above, and Databricks Runtime with Conda has Python 3 set as the default version of Python.

次の例は、Databricks REST API と一般的なrequests python HTTP ライブラリを使用してpython 3クラスターを起動する方法を示しています。The following example shows how to launch a Python 3 cluster using the Databricks REST API and the popular requests Python HTTP library:

import requests
import base64

DOMAIN = '<databricks-instance>'
TOKEN = b'<your-token>'

response = requests.post(
  'https://%s/api/2.0/clusters/create' % (DOMAIN),
  headers={'Authorization': b"Basic " + base64.standard_b64encode(b"token:" + TOKEN)},
  json={
    "new_cluster": {
      "spark_version": "5.3.x-scala2.11",
      "node_type_id": "Standard_D3_v2",
      "spark_env_vars": {
        "PYSPARK_PYTHON": "/databricks/python3/bin/python3",
      }
    }
  }
)

if response.status_code == 200:
  print(response.json()['cluster_id'])
else:
  print("Error launching cluster: %s: %s" % (response.json()["error_code"], response.json()["message"]))

高同時実行クラスター High concurrency cluster

次の例は、Databricks REST API を使用して高同時実行クラスターを起動する方法を示しています。The following example shows how to launch a high concurrency cluster using the Databricks REST API:

curl -n -X POST -H 'Content-Type: application/json' -d '{
  "cluster_name": "high-concurrency-cluster",
  "spark_version": "5.3.x-scala2.11",
  "node_type_id": "Standard_D3_v2",
  "spark_conf":{
        "spark.databricks.cluster.profile":"serverless",
        "spark.databricks.repl.allowedLanguages":"sql,python,r"
     },
   "custom_tags":{
        "ResourceClass":"Serverless"
     },
       "autoscale":{
        "min_workers":1,
        "max_workers":2
     },
  "autotermination_minutes":10
}' https://<databricks-instance>/api/2.0/clusters/create

Jobs API の例 Jobs API examples

このセクションでは、Python、spark submit、および JAR ジョブを作成し、JAR ジョブを実行してその出力を表示する方法について説明します。This section shows how to create Python, spark submit, and JAR jobs and run the JAR job and view its output.

Python ジョブを作成するCreate a Python job

この例では、Python ジョブを作成する方法を示します。This example shows how to create a Python job. Apache Spark Python Spark Pi の推定を使用します。It uses the Apache Spark Python Spark Pi estimation.

  1. 例を含むPython ファイルをダウンロードし、 Databricks CLIを使用してDatabricks file Systemにアップロードします。Download the Python file containing the example and upload it to Databricks File System using the Databricks CLI.

    dbfs cp pi.py dbfs:/docs/pi.py
    
  2. ジョブを作成します。Create the job.

    curl -n -H "Content-Type: application/json" -X POST -d @- https://<databricks-instance>/api/2.0/jobs/create <<JSON
    {
      "name": "SparkPi Python job",
      "new_cluster": {
        "spark_version": "5.2.x-scala2.11",
        "node_type_id": "Standard_D3_v2",
        "num_workers": 2
      },
      "spark_python_task": {
        "python_file": "dbfs:/docs/pi.py",
        "parameters": [
          "10"
        ]
      }
    }
    JSON
    

Spark 送信ジョブを作成する Create a spark-submit job

この例では、spark 送信ジョブを作成する方法を示します。This example shows how to create a spark-submit job. この例では、Apache Spark のsparc の例を使用します。It uses the Apache Spark SparkPi example.

  1. 例を含むjarをダウンロードし、 Databricks CLIを使用して Jar をDatabricks File Systemにアップロードします。Download the JAR containing the example and upload the JAR to Databricks File System using the Databricks CLI.

    dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar
    
  2. ジョブを作成します。Create the job.

    curl -n \
    -X POST -H 'Content-Type: application/json' \
    -d '{
         "name": "SparkPi spark-submit job",
         "new_cluster": {
           "spark_version": "5.2.x-scala2.11",
           "node_type_id": "Standard_DS3_v2",
           "num_workers": 2
           },
        "spark_submit_task": {
           "parameters": [
             "--class",
             "org.apache.spark.examples.SparkPi",
             "dbfs:/docs/sparkpi.jar",
             "10"
          ]
        }
    }' https://<databricks-instance>/api/2.0/jobs/create
    

R スクリプトの spark submit ジョブの作成と実行 Create and run a spark-submit job for R scripts

この例では、R スクリプトを実行する spark submit ジョブを作成する方法を示します。This example shows how to create a spark-submit job to run R scripts.

  1. DATABRICKS CLIを使用して、R ファイルをDatabricks file Systemにアップロードします。Upload the R file to Databricks File System using the Databricks CLI.

    dbfs cp your_code.R dbfs:/path/to/your_code.R
    

    コードで SparkR を使用する場合は、最初にパッケージをインストールする必要があります。If the code uses SparkR, it must first install the package. Databricks Runtime には、SparkR のソースコードが含まれています。Databricks Runtime contains the SparkR source code. 次の例に示すように、ローカルディレクトリから SparkR パッケージをインストールします。Install the SparkR package from its local directory as shown in the following example:

    install.packages("/databricks/spark/R/pkg", repos = NULL)
    library(SparkR)
    
    sparkR.session()
    n <- nrow(createDataFrame(iris))
    write.csv(n, "/dbfs/path/to/num_rows.csv")
    

    Databricks Runtime は、CRAN から sparklyr の最新バージョンをインストールします。Databricks Runtime installs the latest version of sparklyr from CRAN. コードで sparklyr を使用する場合は、spark_connectで Spark マスター URL を指定する必要があります。If the code uses sparklyr, You must specify the Spark master URL in spark_connect. Spark マスター URL を形成するには、SPARK_LOCAL_IP 環境変数を使用して IP を取得し、既定のポート7077を使用します。To form the Spark master URL, use the SPARK_LOCAL_IP environment variable to get the IP, and use the default port 7077. 例えば次が挙げられます。For example:

    library(sparklyr)
    
    master <- paste("spark://", Sys.getenv("SPARK_LOCAL_IP"), ":7077", sep="")
    sc <- spark_connect(master)
    iris_tbl <- copy_to(sc, iris)
    write.csv(iris_tbl, "/dbfs/path/to/sparklyr_iris.csv")
    
  2. ジョブを作成します。Create the job.

    curl -n \
    -X POST -H 'Content-Type: application/json' \
    -d '{
         "name": "R script spark-submit job",
         "new_cluster": {
           "spark_version": "5.5.x-scala2.11",
           "node_type_id": "Standard_DS3_v2",
           "num_workers": 2
           },
        "spark_submit_task": {
           "parameters": [ "dbfs:/path/to/your_code.R" ]
           }
    }' https://<databricks-instance>/api/2.0/jobs/create
    

    これにより、ジョブを実行するために使用できる job-id が返されます。This returns a job-id that you can then use to run the job.

  3. job-idを使用してジョブを実行します。Run the job using the job-id.

    curl -n \
    -X POST -H 'Content-Type: application/json' \
    -d '{ "job_id": <job-id> }' https://<databricks-instance>/api/2.0/jobs/run-now
    

JAR ジョブの作成と実行 Create and run a JAR job

この例では、JAR ジョブを作成して実行する方法を示します。This example shows how to create and run a JAR job. この例では、Apache Spark のsparc の例を使用します。It uses the Apache Spark SparkPi example.

  1. 例を含むJARをダウンロードします。Download the JAR containing the example.

  2. API を使用して、JAR を Azure Databricks インスタンスにアップロードします。Upload the JAR to your Azure Databricks instance using the API:

    curl -n \
    -F filedata=@"SparkPi-assembly-0.1.jar" \
    -F path="/docs/sparkpi.jar" \
    -F overwrite=true \
    https://<databricks-instance>/api/2.0/dbfs/put
    

    成功した場合は {} が返されます。A successful call returns {}. それ以外の場合は、エラーメッセージが表示されます。Otherwise you will see an error message.

  3. ジョブを作成する前に、すべての Spark バージョンの一覧を取得します。Get a list of all Spark versions prior to creating your job.

    curl -n https://<databricks-instance>/api/2.0/clusters/spark-versions
    

    この例では、5.2.x-scala2.11 を使用します。This example uses 5.2.x-scala2.11. Spark クラスターバージョンの詳細についてはDatabricks Runtime 「REST API 呼び出しのバージョン文字列」を参照してください。See Databricks Runtime Version String for REST API Calls for more information about Spark cluster versions.

  4. ジョブを作成します。Create the job. JAR はライブラリとして指定され、メインクラス名は Spark JAR タスクで参照されます。The JAR is specified as a library and the main class name is referenced in the Spark JAR task.

    curl -n \
    -X POST -H 'Content-Type: application/json' \
    -d '{
          "name": "SparkPi JAR job",
          "new_cluster": {
            "spark_version": "5.2.x-scala2.11",
            "node_type_id": "Standard_DS3_v2",
            "num_workers": 2
            },
         "libraries": [{"jar": "dbfs:/docs/sparkpi.jar"}],
         "spark_jar_task": {
            "main_class_name":"org.apache.spark.examples.SparkPi",
            "parameters": "10"
            }
    }' https://<databricks-instance>/api/2.0/jobs/create
    

    これにより、ジョブを実行するために使用できる job-id が返されます。This returns a job-id that you can then use to run the job.

  5. run nowを使用してジョブを実行します。Run the job using run now:

    curl -n \
    -X POST -H 'Content-Type: application/json' \
    -d '{ "job_id": <job-id> }' https://<databricks-instance>/api/2.0/jobs/run-now
    
  6. https://<databricks-instance>/#job/<job-id> に移動すると、ジョブが実行されていることを確認できます。Navigate to https://<databricks-instance>/#job/<job-id> and you’ll be able to see your job running.

  7. また、前の要求から返された情報を使用して API からチェックインすることもできます。You can also check on it from the API using the information returned from the previous request.

    curl -n https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id> | jq
    

    次のような内容が返されます。Which should return something like:

    {
      "job_id": 35,
      "run_id": 30,
      "number_in_job": 1,
      "original_attempt_run_id": 30,
      "state": {
        "life_cycle_state": "TERMINATED",
        "result_state": "SUCCESS",
        "state_message": ""
      },
      "task": {
        "spark_jar_task": {
          "jar_uri": "",
          "main_class_name": "org.apache.spark.examples.SparkPi",
          "parameters": [
            "10"
          ],
          "run_as_repl": true
        }
      },
      "cluster_spec": {
        "new_cluster": {
          "spark_version": "5.2.x-scala2.11",
          "node_type_id": "<node-type>",
          "enable_elastic_disk": false,
          "num_workers": 1
        },
        "libraries": [
          {
            "jar": "dbfs:/docs/sparkpi.jar"
          }
        ]
      },
      "cluster_instance": {
        "cluster_id": "0412-165350-type465",
        "spark_context_id": "5998195893958609953"
      },
      "start_time": 1523552029282,
      "setup_duration": 211000,
      "execution_duration": 33000,
      "cleanup_duration": 2000,
      "trigger": "ONE_TIME",
      "creator_user_name": "...",
      "run_name": "SparkPi JAR job",
      "run_page_url": "<databricks-instance>/?o=3901135158661429#job/35/run/1",
      "run_type": "JOB_RUN"
    }
    
  8. ジョブの出力を表示するには、[ジョブの実行の詳細] ページにアクセスします。To view the job output, visit the job run details page.

    Executing command, time = 1523552263909.
    Pi is roughly 3.13973913973914
    

テーブルアクセス制御の有効化の例 Enable table access control example

テーブルアクセス制御が有効になっているクラスターを作成するには、要求本文で次の spark_conf プロパティを指定します。To create a cluster enabled for table access control, specify the following spark_conf property in your request body:

curl -X POST https://<databricks-instance>/api/2.0/clusters/create -d'
{
  "cluster_name": "my-cluster",
  "spark_version": "5.2.x-scala2.11",
  "node_type_id": "Standard_DS3_v2",
  "spark_conf": {
    "spark.databricks.acl.dfAclsEnabled":true,
    "spark.databricks.repl.allowedLanguages": "python,sql"
  },
  "num_workers": 1,
  "custom_tags":{
     "costcenter":"Tags",
     "applicationname":"Tags1"
  }
}'

クラスターログ配信 の例 Cluster log delivery examples

Spark のドライバーと実行プログラムのログは Spark UI で見ることができますが Azure Databricks、DBFS にログを配信することもできます。While you can view the Spark driver and executor logs in the Spark UI, Azure Databricks can also deliver the logs to DBFS destinations. 次の例を参照してください。See the examples below.

DBFS の場所に配信されるログを含むクラスターを作成するCreate a cluster with logs delivered to a DBFS location

次の cURL コマンドは、"cluster_log_dbfs" という名前のクラスターを作成し、そのログをパスプレフィックスとしてクラスター ID と dbfs:/logs に送信するように Databricks に要求します。The following cURL command creates a cluster named “cluster_log_dbfs” and requests Databricks to sends its logs to dbfs:/logs with the cluster ID as the path prefix.

curl -n -H "Content-Type: application/json" -X POST -d @- https://<databricks-instance>/api/2.0/clusters/create <<JSON
{
  "cluster_name": "cluster_log_dbfs",
  "spark_version": "5.2.x-scala2.11",
  "node_type_id": "Standard_D3_v2",
  "num_workers": 1,
  "cluster_log_conf": {
    "dbfs": {
      "destination": "dbfs:/logs"
    }
  }
}
JSON

応答には、クラスター ID を含める必要があります。The response should contain the cluster ID:

{"cluster_id":"1111-223344-abc55"}

クラスターの作成後、Databricks は5分ごとにログファイルを宛先に同期します。After cluster creation, Databricks syncs log files to the destination every 5 minutes. ドライバーログを dbfs:/logs/1111-223344-abc55/driver および実行プログラムのログにアップロードして dbfs:/logs/1111-223344-abc55/executor します。It uploads driver logs to dbfs:/logs/1111-223344-abc55/driver and executor logs to dbfs:/logs/1111-223344-abc55/executor.

ログの配信状態の確認Check log delivery status

API を使用して、ログ配信状態のクラスター情報を取得できます。You can retrieve cluster information with log delivery status via API:

curl -n -H "Content-Type: application/json" -d @- https://<databricks-instance>/api/2.0/clusters/get <<JSON
{
  "cluster_id": "1111-223344-abc55"
}
JSON

最新のログアップロードのバッチが成功した場合、応答には最後の試行のタイムスタンプのみが含まれます。If the latest batch of log upload was successful, the response should contain only the timestamp of the last attempt:

{
  "cluster_log_status": {
    "last_attempted": 1479338561
  }
}

エラーが発生した場合は、次のエラーメッセージが応答に表示されます。In case of errors, the error message would appear in the response:

{
  "cluster_log_status": {
    "last_attempted": 1479338561,
    "last_exception": "Exception: Access Denied ..."
  }
}

ワークスペース API の例 Workspace API examples

ここでは、workspace API を使用して、ワークスペースオブジェクトの一覧表示、情報の取得、作成、削除、エクスポート、およびインポートを行う例をいくつか紹介します。Here are some examples for using the Workspace API to list, get info about, create, delete, export, and import workspace objects.

Notebook またはフォルダーを一覧表示するList a notebook or a folder

次の cURL コマンドは、ワークスペース内のパスを一覧表示します。The following cURL command lists a path in the workspace.

curl -n -H "Content-Type: application/json" -X GET -d @- https://<databricks-instance>/api/2.0/workspace/list <<JSON
{
  "path": "/Users/user@example.com/"
}
JSON

応答には、状態の一覧が含まれている必要があります。The response should contain a list of statuses:

{
  "objects": [
    {
     "object_type": "DIRECTORY",
     "path": "/Users/user@example.com/folder"
    },
    {
     "object_type": "NOTEBOOK",
     "language": "PYTHON",
     "path": "/Users/user@example.com/notebook1"
    },
    {
     "object_type": "NOTEBOOK",
     "language": "SCALA",
     "path": "/Users/user@example.com/notebook2"
    }
  ]
}

パスが notebook の場合、応答には入力ノートブックの状態を含む配列が含まれます。If the path is a notebook, the response contains an array containing the status of the input notebook.

ノートブックまたはフォルダーに関する情報を取得するGet information about a notebook or a folder

次の cURL コマンドは、ワークスペース内のパスの状態を取得します。The following cURL command gets the status of a path in the workspace.

curl -n -H "Content-Type: application/json" -X GET -d @- https://<databricks-instance>/api/2.0/workspace/get-status <<JSON
{
  "path": "/Users/user@example.com/"
}
JSON

応答には、入力パスの状態が含まれている必要があります。The response should contain the status of the input path:

{
  "object_type": "DIRECTORY",
  "path": "/Users/user@example.com"
}

フォルダーを作成するCreate a folder

次の cURL コマンドを実行すると、フォルダーが作成されます。The following cURL command creates a folder. これにより、mkdir -p のように再帰的にフォルダーが作成されます。It creates the folder recursively like mkdir -p. フォルダーが既に存在する場合は、何も実行されずに成功します。If the folder already exists, it will do nothing and succeed.

curl -n -H "Content-Type: application/json" -X POST -d @- https://<databricks-instance>/api/2.0/workspace/mkdirs <<JSON
{
  "path": "/Users/user@example.com/new/folder"
}
JSON

要求が成功した場合は、空の JSON 文字列が返されます。If the request succeeds, an empty JSON string will be returned.

ノートブックまたはフォルダーを削除するDelete a notebook or folder

次の cURL コマンドは、notebook またはフォルダーを削除します。The following cURL command deletes a notebook or folder. recursive を有効にすると、空でないフォルダーを再帰的に削除できます。You can enable recursive to recursively delete a non-empty folder.

curl -n -H "Content-Type: application/json" -X POST -d @- https://<databricks-instance>/api/2.0/workspace/delete <<JSON
{
  "path": "/Users/user@example.com/new/folder",
  "recursive": "false"
}
JSON

要求が成功した場合は、空の JSON 文字列が返されます。If the request succeeds, an empty JSON string is returned.

ノートブックまたはフォルダーをエクスポートする Export a notebook or folder

次の cURL コマンドを実行すると、notebook がエクスポートされます。The following cURL command exports a notebook. ノートブックは、SOURCEHTMLJUPYTERDBC の形式でエクスポートできます。Notebooks can be exported in the following formats: SOURCE, HTML, JUPYTER, DBC. フォルダーは DBCとしてのみエクスポートできます。A folder can be exported only as DBC.

curl -n -H "Content-Type: application/json" -X GET -d @- https://<databricks-instance>/api/2.0/workspace/export <<JSON
{
  "path": "/Users/user@example.com/notebook",
  "format": "SOURCE"
}
JSON

応答には、base64 でエンコードされたノートブックのコンテンツが含まれます。The response contains base64 encoded notebook content.

{
  "content": "Ly8gRGF0YWJyaWNrcyBub3RlYm9vayBzb3VyY2UKcHJpbnQoImhlbGxvLCB3b3JsZCIpCgovLyBDT01NQU5EIC0tLS0tLS0tLS0KCg=="
}

または、エクスポートしたノートブックを直接ダウンロードすることもできます。Alternatively, you can download the exported notebook directly.

curl -n -X GET "https://<databricks-instance>/api/2.0/workspace/export?format=SOURCE&direct_download=true&path=/Users/user@example.com/notebook"

応答は、エクスポートされたノートブックのコンテンツになります。The response will be the exported notebook content.

ノートブックまたはディレクトリをインポートする Import a notebook or directory

次の cURL コマンドを実行すると、ワークスペースにノートブックがインポートされます。The following cURL command imports a notebook in the workspace. 複数の形式 (SOURCEHTMLJUPYTERDBC) がサポートされています。Multiple formats (SOURCE, HTML, JUPYTER, DBC) are supported. formatSOURCE場合は、languageを指定する必要があります。If the format is SOURCE, you must specify language. content パラメーターには、base64 でエンコードされたノートブックのコンテンツが含まれています。The content parameter contains base64 encoded notebook content. 既存の notebook を上書きするように overwrite を有効にすることができます。You can enable overwrite to overwrite the existing notebook.

curl -n -H "Content-Type: application/json" -X POST -d @- https://<databricks-instance>/api/2.0/workspace/import <<JSON
{
  "path": "/Users/user@example.com/new-notebook",
  "format": "SOURCE",
  "language": "SCALA",
  "content": "Ly8gRGF0YWJyaWNrcyBub3RlYm9vayBzb3VyY2UKcHJpbnQoImhlbGxvLCB3b3JsZCIpCgovLyBDT01NQU5EIC0tLS0tLS0tLS0KCg==",
  "overwrite": "false"
}
JSON

要求が成功した場合は、空の JSON 文字列が返されます。If the request succeeds, an empty JSON string is returned.

または、マルチパートフォームの投稿を使用してノートブックをインポートすることもできます。Alternatively, you can import a notebook via multipart form post.

curl -n -X POST https://<databricks-instance>/api/2.0/workspace/import \
       -F path="/Users/user@example.com/new-notebook" -F format=SOURCE -F language=SCALA -F overwrite=true -F content=@notebook.scala