API调用方法
如何调用 ProcessMind API
本指南为你提供调用 ProcessMind API 的实用案例与最佳实践。不论是查询 data、提交信息,还是自动化 workflow,理解 API 使用方法都很重要。 详细文档、所有 endpoint、认证方法、示例、返回格式、集成步骤等请访问 GitHub API Documentation。
认证参数说明
- apiKey 所有 API 请求需在请求头加上 API key 作为认证。API key 可在你的 ProcessMind 账户设置中获取。
- tenantId 部分 endpoint 需要 Tenant ID 指定请求对象。此 ID 在 organization 内唯一,可在账号设置中查找。
- datatableId 操作 dataset 时需要 Datatable ID 以区分数据表。该 ID 可在 ProcessMind 的 dataset 设置菜单 [Get Data Table ID] 查找。
直接文件上传
ProcessMind 支持通过预签名 URL 直接上传文件到 datatable,无需暴露 API key 或敏感信息。 请注意,预签名 URL 有有效期,获取后需及时使用。你需要向指定 endpoint 发送 GET 请求获取直传 URL。 你可以在 ProcessMind 的 dataset 设置菜单,用 [Get upload URL] 选项获得地址。有效期可设置为 1 小时、1 周或 1 个月。
API Endpoint 总览
| Method | Endpoint | 描述 |
|---|---|---|
| GET | /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl | 返回用于上传文件到 datatable 的临时预签名 URL。 |
| GET | /tenant/{tenantId}/datasets | 返回指定 tenant 的 dataset 列表。 |
| GET | /tenant/{tenantId} | 查询指定 tenant 的详细信息。 |
| GET | /tenant/{tenantId}/organization | 获取 tenant 关联的 organization 信息。 |
API 基础 URL
所有 API 请求请使用以下基础 URL:https://api.processmind.com
如何获取预签名上传 URL
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl
参数:
- tenantId – tenant 的 ID(string)。
- datatableId – 目标 datatable 的 ID(string)。
- apiKey – 你的 API key(string)。
返回:
包含 PreSignedUploadUrl 的响应对象,你可直接用这个临时 URL 上传文件(通常用 HTTP PUT)。
示例(使用工具函数):
const presignedUrl = await getPresignedUploadUrl({
apiKey,
tenantId: "tenant-123",
datatableId: "table-456"
});
console.log(presignedUrl); // 例如 https://s3.amazonaws.com/…?X-Amz-Signature=…
如何列出 Datasets
Endpoint: GET /tenant/{tenantId}/datasets
参数:
- tenantId – tenant 的 ID。
- apiKey – 你的 API key。
返回:
属于该 tenant 的 dataset 对象数组。
示例:
const datasets = await getDatasets({
apiKey,
tenantId: "tenant-123"
});
console.log(datasets);
如何查询 Tenant 详情
Endpoint: GET /tenant/{tenantId}
参数:
- tenantId – tenant 的 ID。
- apiKey – 你的 API key。
返回:
包含 tenant 元数据的对象(如名称、创建时间、套餐 plan 等)。
示例:
const tenantInfo = await getTenant({
apiKey,
tenantId: "tenant-123"
});
console.log(tenantInfo);
如何获取 Organization 详情
Endpoint: GET /tenant/{tenantId}/organization
参数:
- tenantId – tenant 的 ID。
- apiKey – 你的 API key。
返回:
关联 tenant 的 organization 信息(如公司名称、地址、联系方式等)。
示例:
const org = await getOrganization({
apiKey,
tenantId: "tenant-123"
});
console.log(org);
如何上传文件
uploadFile 函数演示如何用预签名 URL 上传文件。基本流程:
- 通过 getPresignedUploadUrl 获取预签名 URL。
- 使用 PUT 方法和文件内容上传到该 URL,预签名 URL 已授权保存,无需更多凭证。
- (可选)后端需要时,通知 API 上传已完成。
以下是使用 fetch 的简单示例:
async function uploadFile({ apiKey, tenantId, datatableId, file }) {
// 步骤 1:获取预签名URL
const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
// 步骤 2:用 PUT 上传文件
await fetch(uploadUrl, {
method: "PUT",
headers: {
"Content-Type": file.type
},
body: file
});
// 步骤 3:可选,通知后端已完成
//(依你的后端实现)
}
info
- 预签名 URL 有有效期(通常几分钟),要及时使用。
- 上传失败(如网络中断)需重新申请新的预签名 URL。
- 妥善保管 apiKey,不要暴露在客户端(比如页面前端)。
Bash 示例:上传文件
该 Bash 脚本用两个 curl 命令上传文件至 ProcessMind,参数为占位符。
Node.js 示例:本地 CSV 文件上传
通过预签名 URL 把本地 CSV 文件上传到 ProcessMind。
步骤:
- 从 API 获取预签名上传 URL。
- 读取本地文件。
- 用 HTTP PUT 上传到该 URL。
参数:
- 调用 uploadFileToProcessMind() 时传 API key、tenantId、datatableId、filePath。
- API base URL 设置为
https://api.processmind.com
Python 示例:本地 CSV 文件上传
通过预签名 URL 将本地 CSV 文件上传到远程 API。
步骤:
- 从 API 获取预签名上传 URL。
- 读取本地文件。
- 用 HTTP PUT 上传到该 URL。
参数:
- 按需填写 api_key、tenant_id、datatable_id、file_path。
info
如需详细的 API 文档,包括可用 endpoint、认证方法、接口示例、响应格式和分步集成指南,请访问我们的 GitHub API 文档。 如有疑问或需 API 协助,欢迎联系支持团队或加入开发者社区。