APIコール方法
ProcessMind APIコール方法
このガイドでは、ProcessMindのAPIコール例やベストプラクティスを紹介します。データ取得や情報送信、ワークフロー自動化など、APIの連携方法を理解することでシステム統合がスムーズに行えます。
認証変数
- apiKey すべてのAPIリクエストでは、認証のためリクエストヘッダーにAPIキーを含める必要があります。APIキーはProcessMindのアカウント設定で取得できます。
- tenantId 一部APIエンドポイントではリクエストのコンテキスト指定のためにTenant IDが必要です。このIDは組織ごとに固有で、アカウント設定でも確認できます。
- datatableId dataset操作時、対象データテーブルを指定するDatatable IDが必要です。このIDはProcessMind内のデータセット設定メニュー [Get Data Table ID] で確認できます。
ファイルの直接アップロード
ProcessMindでは、presigned URLを使いdatatableへ直接ファイルをアップロードできます。この方法ならAPIキーなどの機密情報を公開せず安全にアップロード可能です。 presigned URLには有効期限があるので、取得後すぐに使ってください。直接アップロード用URLは、エンドポイントにGETリクエストして取得します。 このURLはProcessMindのdataset設定メニュー**[Get upload URL]から取得できます。有効期限は1時間・1週間・1ヶ月**から設定可能です。
エンドポイント概要
Method | Endpoint | 説明 |
---|---|---|
GET | /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl | データテーブルへのファイルアップロード用一時Pre-signed URLを返します。 |
GET | /tenant/{tenantId}/datasets | 指定テナントのdataset一覧を返します。 |
GET | /tenant/{tenantId} | 指定テナントの詳細情報を取得します。 |
GET | /tenant/{tenantId}/organization | テナントのorganization情報を返します。 |
ベースURL
すべてのAPIリクエストは以下のベースURLに送信します: https://api.processmind.com
Pre-signed Upload URL取得方法
エンドポイント: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl
パラメータ:
- tenantId – テナントID(string)
- datatableId – アップロード対象データテーブルID(string)
- apiKey – あなたのAPIキー(string)
戻り値: PreSignedUploadUrlを含むレスポンス。これでファイルを直接(通常はHTTP PUTで)アップロードできます。
例(ヘルパーを利用):
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 – テナントID
- apiKey – あなたのAPIキー
戻り値: このテナントに属するdatasetオブジェクトの配列です。
例:
const datasets = await getDatasets({
apiKey,
tenantId: 'tenant-123'
});
console.log(datasets);
テナント詳細取得
エンドポイント: GET /tenant/{tenantId}
パラメータ:
- tenantId – テナントID
- apiKey – あなたのAPIキー
戻り値: テナント名・作成日・プラン等のメタデータを含むオブジェクト。
例:
const tenantInfo = await getTenant({
apiKey,
tenantId: 'tenant-123'
});
console.log(tenantInfo);
organization詳細取得
エンドポイント: GET /tenant/{tenantId}/organization
パラメータ:
- tenantId – テナントID
- apiKey – あなたのAPIキー
戻り値: テナントに紐づくorganization(会社名・住所・連絡先)の情報。
例:
const org = await getOrganization({
apiKey,
tenantId: 'tenant-123'
});
console.log(org);
ファイルアップロード手順
uploadFile関数はPre-signed URLを使ったファイルアップロード例です。主な流れ:
- getPresignedUploadUrlでPre-signed URLを取得。
- そのURLにファイル内容をPUTリクエスト。Pre-signed URLで直接アップロードでき追加認証は不要です。
- (必要なら)アップロード完了をAPIに通知します(バックエンド仕様次第)。
fetch利用の簡易例:
async function uploadFile({ apiKey, tenantId, datatableId, file }) {
// Step 1: Pre-signed URL取得
const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
// Step 2: ファイルをPUTでアップロード
await fetch(uploadUrl, {
method: 'PUT',
headers: {
'Content-Type': file.type
},
body: file
});
// Step 3: 必要時APIに完了通知
// (バックエンド仕様による)
}
info
- Pre-signed URLは短時間で期限切れとなるため取得後すぐにご利用ください。
- アップロード失敗時(例:ネット切断)は新しいPre-signed URLを再取得して再試行を。
- apiKeyは厳重に管理し、クライアント(公開フロント等)には絶対に公開しないこと。
BASH 例
2つのcurlコマンドを利用してProcessMindにファイルをアップロードする最小構成のBashスクリプト例。必要な値はプレースホルダに置き換えてください。
NodeJS 例
事前署名付きURLを利用して、ローカルのCSVファイルをProcessMindにアップロードする例です。
手順:
- APIから事前署名付きアップロードURLを取得
- ローカルディスクのファイルを読み込む
- HTTP PUTでファイルをアップロード
設定方法:
- uploadFileToProcessMind() を呼ぶ際、apiKey、tenantId、datatableId、filePathを指定してください。
- APIベースURLは https://api.processmind.com です
Python 例
事前署名付きURLを使い、ローカルCSVファイルをリモートAPIへアップロードします。
手順:
- APIから事前署名付きアップロードURLを取得
- ローカルファイルの読み込み
- HTTP PUTでアップロード
設定方法:
- api_key, tenant_id, datatable_id, file_pathを適宜修正してください。