テンプレートAPI概要
テンプレートは分析ワークフローを定義する再利用可能なノートブック設定です。テンプレートAPIを使用して、ノートブックテンプレートの一覧取得、取得、作成、および管理をプログラムで行えます。
主要な概念
テンプレートとは?
テンプレートは事前設定されたノートブック定義で、以下を含みます:
- ブロック:フィルター、計算機、インサイト、その他の分析コンポーネント
- MCLテキスト:ノートブック構造を定義する設定テキスト
- メタデータ:名前、説明、カテゴリ、プロセスコンテキスト
テンプレートからノートブックを作成すると、すべてのブロックと設定が自動的に適用されます。
テンプレートの種類
| 種類 | 対象範囲 | APIで作成可能? | APIで削除可能? |
|---|---|---|---|
| グローバル | すべてのテナント | いいえ | いいえ |
| テナント固有 | 単一テナント | はい | はい |
グローバルテンプレートはシステム全体で管理され、管理者インターフェースを通じて管理されます。テナント固有テンプレートは本APIを通じて作成および管理できます。
テンプレートのカテゴリ
テンプレートは次のカテゴリに分類されます:
| カテゴリ | 説明 |
|---|---|
Templates |
標準分析テンプレート |
Custom |
ユーザー作成のカスタムテンプレート |
BaseKnowledge |
基礎知識テンプレート |
認証
すべてのテンプレートAPIエンドポイントはグローバルAPIキーが必要です。テナントAPIキーではテンプレート操作にアクセスできません。
curl -H "Authorization: Bearer YOUR_GLOBAL_API_KEY" \
https://your-mindzie-instance.com/api/templates
グローバルでないAPIキーを使用した場合、以下のエラーが返されます:
{
"error": "This endpoint requires a Global API key.",
"hint": "Global API keys can be created at /admin/global-api-keys"
}
APIエンドポイント
| メソッド | エンドポイント | 説明 |
|---|---|---|
| GET | /api/templates |
すべてのグローバルテンプレートを一覧表示 |
| GET | /api/templates/tenant/{tenantId} |
特定テナントのテンプレート一覧(グローバル+テナント固有) |
| GET | /api/templates/category/{category} |
カテゴリ別テンプレート一覧 |
| GET | /api/templates/{templateId} |
テンプレート詳細とMCLテキスト取得 |
| GET | /api/templates/{templateId}/thumbnail |
テンプレートのサムネイル画像取得 |
| POST | /api/templates/tenant/{tenantId} |
テナント固有テンプレートの作成 |
| PUT | /api/templates/{templateId} |
テンプレートの更新 |
| DELETE | /api/templates/{templateId} |
テンプレートの削除 |
クイックスタート
テナントのすべてのテンプレートを一覧表示
curl -X GET "https://your-mindzie-instance.com/api/templates/tenant/12345678-1234-1234-1234-123456789012" \
-H "Authorization: Bearer YOUR_GLOBAL_API_KEY"
テンプレート詳細の取得
curl -X GET "https://your-mindzie-instance.com/api/templates/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" \
-H "Authorization: Bearer YOUR_GLOBAL_API_KEY"
テンプレートからノートブックを作成
Notebook APIを使用してテンプレートからノートブックを作成します:
curl -X POST "https://your-mindzie-instance.com/api/{tenantId}/{projectId}/notebook/investigation/{investigationId}/from-template" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"name": "My Analysis"
}'
レスポンス構造
テンプレート一覧レスポンス
{
"templates": [
{
"templateId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"name": "Process Discovery",
"description": "Standard process discovery workflow",
"category": "Templates",
"processName": "Order to Cash",
"tenantId": null,
"isGlobal": true,
"hasThumbnail": true,
"autoAddedDefaultSortOrder": 100,
"dateModified": "2024-01-15T10:30:00Z"
}
],
"totalCount": 1
}
テンプレート詳細レスポンス
{
"templateId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"name": "Process Discovery",
"description": "Standard process discovery workflow",
"category": "Templates",
"processName": "Order to Cash",
"mclText": "// MCL configuration text here...",
"tenantId": null,
"isGlobal": true,
"hasThumbnail": true,
"autoAddedDefaultSortOrder": 100,
"originatingNotebookId": null,
"dateCreated": "2024-01-01T00:00:00Z",
"dateModified": "2024-01-15T10:30:00Z",
"createdBy": null,
"createdByName": "System",
"modifiedBy": null,
"modifiedByName": "System"
}