This workflow corresponds to n8n.io template #5930 — we link there as the canonical source.
This workflow follows the Form Trigger → Google Docs recipe pattern — see all workflows that pair these two integrations.
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 →
{
"meta": {
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "790b4f91-1a03-4386-8fdd-1d2a1b35b77e",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
0,
0
],
"parameters": {
"options": {},
"formTitle": "Tiktok Transcript ",
"formFields": {
"values": [
{
"fieldLabel": "url",
"requiredField": true
},
{
"fieldLabel": "language",
"requiredField": true
}
]
}
},
"typeVersion": 2.2
},
{
"id": "93c6b503-f1ae-43eb-917b-687a881fe676",
"name": "Wait",
"type": "n8n-nodes-base.wait",
"position": [
480,
0
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "0589a81f-0f28-4db3-8426-0a814f745348",
"name": "Google Docs",
"type": "n8n-nodes-base.googleDocs",
"position": [
1100,
0
],
"parameters": {
"actionsUi": {
"actionFields": [
{
"action": "insert"
}
]
},
"operation": "update"
},
"credentials": {
"googleDocsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 2
},
{
"id": "029bcd51-12d0-4b84-b33d-0c43b98aebb7",
"name": "Open AI",
"type": "n8n-nodes-base.httpRequest",
"position": [
740,
0
],
"parameters": {
"url": "https://openai-gpt-4o-mini.p.rapidapi.com/chatAI/gpt-4-1-mini.php",
"method": "POST",
"options": {},
"jsonBody": "={\n \"temperature\": 0.7,\n \"messages\": [\n {\n \"role\": \"system\",\n \"content\": \"You are a helpful assistant. Your task is to process the subtitles provided to you and return a meaningful response based on the content. The subtitles may be in various languages. Please handle them accordingly and respond in the {{ $('On form submission').item.json.language }} language.\"\n },\n {\n \"role\": \"user\",\n \"content\": \"{{ $json.subtitles.replace(/\\\"/g, '\\\\\"').replace(/\\n/g, '\\\\n') }}\"\n }\n ]\n}\n",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "openai-gpt-4o-mini.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "c3af2912-c844-4dfd-82c7-2caa7928c497",
"name": "Tiktok Transcript",
"type": "n8n-nodes-base.httpRequest",
"position": [
220,
0
],
"parameters": {
"url": "https://tiktok-transcript-ai.p.rapidapi.com/tiktok/index.php",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "url",
"value": "={{ $json.url }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "x-rapidapi-host",
"value": "tiktok-transcript-ai.p.rapidapi.com"
},
{
"name": "x-rapidapi-key",
"value": "your key"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "a7585dae-e5b8-44c0-bf49-b757ff1b0906",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-500,
-280
],
"parameters": {
"width": 380,
"height": 1020,
"content": "# TikTok Transcriptor \n### Workflow Overview:\nThis **n8n workflow** automates the process of generating a **TikTok video transcript**, processing it with **OpenAI GPT-4** for interpretation, and saving the results into **Google Docs**. The workflow uses **RapidAPI** for both transcription and AI processing.\n\n### Nodes:\n1. **On form submission**: Triggers when a user submits a TikTok video URL and selects a language.\n2. **Tiktok Transcript**: Retrieves the transcript of the TikTok video using **[TikTok Transcript API](https://rapidapi.com/skdeveloper/api/tiktok-transcript-ai)**.\n3. **Wait**: Adds a delay to ensure data is properly fetched.\n4. **Open AI**: Sends the transcript to **OpenAI GPT-4** for processing via **[OpenAI GPT-4 API](https://rapidapi.com/skdeveloper/api/openai-gpt-4o-mini)**.\n5. **Google Docs**: Updates a Google Doc with the processed results.\n\n### Benefits:\n- **Automated Transcript Generation**: Quickly fetches transcripts from TikTok videos using **[TikTok Transcript API](https://rapidapi.com/skdeveloper/api/tiktok-transcript-ai)**.\n- **AI Interpretation**: Processes the transcript using **OpenAI GPT-4** via **[OpenAI GPT-4 API](https://rapidapi.com/skdeveloper/api/openai-gpt-4o-mini)** to summarize, translate, or interpret the text.\n- **Google Docs Integration**: Efficiently saves the AI-generated result to a Google Doc for easy access and sharing.\n\n### Challenges Solved:\n- **Language Support**: Handles transcripts in multiple languages, ensuring global accessibility.\n- **Automation**: Eliminates manual transcription and summarization work, speeding up the process.\n- **Error Handling**: Uses **RapidAPI** to ensure reliable and scalable integrations for both TikTok and OpenAI services.\n"
},
"typeVersion": 1
},
{
"id": "fc4a87b5-2516-4f08-851d-9ad741e31d17",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-80,
-320
],
"parameters": {
"height": 540,
"content": "### 1. **On form submission**:\n - **Use Case**: This node is triggered when a user submits a form with a TikTok video URL and selects a language.\n - **Benefit**: It initiates the workflow by capturing user input in real-time.\n - **Challenge Resolved**: Automatically handles user inputs and initiates further steps without manual intervention.\n"
},
"typeVersion": 1
},
{
"id": "f0aa7a93-7553-4343-8764-fc21454174bf",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
180,
-320
],
"parameters": {
"height": 540,
"content": "### 2. **Tiktok Transcript**:\n - **Use Case**: Fetches the transcript of the TikTok video using the **[TikTok Transcript API](https://rapidapi.com/skdeveloper/api/tiktok-transcript-ai)**.\n - **Benefit**: Provides an accurate transcript of TikTok videos for further processing.\n - **Challenge Resolved**: Converts video content to text automatically, removing the need for manual transcription."
},
"typeVersion": 1
},
{
"id": "35105cb0-ced0-4d7c-8198-a577e353d199",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
440,
-320
],
"parameters": {
"height": 540,
"content": "### 3. **Wait**:\n - **Use Case**: Pauses the workflow for a brief period to ensure that the transcript is fully retrieved before proceeding.\n - **Benefit**: Ensures synchronization and avoids race conditions where subsequent actions run before data is ready.\n - **Challenge Resolved**: Prevents errors that may occur due to premature API requests.\n"
},
"typeVersion": 1
},
{
"id": "dc2cdb88-b6b2-4325-9ef9-eedf740e19c3",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
720,
-320
],
"parameters": {
"height": 540,
"content": "### 4. **Open AI**:\n - **Use Case**: Sends the TikTok transcript to **[OpenAI GPT-4 API](https://rapidapi.com/skdeveloper/api/openai-gpt-4o-mini)** for further interpretation, summarization, or translation based on the selected language.\n - **Benefit**: Leverages powerful AI to process, summarize, or translate transcripts, providing valuable insights or additional information.\n - **Challenge Resolved**: Automatically processes the transcript, handling multiple languages and context-sensitive interpretations.\n "
},
"typeVersion": 1
},
{
"id": "f32837e5-f495-4492-b27a-e6f4ae3f8664",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1000,
-320
],
"parameters": {
"height": 540,
"content": "### 5. **Google Docs**:\n - **Use Case**: Updates a Google Doc with the processed result from OpenAI GPT-4.\n - **Benefit**: Saves the AI-generated content in a structured format within Google Docs for easy sharing and storage.\n - **Challenge Resolved**: Automates document generation and removes manual data entry, making the process more efficient.\n"
},
"typeVersion": 1
}
],
"connections": {
"Wait": {
"main": [
[
{
"node": "Open AI",
"type": "main",
"index": 0
}
]
]
},
"Open AI": {
"main": [
[
{
"node": "Google Docs",
"type": "main",
"index": 0
}
]
]
},
"Tiktok Transcript": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Tiktok Transcript",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleDocsOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This automation workflow provides a seamless, efficient, and AI-powered solution for extracting, processing, and storing TikTok video subtitles. By combining TikTok Transcript API, OpenAI GPT-4 API, and Google Docs, this workflow transforms the process of transcription and text…
Source: https://n8n.io/workflows/5930/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Receive PDF Files - Users send PDF documents via Telegram to the bot OCR Processing - Mistral AI's OCR service extracts Arabic text from document pages Text Organization - Processes and formats extrac
This workflow processes passport images submitted through a form, extracts structured data using OpenAI OCR, and generates QR codes with the extracted information. Results are displayed on the form co
This n8n template automates scraping content from Skool communities using the Olostep API. It collects structured data from Skool pages and stores it in a clean format, making it easy to analyze commu
It is ideal for businesses handling vendor invoices, reimbursement forms, or bulk document intake.
This n8n template retrieves verbal brand identity markers from any web site.