このページの内容

API概要 – 簡単認証・ファイル連携・データ管理

ProcessMind へAPIコールする方法

このガイドでは、ProcessMind サービスのAPIコール事例とベストプラクティスを紹介します。データの取得・登録やワークフロー自動化など、API連携方法を理解することが重要です。

詳細なエンドポイント仕様やリクエスト/レスポンス形式はAPIリファレンスをご覧ください。

追加の例やクライアントライブラリはAPIドキュメント(GitHub)へ。

API ベースURL

全APIリクエストは下記のURLへ送信します:

https://api.processmind.com

認証

全てのAPIリクエストには x-api-key ヘッダーでAPIキーが必要です:

x-api-key: your-api-key-here

APIキーはProcessMindのアカウント設定から取得できます。APIキー取得方法を参照してください。

重要な用語

  • apiKey – すべてのAPIリクエストに利用する認証トークン
  • tenantId – ご利用のワークスペース/組織ID。アカウント設定で確認可能
  • datatableId – データ操作対象のデータテーブルID。ProcessMind のデータセット設定メニュー([データテーブルID取得])から確認できます

主な機能

ProcessMind API でできること:

  • テナント管理 – テナント情報取得、設定変更、統計参照
  • ユーザー管理 – テナントや組織のユーザー追加・更新・削除
  • プロセス管理 – プロセス作成、BPMNモデルのアップロード、フォルダ整理
  • データ連携 – データテーブルをプロセスへマッピング(分析用)
  • データアップロード – CSV/XLSXファイルをデータテーブルへ直接アップロード
  • データセット管理 – データセット/データテーブルの一覧・確認・削除

よく使う例

ProcessMind API でよく利用される操作の実践例を紹介します。

署名付きアップロードURLの取得

データテーブルにファイルをアップロードする前に、署名付きURLを取得します:

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

データセット一覧取得

テナント内のすべてのデータセットを取得:

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

テナント情報の取得

テナントの詳細情報を取得する:

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

プロセスの作成

テナント内に新しいプロセスを作成する:

const process = await createProcess({
	apiKey,
	tenantId: "tenant-123",
	displayName: "Order to Cash"
});
console.log(process.id); // 後続処理でこのIDを利用

BPMNモデルのアップロード

プロセスの定義となるBPMNファイルをアップロード:

const fs = require("fs");
const bpmnXml = fs.readFileSync("./my-process.bpmn", "utf8");

await uploadBpmn({
	apiKey,
	tenantId: "tenant-123",
	processId: "process-456",
	bpmnXml
});

データをプロセスにマッピング

分析のためデータテーブルをプロセスに紐付ける:

const mapping = await createProcessMapping({
	apiKey,
	tenantId: "tenant-123",
	processId: "process-456",
	dataTableId: "datatable-789",
	displayName: "Sales Data 2024",
	showByDefault: true
});

ユーザーをテナントに追加

テナントへユーザーを追加する例:

const result = await addTenantUser({
	apiKey,
	tenantId: "tenant-123",
	id: "user-456",
	email: "colleague@example.com",
	isAdminInTenant: false,
	isActiveInTenant: true,
	sendInvitationEmail: true
});

ファイルのアップロード

ProcessMind でファイルをアップロードする一般的な流れ:

  1. getPresignedUploadUrl 呼び出しで署名付きURLを取得
  2. そのURLへPUTリクエストでファイル本体を送信
  3. 署名付きURLでクラウドストレージへ直接アップロード(追加認証不要)

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
	});
}

info

  • 署名付きURLは一定時間で有効期限が切れます(通常数分)。取得後すぐご利用ください。
  • アップロードに失敗した場合(例: ネットワーク断)、再試行には新たな署名付きURLを取得してください。
  • apiKeyは必ず安全に管理し、フロント等のクライアント側ソースに公開しないでください。

完全な例

複数の言語でそのまま使えるコピペ可能なサンプルをご紹介します。

Bash例:ファイルアップロード

2回のcurlコマンドでProcessMindへファイルをアップロードする最小限のBashスクリプト例です(各値は適宜置換してください)。

BASHサンプルをダウンロード

Node.js例:ローカルCSVファイルアップロード

presigned URLを使ってローカルCSVファイルをProcessMindへアップロードします。

手順:

  1. APIからpresignedアップロードURLを取得
  2. ローカルファイルを読み込み
  3. HTTP PUTでpresigned URLへファイルをアップロード

設定:

  • uploadFileToProcessMind()の呼び出しにAPIキー、tenantId、datatableId、filePathを指定してください。
  • APIのBase URLは https://api.processmind.com です
NodeJSサンプルをダウンロード

Python例:ローカルCSVファイルアップロード

presigned URLを使いローカルCSVファイルをリモートAPIにアップロードします。

手順:

  1. APIからpresignedアップロードURL取得
  2. ローカルファイルを読み込み
  3. HTTP PUTでpresigned URLへファイルアップロード

設定:

  • api_key、tenant_id、datatable_id、file_pathを必要に応じて設定してください。
Pythonサンプルをダウンロード

次のステップ

info

API利用のご質問やサポートが必要な場合は、サポートチームまでお問い合わせいただくか、開発者コミュニティフォーラムをご活用ください。