Rechercher des questions vidéo TikTok par mots-clés avec Dumpling AI + GPT-4
Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 16 nœuds.Utilise principalement des nœuds comme Code, Wait, Limit, SplitOut, DataTable. Trouver des questions vidéo TikTok par mots-clés avec Dumpling AI + GPT-4
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Clé API OpenAI
Nœuds utilisés (16)
Catégorie
{
"id": "z82YLTAObSRGi4C7",
"meta": {
"instanceId": "a1ae5c8dc6c65e674f9c3947d083abcc749ef2546dff9f4ff01de4d6a36ebfe6",
"templateCredsSetupCompleted": true
},
"name": "Find TikTok Video Questions from Keywords Using Dumpling AI + GPT-4",
"tags": [],
"nodes": [
{
"id": "1fb5c245-3539-4d68-bdb6-60619577e6d4",
"name": "No Operation, ne rien faire",
"type": "n8n-nodes-base.noOp",
"position": [
1040,
-240
],
"parameters": {},
"typeVersion": 1
},
{
"id": "b09c504c-ceeb-4a00-889f-4a9c19eb0be4",
"name": "Recevoir la saisie de mot-clé",
"type": "n8n-nodes-base.formTrigger",
"position": [
-528,
208
],
"webhookId": "d4b23900-f9c3-4436-b41b-a7b2a95dc050",
"parameters": {
"options": {},
"formTitle": "Tik Tok Search ",
"formFields": {
"values": [
{
"fieldLabel": "Keywords"
}
]
}
},
"typeVersion": 2.3
},
{
"id": "bc607c71-7c66-43ef-b879-98f9131bb35d",
"name": "Rechercher des utilisateurs TikTok (Dumpling AI)",
"type": "n8n-nodes-base.httpRequest",
"position": [
-304,
208
],
"parameters": {
"url": "https://app.dumplingai.com/api/v1/search-tiktok-users",
"method": "POST",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "query",
"value": "={{ $json.Keywords }}"
}
]
},
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "RLFzAcGRepr5eXZB",
"name": "Dumpling AI-n8n"
}
},
"typeVersion": 4.2
},
{
"id": "cd3017fb-7ff0-477c-b213-b90dfe728225",
"name": "Diviser les résultats de recherche en utilisateurs",
"type": "n8n-nodes-base.splitOut",
"position": [
-80,
208
],
"parameters": {
"options": {},
"fieldToSplitOut": "userList"
},
"typeVersion": 1
},
{
"id": "589d6871-c469-403a-adbc-f387eb07d007",
"name": "Limiter à 3 utilisateurs (Optionnel)",
"type": "n8n-nodes-base.limit",
"position": [
144,
208
],
"parameters": {},
"typeVersion": 1
},
{
"id": "986d014a-8c4e-40b5-9350-dc31e1529319",
"name": "Boucler sur les utilisateurs TikTok",
"type": "n8n-nodes-base.splitInBatches",
"position": [
368,
208
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "27944e93-66b9-4e2a-a6c7-2a0978cfe96d",
"name": "Attendre pour respecter les limites de débit",
"type": "n8n-nodes-base.wait",
"position": [
624,
288
],
"webhookId": "492f8f72-27ad-4255-a5a6-d0cb928cc89a",
"parameters": {
"amount": 15
},
"typeVersion": 1.1
},
{
"id": "314fddf5-735e-43a2-bf2f-d2758d010640",
"name": "Obtenir les vidéos de profil TikTok (Dumpling AI)",
"type": "n8n-nodes-base.httpRequest",
"position": [
816,
288
],
"parameters": {
"url": "https://app.dumplingai.com/api/v1/get-tiktok-profile-videos",
"method": "POST",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "handle",
"value": "={{ $json.user.search_user_name }}"
}
]
},
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "RLFzAcGRepr5eXZB",
"name": "Dumpling AI-n8n"
}
},
"typeVersion": 4.2
},
{
"id": "fd4266b2-8de3-46ea-9d9c-699cdc4ed31d",
"name": "Diviser les vidéos du profil",
"type": "n8n-nodes-base.splitOut",
"position": [
528,
-112
],
"parameters": {
"options": {},
"fieldToSplitOut": "aweme_list"
},
"typeVersion": 1
},
{
"id": "ae9dbbbe-6fed-4c34-ba8b-1923b39f5f66",
"name": "Boucler sur les vidéos",
"type": "n8n-nodes-base.splitInBatches",
"position": [
848,
-112
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "06fc76b0-85a2-4313-948d-50e46a2882b2",
"name": "Obtenir les commentaires pour chaque vidéo",
"type": "n8n-nodes-base.httpRequest",
"position": [
1040,
-64
],
"parameters": {
"url": "https://app.dumplingai.com/api/v1/get-tiktok-video-comments",
"method": "POST",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "url",
"value": "={{ $json.share_info.share_url }}"
}
]
},
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "RLFzAcGRepr5eXZB",
"name": "Dumpling AI-n8n"
}
},
"typeVersion": 4.2
},
{
"id": "e8c9360a-2ea2-4814-90a8-691f4774a37c",
"name": "Extraire les commentaires propres (Python)",
"type": "n8n-nodes-base.code",
"position": [
1264,
-64
],
"parameters": {
"language": "python",
"pythonCode": "# n8n Python Code Node\n# Extract all TikTok comment texts and return them in one structured block under \"Comment\"\n\ncomments_list = []\n\ndef extract_texts(comments):\n for comment in comments:\n if \"text\" in comment and comment[\"text\"]:\n comments_list.append({\"text\": comment[\"text\"]})\n if \"reply_comment\" in comment and comment[\"reply_comment\"]:\n extract_texts(comment[\"reply_comment\"])\n\ndata = items[0].get(\"json\", {})\n\nif isinstance(data, list) and len(data) > 0 and \"comments\" in data[0]:\n extract_texts(data[0][\"comments\"])\nelif \"comments\" in data:\n extract_texts(data[\"comments\"])\n\nreturn [{\n \"json\": {\n \"Comment\": comments_list\n }\n}]\n"
},
"typeVersion": 2
},
{
"id": "2d41131b-a582-46ce-ae5a-167fdf213ec6",
"name": "Trouver les principales questions des spectateurs (GPT-4)",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1488,
-64
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1",
"cachedResultName": "GPT-4.1"
},
"options": {},
"messages": {
"values": [
{
"role": "system",
"content": "You are an experienced TikTok content strategist. I will give you a collection of comments from a TikTok video. Your job is to carefully read through all the comments and identify the most commonly asked questions. These questions should be phrased exactly or very closely to how viewers ask them, not reworded in a generic way.\n\nPlease follow these steps:\n\nRead all the comments carefully and group similar questions together, even if they are worded slightly differently.\n\nIdentify the top recurring questions that appear the most.\n\nPresent the top questions clearly and concisely, ranked by frequency.\n\nExclude spam, unrelated chatter, or emoji-only comments.\n\nDo not generate answers, only list the questions."
},
{
"content": "=Here is the comment data: {{ JSON.stringify($json.Comment) }}\n\n"
}
]
}
},
"credentials": {
"openAiApi": {
"id": "fdhWALG84tBLgSZT",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "7dfc9bb9-8fbe-443d-abb5-5c8cafb17009",
"name": "Insérer le résultat dans DataTable",
"type": "n8n-nodes-base.dataTable",
"position": [
1840,
16
],
"parameters": {
"columns": {
"value": {
"Videos": "={{ $('Loop Through Videos').item.json.share_info.share_url }}",
"Keywords": "={{ $json.message.content }}"
},
"schema": [
{
"id": "Videos",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Videos",
"defaultMatch": false
},
{
"id": "Keywords",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Keywords",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "2fPy6VQQ9KIeBIFC",
"cachedResultUrl": "/projects/BTzFLWjYjhwngt0G/datatables/2fPy6VQQ9KIeBIFC",
"cachedResultName": "Tik Tok Keywords"
}
},
"typeVersion": 1
},
{
"id": "f1dddf8a-5393-4a3c-a719-7a9b8977bea3",
"name": "Note autocollante",
"type": "n8n-nodes-base.stickyNote",
"position": [
-544,
-64
],
"parameters": {
"width": 1008,
"height": 512,
"content": "## 🔎 Branch 1 – Search TikTok Users and Get Videos\n\n1. Trigger runs when a keyword is submitted via form \n2. Dumpling AI searches TikTok for matching users \n3. Splits users and limits to 3 (optional) \n4. For each user, fetches their latest videos \n5. Splits video list for individual processing\n\n✅ Uses Dumpling AI to fetch TikTok profiles and their video content\n"
},
"typeVersion": 1
},
{
"id": "1b1e9809-c98a-4bd6-a5e3-ab354330319b",
"name": "Note autocollante 1",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
-464
],
"parameters": {
"color": 6,
"width": 1440,
"height": 576,
"content": "## 💬 Branch 2 – Extract Questions from Comments with AI\n\n1. Loops through each video \n2. Uses Dumpling AI to get video comments \n3. Python code cleans raw comments \n4. GPT-4 processes clean text and extracts top viewer questions \n5. Final result is saved to DataTable\n\n✅ Ideal for finding content ideas or FAQ-style engagement hooks\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "4997fe2b-496d-446d-8f99-0c35d1b65b29",
"connections": {
"ae9dbbbe-6fed-4c34-ba8b-1923b39f5f66": {
"main": [
[
{
"node": "1fb5c245-3539-4d68-bdb6-60619577e6d4",
"type": "main",
"index": 0
}
],
[
{
"node": "06fc76b0-85a2-4313-948d-50e46a2882b2",
"type": "main",
"index": 0
}
]
]
},
"b09c504c-ceeb-4a00-889f-4a9c19eb0be4": {
"main": [
[
{
"node": "bc607c71-7c66-43ef-b879-98f9131bb35d",
"type": "main",
"index": 0
}
]
]
},
"986d014a-8c4e-40b5-9350-dc31e1529319": {
"main": [
[
{
"node": "fd4266b2-8de3-46ea-9d9c-699cdc4ed31d",
"type": "main",
"index": 0
}
],
[
{
"node": "27944e93-66b9-4e2a-a6c7-2a0978cfe96d",
"type": "main",
"index": 0
}
]
]
},
"fd4266b2-8de3-46ea-9d9c-699cdc4ed31d": {
"main": [
[
{
"node": "ae9dbbbe-6fed-4c34-ba8b-1923b39f5f66",
"type": "main",
"index": 0
}
]
]
},
"06fc76b0-85a2-4313-948d-50e46a2882b2": {
"main": [
[
{
"node": "e8c9360a-2ea2-4814-90a8-691f4774a37c",
"type": "main",
"index": 0
}
]
]
},
"589d6871-c469-403a-adbc-f387eb07d007": {
"main": [
[
{
"node": "986d014a-8c4e-40b5-9350-dc31e1529319",
"type": "main",
"index": 0
}
]
]
},
"27944e93-66b9-4e2a-a6c7-2a0978cfe96d": {
"main": [
[
{
"node": "314fddf5-735e-43a2-bf2f-d2758d010640",
"type": "main",
"index": 0
}
]
]
},
"7dfc9bb9-8fbe-443d-abb5-5c8cafb17009": {
"main": [
[
{
"node": "ae9dbbbe-6fed-4c34-ba8b-1923b39f5f66",
"type": "main",
"index": 0
}
]
]
},
"e8c9360a-2ea2-4814-90a8-691f4774a37c": {
"main": [
[
{
"node": "2d41131b-a582-46ce-ae5a-167fdf213ec6",
"type": "main",
"index": 0
}
]
]
},
"cd3017fb-7ff0-477c-b213-b90dfe728225": {
"main": [
[
{
"node": "589d6871-c469-403a-adbc-f387eb07d007",
"type": "main",
"index": 0
}
]
]
},
"2d41131b-a582-46ce-ae5a-167fdf213ec6": {
"main": [
[
{
"node": "7dfc9bb9-8fbe-443d-abb5-5c8cafb17009",
"type": "main",
"index": 0
}
]
]
},
"bc607c71-7c66-43ef-b879-98f9131bb35d": {
"main": [
[
{
"node": "cd3017fb-7ff0-477c-b213-b90dfe728225",
"type": "main",
"index": 0
}
]
]
},
"314fddf5-735e-43a2-bf2f-d2758d010640": {
"main": [
[
{
"node": "986d014a-8c4e-40b5-9350-dc31e1529319",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Avancé - Création de contenu, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Yang
@yangPartager ce workflow