有了curl,如何验证databricks api?

时间:2016-03-09 22:29:01

标签: curl

SOF,

我想使用其余的api来访问我的数据库集群。

我读了这个文件:

https://forums.databricks.com/storage/temp/32-dbcthirdpartyintegrationrestapi11.pdf

我认为文档的身份验证部分写得不好。

它给出了一个大致的想法但没有例子。

即使它确实有例子,pdf文本也不能很好地复制到我的鼠标中。 他们应该将这种信息放在我可以从github克隆的网页或源文件中。

反正 我开始在bash中使用一个简单的curl命令:

curl https://abc-xyz123-0411.cloud.databricks.com/api/1.2/clusters/list

我收到了这个回复:

错误401未经授权

我去了google:如何验证databricks api?

我发现谷歌没有任何用处。

问题:使用curl,如何验证databricks api?

3 个答案:

答案 0 :(得分:0)

我用python而不是curl来解决这个问题:

# rest1.py

# This script should demo databricks REST API.

# ref:
# goog: With python how to authenticate to REST API?
# http://docs.python-requests.org/en/latest/

import requests

usr='dog@catnip.net'
pas='abc123'

hhost         = 'https://abc-12345-911.cloud.databricks.com/api/1.2'
clusters_list = hhost+'/clusters/list'

rq1 = requests.get(clusters_list, auth=(usr,pas))
print(rq1.status_code)
print(rq1.json())
'done'

答案 1 :(得分:0)

有更新的instructions in the Databricks docs笔记本,其中包含curl个示例。例如:

  

在Databricks中列出Spark Clusters:

% curl -u username:password https://YOUR_INSTANCE_NAME.cloud.databricks.com/api/1.2/clusters/list

[
  {
      "driverIp": "10.0.236.4",
      "id": "batVenom",
      "jdbcPort": 10000,
      "name": "Mini-Cluster",
      "numWorkers": 2,
      "status": "Running"
  }
]

答案 2 :(得分:0)

这就是我们使用curl来启动数据块集群的方式

curl -X POST --header 'content-type:application/json' --header 'authorization:Bearer $databricks-token' -d '{"cluster_id": $cluster_id}' https://YOUR_INSTANCE_NAME.cloud.databricks.com/api/2.0/clusters/start --insecure -v