シンプルなワークフロー
中級
これはAI, IT Ops分野の自動化ワークフローで、11個のノードを含みます。主にCode, Slack, Webhook, Aggregate, GoogleDriveなどのノードを使用、AI技術を活用したスマート自動化を実現。 Straker、Google Drive、Slack を使用した自動ドキュメント翻訳品質検証
前提条件
- •Slack Bot Token または Webhook URL
- •HTTP Webhookエンドポイント(n8nが自動生成)
- •Google Drive API認証情報
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "UlhQJ6EtKLNQ0D0B",
"meta": {
"instanceId": "80505302fd25f9874da713d840f99df997e6fbacf51f09d5b5fa57decd258ea9",
"templateCredsSetupCompleted": true
},
"name": "Simple Workflow",
"tags": [],
"nodes": [
{
"id": "3686255e-4eee-41aa-9046-76ef2d0159f5",
"name": "フラット化",
"type": "n8n-nodes-base.code",
"position": [
200,
740
],
"parameters": {
"jsCode": "/**\n * n8n “Function” node — Run Once for All Items\n * ──> emits one item per target-file URL, with\n * • filename tagged <base>_<site_shortname>.<ext>\n * • original language_uuid preserved\n */\nreturn items.flatMap(({ json: { data } }) => {\n if (!data?.source_files) {\n throw new Error('No source_files array found in job payload');\n }\n\n // uuid → site_shortname\n const shortCode = Object.fromEntries(\n (data.target_languages ?? []).map(l => [\n l.uuid.toLowerCase(),\n l.site_shortname ?? l.code,\n ]),\n );\n\n return data.source_files.flatMap(sf =>\n (sf.target_files ?? []).map(tf => {\n const short = shortCode[tf.language_uuid.toLowerCase()] || tf.language_uuid;\n const [name, ext = ''] = sf.filename.split(/(?=\\.[^\\.]+$)/); // split at last dot\n\n return {\n json: {\n url: tf.url,\n filename: `${name}_${short}${ext}`,\n source_file_uuid: sf.file_uuid,\n target_file_uuid: tf.target_file_uuid,\n language_uuid: tf.language_uuid,\n status: tf.status,\n },\n };\n }),\n );\n});\n"
},
"typeVersion": 2
},
{
"id": "f8a3825e-2091-4359-ad1a-9ac9ed4423a0",
"name": "入力フォルダ監視",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
-240,
480
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "1jS3LMLVuHbsKFmtTRiRmUPUBO-CKqsfb",
"cachedResultUrl": "",
"cachedResultName": ""
}
},
"notesInFlow": true,
"typeVersion": 1
},
{
"id": "53ab19cd-4abc-463c-9c98-00e4fe843ef1",
"name": "ファイルダウンロード",
"type": "n8n-nodes-base.googleDrive",
"position": [
-20,
480
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "on4yFmHCAe4A3uke",
"name": "Google Drive account"
}
},
"notesInFlow": true,
"typeVersion": 3
},
{
"id": "a29304d4-4d30-4d36-9db1-0c0412c946a9",
"name": "完了待機",
"type": "n8n-nodes-base.webhook",
"position": [
-240,
740
],
"webhookId": "6540f764-161d-4627-b7c2-a78a992daf1d",
"parameters": {
"path": "6540f764-161d-4627-b7c2-a78a992daf1d",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "0e4c0d6c-db2d-4625-9f57-235342ce791e",
"name": "出力フォルダへ保存",
"type": "n8n-nodes-base.googleDrive",
"position": [
640,
740
],
"parameters": {
"name": "={{ $('Flatten').item.json.filename }}",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "16Ke3E8wSbTVfuOUXrex-ueNLuyIRhK95",
"cachedResultUrl": "",
"cachedResultName": ""
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "on4yFmHCAe4A3uke",
"name": "Google Drive account"
}
},
"notesInFlow": true,
"typeVersion": 3
},
{
"id": "5152a976-9ea9-48f6-bbe1-3bbbff90f13b",
"name": "通知",
"type": "n8n-nodes-base.slack",
"position": [
1080,
740
],
"webhookId": "516ba7f2-c441-4cf9-a045-ef8842b273fb",
"parameters": {
"text": "={{ $('Fetch Job Info').first().json.data.title }} {{ $('Fetch Job Info').first().json.data.status }}",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "list",
"value": "C08NJCEJS8Y",
"cachedResultName": "slack-bots"
},
"otherOptions": {}
},
"notesInFlow": true,
"typeVersion": 2.3
},
{
"id": "e9cac943-64d4-4a3e-99cb-e4f1ac8cbfaf",
"name": "集約",
"type": "n8n-nodes-base.aggregate",
"position": [
860,
740
],
"parameters": {
"options": {},
"aggregate": "aggregateAllItemData"
},
"typeVersion": 1
},
{
"id": "21827824-54e7-458a-bab7-8fb3f83421ab",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1100,
260
],
"parameters": {
"width": 720,
"height": 840,
"content": "# Straker Verify n8n Node\n\nThis node allows you to interact with the Straker Verify API to manage translation projects, API keys, user information, and files directly within your n8n workflows.\n\n## Configuration\n\n**Credentials**: Connect your Straker Verify account by creating a new credential in n8n using your Straker Verify API Key. You can find more information on obtaining an API key in the [Straker Verify API documentation](https://api-verify.straker.ai/docs).\n\n## How It's Used\n\n### Workflow 1: Submit for Translation\n\n1. **Trigger (e.g., `Watch Input Folder` on Google Drive)**: Detects new files.\n2. **Download File (e.g., `Download Files` from Google Drive)**: Fetches the file content.\n3. **`Start Translation` (Straker Verify Node - Project: Create)**: Sends the file to Straker Verify to begin the translation process. This step involves specifying target languages, a Straker workflow, and a project title.\n\n### Workflow 2: Retrieve Translation\n\n1. **Trigger (e.g., `Wait for Completion` via Webhook)**: Listens for a notification from Straker Verify (if a callback URL was configured) that the translation is ready.\n2. **`Fetch Job Info` (Straker Verify Node - Project: Get)**: Retrieves details about the completed translation job using its ID.\n3. **`Grab Translation` (Straker Verify Node - File: Get)**: Downloads the translated file(s) from Straker Verify.\n4. **Save & Notify (e.g., `Save to Output Folder` on Google Drive & `Notify` via Slack)**: Stores the translated file and informs users.\n\nThis node helps automate your translation tasks by connecting Straker Verify with other services in n8n."
},
"typeVersion": 1
},
{
"id": "5f4e70ca-2db9-4f52-94b3-f65c2c67bbe5",
"name": "ジョブ情報取得",
"type": "n8n-nodes-straker-verify.strakerVerify",
"position": [
-20,
740
],
"parameters": {
"operation": "get",
"projectId": "={{ $json.body.job_uuid }}"
},
"credentials": {
"strakerVerifyApi": {
"id": "iRfa1PqR7RY6GKtJ",
"name": "Straker Verify account"
}
},
"notesInFlow": true,
"typeVersion": 1
},
{
"id": "180231a6-563a-4843-a450-98f67cda6215",
"name": "翻訳取得",
"type": "n8n-nodes-straker-verify.strakerVerify",
"position": [
420,
740
],
"parameters": {
"fileId": "={{ $json.target_file_uuid }}",
"resource": "file"
},
"credentials": {
"strakerVerifyApi": {
"id": "iRfa1PqR7RY6GKtJ",
"name": "Straker Verify account"
}
},
"notesInFlow": true,
"typeVersion": 1
},
{
"id": "b0cd4ece-949b-43d1-8229-2c6988dac15e",
"name": "翻訳開始",
"type": "n8n-nodes-straker-verify.strakerVerify",
"position": [
200,
480
],
"parameters": {
"title": "TEST 12",
"languages": [],
"operation": "create",
"workflowId": "78ed818e-3655-4bd2-b347-dcce14e58c1c"
},
"notesInFlow": true,
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "173445a9-d8f0-4f31-a46d-8671eabf98a8",
"connections": {
"3686255e-4eee-41aa-9046-76ef2d0159f5": {
"main": [
[
{
"node": "180231a6-563a-4843-a450-98f67cda6215",
"type": "main",
"index": 0
}
]
]
},
"e9cac943-64d4-4a3e-99cb-e4f1ac8cbfaf": {
"main": [
[
{
"node": "5152a976-9ea9-48f6-bbe1-3bbbff90f13b",
"type": "main",
"index": 0
}
]
]
},
"53ab19cd-4abc-463c-9c98-00e4fe843ef1": {
"main": [
[
{
"node": "b0cd4ece-949b-43d1-8229-2c6988dac15e",
"type": "main",
"index": 0
}
]
]
},
"5f4e70ca-2db9-4f52-94b3-f65c2c67bbe5": {
"main": [
[
{
"node": "3686255e-4eee-41aa-9046-76ef2d0159f5",
"type": "main",
"index": 0
}
]
]
},
"180231a6-563a-4843-a450-98f67cda6215": {
"main": [
[
{
"node": "0e4c0d6c-db2d-4625-9f57-235342ce791e",
"type": "main",
"index": 0
}
]
]
},
"f8a3825e-2091-4359-ad1a-9ac9ed4423a0": {
"main": [
[
{
"node": "53ab19cd-4abc-463c-9c98-00e4fe843ef1",
"type": "main",
"index": 0
}
]
]
},
"a29304d4-4d30-4d36-9db1-0c0412c946a9": {
"main": [
[
{
"node": "5f4e70ca-2db9-4f52-94b3-f65c2c67bbe5",
"type": "main",
"index": 0
}
]
]
},
"0e4c0d6c-db2d-4625-9f57-235342ce791e": {
"main": [
[
{
"node": "e9cac943-64d4-4a3e-99cb-e4f1ac8cbfaf",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 人工知能, IT運用
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
AI スマートアシスタント: Supabase ストレージと Google Drive ファイルとの対話
AIワンチャットボット:SupabaseストレージとGoogle Driveのファイルと対話
If
Set
Wait
+
If
Set
Wait
62 ノードMark Shcherbakov
エンジニアリング
ペットショップ 4
ペットショップ予約AIエージェント
If
Set
Code
+
If
Set
Code
187 ノードBruno Dias
人工知能
[テンプレート] AIペットショップ v8
AIペットショップアシスタント - GPT-4o、Googleカレンダー、WhatsApp/Instagram/Facebookを統合
If
N8n
Set
+
If
N8n
Set
244 ノードAmanda Benks
営業
AI エージェント レストラン [テンプレート]
🤖 WhatsApp、Instagram、MessengerのAIレストランアシスタント
If
N8n
Set
+
If
N8n
Set
239 ノードAmanda Benks
その他
AI駆動のRAGドキュメント処理とチャットボット - Google Drive、Supabase、OpenAI
Google Drive、Supabase、OpenAIを基盤としたAI駆動のRAGドキュメント処理とチャットボット
Set
Code
Limit
+
Set
Code
Limit
35 ノードBilly Christi
人工知能
自動チケットジェネレーター
自動チケットジェネレーター:Slackのコメントを構造化されたプロジェクトチケットに変換
Code
Slack
Webhook
+
Code
Slack
Webhook
8 ノードVarritech
人工知能