API参考:组织
组织管理和用户管理端点的API参考。
warning
删除数据集会永久移除所有关联的数据表和数据。此操作无法撤销。
用法:
# Get the presigned URL with required parameters
URL=$(curl -s -H "X-API-Key: your-api-key" \
"https://api.processmind.com/v1/tenant/{tenantId}/datatables/{datatableId}/uploads/presigned-url?datasetid={datasetId}&filename=data.csv&filesize=1024&filelastmodified=1704067200000")
# Upload the file
curl -X PUT --upload-file "data.csv" -H "Content-Type: text/csv" "$URL" info
预签名URL会在有限时间后过期。获取后请尽快使用。如果上传失败,请申请新的预签名URL。
用法:
# Get the download URL
RESPONSE=$(curl -s -H "X-API-Key: your-api-key" \
"https://api.processmind.com/v1/tenant/{tenantId}/datatables/{dataTableId}/download")
# Extract URL and download the file
DOWNLOAD_URL=$(echo $RESPONSE | jq -r '.downloadUrl')
curl -o "data.csv" "$DOWNLOAD_URL" info
上传的数据表会保留原始文件格式(CSV、Parquet、ORC、JSONL或Excel)。模拟结果始终采用CSV格式。
用法:
# Get delta presigned URL
RESPONSE=$(curl -s -H "X-API-Key: your-api-key" \
"https://api.processmind.com/v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/presigned-url?delta=true&filename=delta.csv&filesize=1024&filelastmodified=1704067200000")
# Upload the delta file
UPLOAD_URL=$(echo $RESPONSE | jq -r '.PreSignedUploadUrl')
curl -X PUT --upload-file "delta.csv" -H "Content-Type: text/csv" "$UPLOAD_URL" info
使用增量上传前,数据表必须已加载初始数据。增量文件必须与原始上传文件格式相同(例如,CSV增量文件对应CSV原始文件,Parquet增量文件对应Parquet原始文件),且列结构也必须一致。增量上传不支持Excel和XES文件。
info
通过预签名URL上传后,ProcessMind会自动处理增量数据并与原始数据合并。轮询GET /datatables/{dataTableId},直到hasDataLoaded为true,即可确认处理完成。
数据集是逻辑上相关的一组数据表。
端点: GET /v1/tenant/{tenantId}/datasets
**身份验证:**环境范围API密钥 · read权限范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
| limit | integer | query | 否 | 返回项目数上限 |
| offset | integer | query | 否 | 跳过的项目数 |
响应(200):
数据集列表
[
{
"id": "00000000-0000-0000-0000-000000000000",
"treeParentId": "00000000-0000-0000-0000-000000000000",
"treeNodeType": "Dataset",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"dataTableId": "00000000-0000-0000-0000-000000000000"
}
] 错误:
端点: POST /v1/tenant/{tenantId}/datasets
**身份验证:**环境范围API密钥 · write权限范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
请求正文:
{
"displayName": "string",
"treeParentId": "00000000-0000-0000-0000-000000000000",
"treeNodeType": "Dataset"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| displayName | string | 是 | 数据树中显示的数据集名称 最大长度:128 |
| treeParentId | string | 否 | 父文件夹ID(null = 顶层) 格式: uuid |
| treeNodeType | Dataset | TreeGroup | 否 | 数据集或文件夹 允许的值: Dataset、TreeGroup默认值: Dataset |
响应(201):
已创建的数据集
{
"id": "00000000-0000-0000-0000-000000000000",
"treeParentId": "00000000-0000-0000-0000-000000000000",
"treeNodeType": "Dataset",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"dataTableId": "00000000-0000-0000-0000-000000000000"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 格式:uuid |
| treeParentId | string | 是 | 格式:uuid |
| treeNodeType | Dataset | TreeGroup | 是 | 允许的值:Dataset、TreeGroup默认值: Dataset |
| displayName | string | 是 | 默认值:""最大长度:128 |
| createdAt | string | 是 | 格式:date-time |
| updatedAt | string | 是 | 格式:date-time |
| dataTableId | string | 是 | 格式:uuid |
错误:
端点: GET /v1/tenant/{tenantId}/datasets/{datasetId}
**身份验证:**环境范围API密钥 · read权限范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
| datasetId | string | path | 是 | 格式:uuid |
响应(200):
数据集
{
"id": "00000000-0000-0000-0000-000000000000",
"treeParentId": "00000000-0000-0000-0000-000000000000",
"treeNodeType": "Dataset",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"dataTableId": "00000000-0000-0000-0000-000000000000"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 格式:uuid |
| treeParentId | string | 是 | 格式:uuid |
| treeNodeType | Dataset | TreeGroup | 是 | 允许的值:Dataset、TreeGroup默认值: Dataset |
| displayName | string | 是 | 默认值:""最大长度:128 |
| createdAt | string | 是 | 格式:date-time |
| updatedAt | string | 是 | 格式:date-time |
| dataTableId | string | 是 | 格式:uuid |
错误:
端点: DELETE /v1/tenant/{tenantId}/datasets/{datasetId}
**身份验证:**环境范围API密钥 · write权限范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
| datasetId | string | path | 是 | 格式:uuid |
响应(200):
数据集已删除
{
"success": true,
"message": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| success | boolean | 是 | |
| message | string | 是 |
错误:
端点: GET /v1/tenant/{tenantId}/datasets/{datasetId}/datatables
**身份验证:**环境范围API密钥 · read权限范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
| datasetId | string | path | 是 | 格式:uuid |
| limit | integer | query | 否 | 返回项目数上限 |
| offset | integer | query | 否 | 跳过的项目数 |
响应(200):
数据集中的数据表列表
[
{
"id": "00000000-0000-0000-0000-000000000000",
"datasetId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"hasDataLoaded": true,
"filterExpression": "string",
"metaInfo": {
"type": "nodata"
}
}
] 错误:
端点: POST /v1/tenant/{tenantId}/datasets/{datasetId}/datatables
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| datasetId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"displayName": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| displayName | string | 是 | 数据表名称 最大长度:128 |
响应(201):
已创建的数据表
{
"id": "00000000-0000-0000-0000-000000000000",
"datasetId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"hasDataLoaded": true,
"filterExpression": "string",
"metaInfo": {
"type": "nodata"
}
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 格式:uuid |
| datasetId | string | 是 | 格式:uuid |
| displayName | string | 是 | 默认值:""最大长度:128 |
| createdAt | string | 是 | 格式:date-time |
| updatedAt | string | 是 | 格式:date-time |
| hasDataLoaded | boolean | 是 | 默认值:false |
| filterExpression | string | 是 | 最大长度:4096 |
| metaInfo | object | object | object | object | 是 |
错误:
数据表存储流程挖掘所用的实际事件日志数据。
端点: GET /v1/tenant/{tenantId}/datatables
**身份验证:**租户范围的API密钥 · read范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| limit | integer | 查询参数 | 否 | 返回项目的最大数量 |
| offset | integer | 查询参数 | 否 | 跳过的项目数量 |
响应(200):
数据表列表
[
{
"id": "00000000-0000-0000-0000-000000000000",
"datasetId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"hasDataLoaded": true,
"filterExpression": "string",
"metaInfo": {
"type": "nodata"
}
}
] 错误:
端点: GET /v1/tenant/{tenantId}/datatables/{dataTableId}
**身份验证:**租户范围的API密钥 · read范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
响应(200):
数据表
{
"id": "00000000-0000-0000-0000-000000000000",
"datasetId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"hasDataLoaded": true,
"filterExpression": "string",
"metaInfo": {
"type": "nodata"
}
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 格式:uuid |
| datasetId | string | 是 | 格式:uuid |
| displayName | string | 是 | 默认值:""最大长度:128 |
| createdAt | string | 是 | 格式:date-time |
| updatedAt | string | 是 | 格式:date-time |
| hasDataLoaded | boolean | 是 | 默认值:false |
| filterExpression | string | 是 | 最大长度:4096 |
| metaInfo | object | object | object | object | 是 |
错误:
端点: PUT /v1/tenant/{tenantId}/datatables/{dataTableId}
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"displayName": "string",
"filterExpression": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| displayName | string | 否 | 数据表名称 最大长度:128 |
| filterExpression | string | 否 | 应用于数据的筛选表达式 最大长度:4096 |
响应(200):
已更新的数据表
{
"id": "00000000-0000-0000-0000-000000000000",
"datasetId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"createdAt": "2024-03-15T16:30:00Z",
"updatedAt": "2024-03-15T16:30:00Z",
"hasDataLoaded": true,
"filterExpression": "string",
"metaInfo": {
"type": "nodata"
}
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | string | 是 | 格式:uuid |
| datasetId | string | 是 | 格式:uuid |
| displayName | string | 是 | 默认值:""最大长度:128 |
| createdAt | string | 是 | 格式:date-time |
| updatedAt | string | 是 | 格式:date-time |
| hasDataLoaded | boolean | 是 | 默认值:false |
| filterExpression | string | 是 | 最大长度:4096 |
| metaInfo | object | object | object | object | 是 |
错误:
端点: GET /v1/tenant/{tenantId}/datatables/{dataTableId}/download
**身份验证:**租户范围的API密钥 · read范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
响应(200):
下载URL
{
"downloadUrl": "string",
"expiresInSeconds": 0
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| downloadUrl | string | 是 | |
| expiresInSeconds | number | 是 |
错误:
需要API密钥具有uploadData范围。
端点: POST /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/multipart/abort
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"uploadId": "string",
"uploadHandle": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| uploadId | string | 是 | |
| uploadHandle | string | 是 | 发起上传步骤返回的不透明句柄 |
响应(200):
已中止
{
"message": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| message | string | 是 |
错误:
需要API密钥具有uploadData范围。系统会组装已上传的分段(使用其ETag),并触发事件日志处理。
端点: POST /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/multipart/complete
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"uploadId": "string",
"uploadHandle": "string",
"parts": [
{
"partNumber": 0,
"eTag": "string"
}
]
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| uploadId | string | 是 | |
| uploadHandle | string | 是 | 发起上传步骤返回的不透明句柄 |
| parts | object[] | 是 |
响应(200):
已完成({ completed: true })
{
"message": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| message | string | 是 |
错误:
需要API密钥具有uploadData范围。此接口会返回uploadId和不透明的uploadHandle,供后续的parts、complete和abort调用使用。适用于大型文件。
端点: POST /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/multipart/initiate
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"fileName": "string",
"fileSize": 0,
"fileLastModified": 0,
"partCount": 0,
"delta": true,
"datasetId": "00000000-0000-0000-0000-000000000000",
"modelId": "00000000-0000-0000-0000-000000000000"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| fileName | string | 是 | |
| fileSize | number | 是 | |
| fileLastModified | number | 是 | |
| partCount | number | 否 | 预签名分段数量(默认值为10) |
| delta | boolean | 否 | 是否为增量上传 |
| datasetId | string | 否 | 格式:uuid |
| modelId | string | 否 | 格式:uuid |
响应(200):
上传已发起
{
"uploadId": "string",
"uploadHandle": "string",
"partCount": 0,
"partSizeBytes": 0
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| uploadId | string | 否 | |
| uploadHandle | string | 否 | 用于分段上传、完成和中止步骤的不透明句柄 |
| partCount | number | 否 | |
| partSizeBytes | number | 否 |
错误:
需要API密钥具有uploadData范围。每个请求的分段编号都会返回一个预签名PUT URL。
端点: POST /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/multipart/parts
**身份验证:**租户范围的API密钥 · write范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | 路径 | 是 | 格式:uuid |
| dataTableId | string | 路径 | 是 | 格式:uuid |
请求正文:
{
"uploadId": "string",
"uploadHandle": "string",
"partNumbers": [
0
]
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| uploadId | string | 是 | |
| uploadHandle | string | 是 | 发起上传步骤返回的不透明句柄 |
| partNumbers | number[] | 是 |
响应(200):
分段预签名URL({ uploadId, parts: [{ partNumber, url }] })
{
"message": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| message | string | 是 |
错误:
API密钥需要具备uploadData权限范围(与读写权限无关)。系统会将声明的filesize(字节)与平台允许的最大上传大小进行比较;文件上传后还会重新核验实际对象大小。
端点: GET /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/presigned-url
**身份验证:**租户范围的API密钥 · read范围
参数:
| 名称 | 类型 | 位置 | 必填 | 说明 |
|---|---|---|---|---|
| tenantId | string | path | 是 | 格式:uuid |
| dataTableId | string | path | 是 | 格式:uuid |
| filename | string | query | 是 | |
| filesize | string | query | 是 | 文件大小,单位为字节(会与平台允许的最大上传文件大小进行比较) |
| filelastmodified | string | query | 是 | |
| datasetid | string | query | 否 | 完整上传(非增量上传)时必填 |
| modelid | string | query | 否 | 格式:uuid |
| delta | true | false | query | 否 | 允许的值:true、false |
| partnumber | string | query | 否 | |
| validforseconds | integer | query | 否 | 预签名URL有效期,单位为秒(1–3600,默认3600) |
响应(200):
预签名URL
{
"PreSignedUploadUrl": "string"
} | 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| PreSignedUploadUrl | string | 是 | S3预签名PUT URL(有效期约1小时) |
错误:
无需信用卡,也无需等待,即刻开始。将组织的实际工作方式转化为清晰、互联的流程设计。
构建流程架构,明确职责归属与管控措施,并在各层级统一角色分工。
开始免费试用,为流程治理、管理和持续改进建立可靠的统一基础。