8
n8n 한국어amn8n.com

간단한 워크플로우

중급

이것은AI, IT Ops분야의자동화 워크플로우로, 11개의 노드를 포함합니다.주로 Code, Slack, Webhook, Aggregate, GoogleDrive 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. 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)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
중급
노드 수11
카테고리2
노드 유형8
난이도 설명

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34