AutomationFlowsWeb Scraping › Phase3 - Twelve Labs解析と正規化

Phase3 - Twelve Labs解析と正規化

Phase3 - Twelve Labs解析と正規化. Uses httpRequest. Event-driven trigger; 11 nodes.

Event trigger★★★★☆ complexity11 nodesHTTP Request
Web Scraping Trigger: Event Nodes: 11 Complexity: ★★★★☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "E9797g7q5CGuc8dy",
  "name": "Phase3 - Twelve Labs\u89e3\u6790\u3068\u6b63\u898f\u5316",
  "nodes": [
    {
      "parameters": {},
      "id": "manual-trigger-001",
      "name": "\u25b6 Phase3\u958b\u59cb",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        240,
        300
      ]
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "video_id",
              "name": "video_id",
              "value": "={{ $json.video_id || 'sample-video-id' }}",
              "type": "string"
            },
            {
              "id": "url",
              "name": "url",
              "value": "={{ $json.url || 'https://www.youtube.com/shorts/sample' }}",
              "type": "string"
            },
            {
              "id": "title",
              "name": "title",
              "value": "={{ $json.title || 'sample title' }}",
              "type": "string"
            },
            {
              "id": "channel",
              "name": "channel",
              "value": "={{ $json.channel || 'sample channel' }}",
              "type": "string"
            },
            {
              "id": "run_id",
              "name": "run_id",
              "value": "={{ $json.run_id || $now.toISO() }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "id": "set-input-002",
      "name": "Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        460,
        300
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.twelvelabs.io/v1.3/indexes",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n  \"index_name\": \"video-pipeline-{{ $json.run_id }}\",\n  \"models\": [\n    { \"model_name\": \"marengo3.0\", \"model_options\": [\"visual\", \"audio\"] }\n  ]\n}"
      },
      "id": "create-index-003",
      "name": "\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u4f5c\u6210",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        680,
        300
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.twelvelabs.io/v1.3/tasks",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "formData",
        "formParameters": {
          "parameters": [
            {
              "name": "index_id",
              "value": "={{ $('\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u4f5c\u6210').item.json._id }}"
            },
            {
              "name": "url",
              "value": "={{ $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.url }}"
            }
          ]
        }
      },
      "id": "create-task-004",
      "name": "\u89e3\u6790\u30bf\u30b9\u30af\u4f5c\u6210",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        900,
        300
      ]
    },
    {
      "parameters": {
        "amount": 60,
        "unit": "seconds"
      },
      "id": "wait-005",
      "name": "60\u79d2\u5f85\u6a5f",
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [
        1120,
        300
      ]
    },
    {
      "parameters": {
        "method": "GET",
        "url": "=https://api.twelvelabs.io/v1.3/tasks/{{ $('\u89e3\u6790\u30bf\u30b9\u30af\u4f5c\u6210').item.json._id }}",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            }
          ]
        }
      },
      "id": "check-status-006",
      "name": "\u72b6\u614b\u78ba\u8a8d",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1340,
        300
      ]
    },
    {
      "parameters": {
        "jsCode": "const status = $input.first().json.status;\nif (status !== 'ready') {\n  return [{ json: { ready: false, status } }];\n}\nreturn [{ json: { ...$input.first().json, ready: true } }];"
      },
      "id": "ready-check-007",
      "name": "ready\u5224\u5b9a",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        1560,
        300
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.twelvelabs.io/v1.3/generate",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n  \"video_id\": \"{{ $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.video_id }}\",\n  \"type\": \"summary\"\n}"
      },
      "id": "summary-008",
      "name": "Summary\u53d6\u5f97",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1780,
        140
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.twelvelabs.io/v1.3/generate",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n  \"video_id\": \"{{ $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.video_id }}\",\n  \"type\": \"chapter\"\n}"
      },
      "id": "chapter-009",
      "name": "Chapter\u53d6\u5f97",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1780,
        300
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.twelvelabs.io/v1.3/generate",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-api-key",
              "value": "={{ $env.TWELVELABS_API_KEY }}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n  \"video_id\": \"{{ $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.video_id }}\",\n  \"type\": \"highlight\"\n}"
      },
      "id": "highlight-010",
      "name": "Highlight\u53d6\u5f97",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1780,
        460
      ]
    },
    {
      "parameters": {
        "jsCode": "const summary = $('Summary\u53d6\u5f97').item.json.data || $('Summary\u53d6\u5f97').item.json.summary || '';\nconst chapters = $('Chapter\u53d6\u5f97').item.json.data || [];\nconst highlightsRaw = $('Highlight\u53d6\u5f97').item.json.data || [];\nconst highlights = (Array.isArray(highlightsRaw) ? highlightsRaw : []).slice(0, 5).sort((a, b) => b.score - a.score).map((item, index) => ({\n  rank: 5 - index,\n  start: item.start,\n  end: item.end,\n  score: item.score ?? 0,\n  label: `\u7b2c${5 - index}\u4f4d`\n}));\n\nreturn [{\n  json: {\n    run_id: $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.run_id,\n    source: {\n      video_id: $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.video_id,\n      url: $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.url,\n      title: $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.title,\n      channel: $('Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b').item.json.channel\n    },\n    summary,\n    chapters,\n    highlights,\n    status: 'ready',\n    analyzed_at: new Date().toISOString()\n  }\n}];"
      },
      "id": "normalize-011",
      "name": "\u7d50\u679c\u6574\u5f62",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        2020,
        300
      ]
    }
  ],
  "connections": {
    "\u25b6 Phase3\u958b\u59cb": {
      "main": [
        [
          {
            "node": "Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Phase2\u5165\u529b\u3092\u53d7\u3051\u53d6\u308b": {
      "main": [
        [
          {
            "node": "\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u4f5c\u6210",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u4f5c\u6210": {
      "main": [
        [
          {
            "node": "\u89e3\u6790\u30bf\u30b9\u30af\u4f5c\u6210",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u89e3\u6790\u30bf\u30b9\u30af\u4f5c\u6210": {
      "main": [
        [
          {
            "node": "60\u79d2\u5f85\u6a5f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "60\u79d2\u5f85\u6a5f": {
      "main": [
        [
          {
            "node": "\u72b6\u614b\u78ba\u8a8d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\u72b6\u614b\u78ba\u8a8d": {
      "main": [
        [
          {
            "node": "ready\u5224\u5b9a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ready\u5224\u5b9a": {
      "main": [
        [
          {
            "node": "Summary\u53d6\u5f97",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Summary\u53d6\u5f97": {
      "main": [
        [
          {
            "node": "Chapter\u53d6\u5f97",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Chapter\u53d6\u5f97": {
      "main": [
        [
          {
            "node": "Highlight\u53d6\u5f97",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Highlight\u53d6\u5f97": {
      "main": [
        [
          {
            "node": "\u7d50\u679c\u6574\u5f62",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Phase3 - Twelve Labs解析と正規化. Uses httpRequest. Event-driven trigger; 11 nodes.

Source: https://github.com/moyashi0060/passive-income-ai/blob/4db82e5b405b0cdf8ec1ff3b6690302339d631a6/n8n-workflows/phase3-twelvelabs.json — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Web Scraping

This workflow listens for an “Approved” label on a Trello card, reads the AI draft bookkeeping JSON from card comments, and posts the corresponding transaction to Xero. It then adds a Xero deep link b

Trello Trigger, HTTP Request
Web Scraping

02_LLM_Pipeline v1.0. Uses executeWorkflowTrigger, httpRequest, seaTable. Event-driven trigger; 65 nodes.

Execute Workflow Trigger, HTTP Request, Sea Table
Web Scraping

This workflow allows you to import any workflow from a file or another n8n instance and map the credentials easily. A multi-form setup guides you through the entire process At the beginning you have t

Execute Command, Read Write File, HTTP Request +3
Web Scraping

[n8n] Advanced URL Parsing and Shortening Workflow - Switchy.io Integration. Uses splitInBatches, stickyNote, httpRequest, html. Event-driven trigger; 56 nodes.

HTTP Request, GitHub, Stop And Error +1
Web Scraping

[](https://youtu.be/c7yCZhmMjtI)

HTTP Request, GitHub, Stop And Error +1