API参考:数据端点
Dataset 接口说明
Dataset 是包含相关 datatable 的逻辑集合。
获取 Dataset 列表
获取 tenant 下所有 dataset。
Endpoint: GET /tenant/{tenantId}/datasets
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
响应信息:
[
{
"id": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"displayName": "Sales Data",
"createdAt": "2024-01-20T08:00:00Z",
"datatableCount": 3
}
]
新建 Dataset
在指定 tenant 下新建一个 dataset。
Endpoint: POST /tenant/{tenantId}/datasets
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
请求体示例:
{
"displayName": "My New Dataset",
"treeNodeType": "Dataset",
"treeParentId": null
}
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| displayName | string | 是 | dataset 名称 |
| treeNodeType | string | 否 | 默认 Dataset,也可填写 TreeGroup |
| treeParentId | string | 否 | 上级文件夹ID(用于分组) |
响应信息: 返回新建的 dataset 对象。
获取 Dataset
获取指定 dataset 的详细信息。
Endpoint: GET /tenant/{tenantId}/datasets/{datasetId}
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
| datasetId | string | path | 是 | dataset 的唯一标识 |
响应信息:
{
"id": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"displayName": "Sales Data",
"createdAt": "2024-01-20T08:00:00Z",
"datatables": [
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders",
"rowCount": 15000
}
]
}
删除 Dataset
删除指定 dataset 及其包含的所有 datatable。
Endpoint: DELETE /tenant/{tenantId}/datasets/{datasetId}
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
| datasetId | string | path | 是 | dataset 的唯一标识 |
响应信息:
{
"success": true
}
warning
删除 dataset 时,所有相关 datatable 及数据将被永久删除,此操作无法恢复。
Datatable 接口说明
Datatable 用于存储 Process Mining 所需的 event log data。
获取 Datatable 列表
获取 tenant 下所有 datatable。
Endpoint: GET /tenant/{tenantId}/datatables
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
响应信息:
[
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders 2024",
"datasetId": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"rowCount": 15000,
"createdAt": "2024-01-25T10:00:00Z"
}
]
新建 Datatable
在已有 dataset 下新建 datatable。
Endpoint: POST /tenant/{tenantId}/datasets/{datasetId}/datatables
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
| datasetId | string | path | 是 | dataset 的唯一标识 |
请求体示例:
{
"displayName": "Orders Q1 2024"
}
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| displayName | string | 是 | datatable 名称 |
响应信息: 返回新建的 datatable 对象。
获取 Datatable
获取指定 datatable 的详细信息。
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
| datatableId | string | path | 是 | datatable 的唯一标识 |
响应信息:
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders 2024",
"datasetId": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"rowCount": 15000,
"columns": [
{"name": "case_id", "type": "string"},
{"name": "activity", "type": "string"},
{"name": "timestamp", "type": "datetime"}
],
"createdAt": "2024-01-25T10:00:00Z"
}
获取 Presigned 上传 URL
获取临时 URL,可直接上传文件到 datatable。
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl
参数说明:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | tenant 的唯一标识 |
| datatableId | string | path | 是 | datatable 的唯一标识 |
| datasetid | string | query | 是 | dataset 的唯一标识 |
| filename | string | query | 是 | 上传文件名 |
| filesize | string | query | 是 | 文件大小(字节) |
| filelastmodified | string | query | 是 | 文件最后修改 timestamp |
| validforseconds | string | query | 否 | URL 有效时间(秒),默认 3600 |
响应信息:
{
"PreSignedUploadUrl": "https://s3.amazonaws.com/bucket/path?X-Amz-Algorithm=AWS4-HMAC-SHA256&..."
}
使用说明: 使用返回的 URL 通过 HTTP PUT 上传文件:
# 获取带必要参数的 presigned URL
URL=$(curl -s -H "X-API-Key: your-api-key" \
"https://api.processmind.com/tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl?datasetid={datasetId}&filename=data.csv&filesize=1024&filelastmodified=1704067200000")
# 上传文件
curl -X PUT --upload-file "data.csv" -H "Content-Type: text/csv" "$URL"
info
presigned URL 有效期有限,请尽快获取后使用。如上传失败,请重新获取 presigned URL。