文档列表
本页内容

API 调用

调用 ProcessMind API 指引

本指南将为您提供调用 ProcessMind API 的实例与最佳实践。不论您是需要获取数据、提交信息,还是自动化 workflow 等操作,理解 API 的用法对于系统集成和流程自动化至关重要。

认证变量

  • apiKey 所有 API 请求都需在 header 中添加您的 API key 进行身份验证。API key 可在 ProcessMind 账号设置中获取。
  • tenantId 某些 API 接口需要 Tenant ID,用于指定请求所属组织。该 ID 在您的 organization 中唯一,也可在账号设置内找到。
  • datatableId 操作 dataset 时需提供 Datatable ID 以标识正在使用的数据表。该 ID 可在 ProcessMind 的 dataset 设置菜单 [获取数据表 ID] 查看。

文件直传

ProcessMind支持通过预签名URL直接上传文件到datatable。这种方式让您可以安全上传文件,无需暴露API密钥或其他敏感信息。 请注意,预签名URL有时间限制,获取后需尽快使用。如需获得直传URL,需要发送GET请求至相关接口。 您可在ProcessMind的数据集设置菜单点击**[获取上传URL]获得该地址。URL有效期最长可选1小时、1周或1个月**。

接口概览

MethodEndpoint描述
GET/tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl获取临时预签名URL,用于上传文件到datatable。
GET/tenant/{tenantId}/datasets获取指定tenant下的dataset列表。
GET/tenant/{tenantId}获取指定tenant的详细信息。
GET/tenant/{tenantId}/organization获取tenant所属组织的信息。

基础 URL

所有 API 请求都需使用以下基础 URL:https://api.processmind.com

获取预签名上传URL

接口:GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl 参数:

  • tenantId – tenant的ID(string)。
  • datatableId – 目标datatable的ID(string)。
  • apiKey – 您的API密钥(string)。

返回: 返回包含PreSignedUploadUrl的对象,该URL为临时上传地址(通常用HTTP PUT上传)。

示例(使用helper函数):

const presignedUrl = await getPresignedUploadUrl({
  apiKey,
  tenantId: 'tenant-123',
  datatableId: 'table-456'
});
console.log(presignedUrl); // 例如: https://s3.amazonaws.com/…?X-Amz-Signature=…

获取Dataset列表

接口:GET /tenant/{tenantId}/datasets 参数:

  • tenantId – tenant的ID。
  • apiKey – 您的API密钥。

返回: 属于tenant的dataset对象数组。

示例:

const datasets = await getDatasets({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(datasets);

获取Tenant详细信息

接口:GET /tenant/{tenantId} 参数:

  • tenantId – tenant的ID。
  • apiKey – 您的API密钥。

返回: 包含tenant元数据信息的对象,如名称、创建时间和套餐类型等。

示例:

const tenantInfo = await getTenant({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(tenantInfo);

查询组织信息

接口:GET /tenant/{tenantId}/organization 参数:

  • tenantId – tenant的ID。
  • apiKey – 您的API密钥。

返回: 与tenant关联的组织信息(如公司名称、地址、联系方式等)。

示例:

const org = await getOrganization({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(org);

文件上传

uploadFile函数演示如何通过预签名URL上传文件。一般流程如下:

  1. 使用getPresignedUploadUrl函数获取预签名URL。
  2. 通过PUT请求使用该URL上传文件内容,预签名URL直接授权上传到存储服务,无需其他凭证。
  3. (可选)如需,通知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:可选,通知API上传完成
  // (视后端实现而定)
}

info

  • 预签名URL会在设定时间后失效(通常为几分钟),请尽快使用。
  • 上传失败(如网络中断)请重新申请新的预签名URL并重试。
  • 一定要妥善保管您的apiKey,切勿在客户端(如前端页面)暴露。

BASH 示例

使用两步 curl 调用上传文件到 ProcessMind 的最简 Bash 脚本(参数为占位符)

下载 BASH 示例

NodeJS 示例

演示如何通过预签名 URL 将本地 CSV 文件上传到 ProcessMind。

步骤:

  1. 通过API获取预签名上传URL
  2. 读取本地磁盘文件
  3. 使用HTTP PUT上传该文件到预签名URL

配置说明:

  • 调用 uploadFileToProcessMind() 需传入 API key、tenantId、datatableId 和 filePath。
  • API基础地址为 https://api.processmind.com
下载 NodeJS 示例

Python 示例

使用预签名 URL 将本地 CSV 文件上传到远程 API。

操作步骤:

  1. 从 API 获取预签名上传 URL。
  2. 读取本地文件。
  3. 通过 HTTP PUT 将文件上传到预签名 URL。

配置方法:

  • 按需填写 api_key、tenant_id、datatable_id、file_path。
下载 Python 示例