工作流 API 概览¶
NebulaGraph Explorer 提供 API 接口使用工作流的部分功能。
当前支持的 API 接口如下:
请求方式¶
支持使用 curl 调用 API 接口实现对应的功能。
格式如下:
curl <options> http://<explorer_address>:<explorer_port>/<api_path>?{<body>}
<options>:curl 支持大量选项,工作流使用较多的是-X、-H、-d。关于选项的详细说明,参见 curl 官方文档。
<explorer_address>:NebulaGraph Explorer 访问地址。
<explorer_port>:NebulaGraph Explorer 访问端口。
<api_path>:API 的调用路径。例如api-open/v1/jobs。
<body>:调用 API 时传入的 Body 参数。
获取授权 Token¶
使用 API 时,需要做 Token 信息校验。请使用如下命令获取 Token 信息。
curl -i -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <account_base64_encode>" -d '{"address":"<nebula_address>","port":<nebula_port>}' http://<explorer_address>:<explorer_port>/api-open/v1/connect
<account_base64_encode>:Base64 编码后的 NebulaGraph 账号和密码字符串。以用户名root、密码123为例,序列化后的字符串为["root","123"],Base64 编码后为WyJyb290IiwiMTIzIl0=。<nebula_address>:NebulaGraph 访问地址。<nebula_port>:NebulaGraph 访问端口。<explorer_address>:NebulaGraph Explorer 访问地址。<explorer_port>:NebulaGraph Explorer 访问端口。
示例:
curl -i -X POST -H "Content-Type: application/json" -H "Authorization: Bearer WyJyb290IiwiMTIzIl0=" -d '{"address":"192.168.8.111","port":9669}' http://192.168.8.145:7002/api-open/v1/connect
返回结果:
HTTP/1.1 200 OK
Content-Type: application/json
Set-Cookie: explorer_token=eyJhbxxx; Path=/; # Max-Age=259200; HttpOnly
Traceparent: 00-1c3f55cdbf81e13a2331ed88155ce0bf-2b97474943563f20-# 00
Date: Thu, 14 Jul 2022 06:47:01 GMT
Content-Length: 54
{
"code": 0,
"data": {
"success": true
},
"message": "Success"
}
需要关注的参数如下:
explorer_token:Token 信息。
Max-Age:Token 有效时间。单位:秒。默认为 259200 秒,即 3 天。可以在安装目录内的config/app-config.yaml文件内修改默认有效时间。
请求结果¶
-
API 如果调用成功,会返回如下信息:
{ code: 0, message: 'Success', data: <ResponseData> //根据接口返回相应结果。 }
-
API如果调用失败,会返回对应的通用错误码,例如:
{ code: 40004000, message: '<ErrBadRequest>', //返回具体报错信息。 }通用错误码的说明参见下文。
通用错误码¶
| 错误码 | 信息 | 说明 |
|---|---|---|
| 40004000 | ErrBadRequest |
请求异常 |
| 40004001 | ErrParam |
请求参数异常 |
| 40104000 | ErrUnauthorized |
请求未授权 |
| 40104001 | ErrSession |
登录会话异常 |
| 40304000 | ErrForbidden |
请求被拒绝 |
| 40404000 | ErrNotFound |
请求资源不存在 |
| 50004000 | ErrInternalServer |
内部服务异常 |
| 50004001 | ErrInternalDatabase |
数据库异常 |
| 50004002 | ErrInternalController |
控制器异常 |
| 50004003 | ErrInternalLicense |
证书校验异常 |
| 90004000 | ErrUnknown |
未知错误 |
作业/任务状态码¶
| 状态码 | 说明 |
|---|---|
| 0 | 准备中 |
| 1 | 执行中 |
| 2 | 执行成功 |
| 3 | 执行失败 |
| 4 | 已中断 |
| 5 | 暂停中 |
最后更新:
2025年4月21日