Douyin Keyword Search
Search one Douyin keyword and return matching public videos, publishers, engagement metrics, and timestamps.
Descripción general
Keyword research on Douyin often starts with a simple phrase but quickly turns into a fragmented set of videos, accounts, and engagement signals. This app gathers public search results for one brand, product, topic, or campaign keyword and turns them into a structured content dataset. Each record connects the content itself with its publishing account, publication time, media links, and the engagement values visible when it was collected. The dataset is suited to research that needs evidence at the individual-content level. It preserves source identifiers and public URLs so analysts can trace notable results, while also retaining titles, account attributes, tags, recognized speech or on-screen text when available, and multiple engagement counters for comparison.
Data notes
Results come from Douyin's public keyword search and are deduplicated by Content ID. Ordering follows the selected search order and publication-period filter. Engagement values and follower counts are stored as numeric strings, while cooperation details, image lists, music details, publish locations, and topic tags remain in their original text representation. Collection time and Publish time use the source representation, whose time zone is not specified. Video duration is also preserved as a numeric string, but the source does not identify its unit. The dataset covers only public content discoverable through keyword search; deleted, private, login-only, and non-indexed content are outside its scope.
What the results look like
Each record represents one Douyin item found for the submitted keyword.
| Content ID | Content title | Account name | Publish time | Like count | Comment count |
|---|---|---|---|---|---|
| 6760573437619473671 | lol最逆天的彩蛋!揭晓! #lol | 呼叫网管 | 2019-11-18T17:18:59 | 547844.0 | 5446.0 |
| 7029249241700699400 | 《改口》真实经历#lol | 酒鬼大人 | 2021-11-11T17:57:06 | 474147.0 | 21519.0 |
| Additional fields include public content and account URLs, follower count, favorites, shares, downloads, video duration, verification details, recognized speech, on-screen text, music information, locations, and topic tags. |
Use cases
- For brand or campaign monitoring, compare Matched keyword, Publish time, Content title, and Like count to identify topics that attract attention over time.
- For creator discovery, combine Account name, Account URL, Follower count, Verification status, and engagement counters to shortlist relevant public accounts.
- For content benchmarking, group records by Topic tags and compare Like count, Comment count, Favorite count, and Share count to find formats and themes associated with stronger interaction.
Alcance y límites
One keyword per task with an expected result count from 1 to 200; results are returned in complete batches of 10 and may be rounded up; public searchable content only.
- Adecuada para
- When you need to discover public Douyin content about a brand, product, topic, or campaign.
- When you need a structured dataset of videos, publishing accounts, timestamps, and engagement metrics for content research.
- No usar para
- When you need comments from an individual video; this app returns keyword search results rather than comment details.
- When you need deleted, private, login-only, or otherwise non-searchable Douyin content.
Gestión de fallos
Comportamiento de fallos y reintentos declarado por el autor. Recomendamos incluirlo en tu prompt del sistema al integrar.
- 1If no results are returned, shorten or rephrase the keyword and submit a new task.
- 2Retry later after rate limits, temporary service errors, or timeouts; check the execution credential configuration after an authentication failure.
- 3Keep completed records after a partial success; resubmit the same input after a failed or expired task.
Entrada
Parámetros necesarios para llamar a esta App, generados a partir del input.schema del manifest.json.
| Campo | Nombre de negocio | Tipo | Obligatorio | Predeterminado | Enum / Restricciones | Ejemplo | Descripción |
|---|---|---|---|---|---|---|---|
| keyword | Search keyword | string | Sí | — | — | 韶音 | Brand, product, topic, or phrase to search on Douyin. Each task accepts one keyword from 1 to 512 characters. |
| crawl_count | Expected result count | integer | Sí | — | 1–200 | 50 | Expected number of results, from 1 to 200. Results arrive in complete batches of 10, so the actual count may be rounded up. |
| sort | Sort order | string(enum) | Sí | — | 1 (Comprehensive) / 4 (Newest) | 4 | Choose comprehensive relevance or newest-first ordering for the search results. |
| time_limit | Publication period | string(enum) | Sí | — | 1 (Past day) / 0 (Any time) | 0 | Limit results to content published within the last day, or search without a publication-time limit. |
Salida
Estructura de campos de un único registro, generada a partir del output.schema del manifest.json.
| Campo | Nombre de negocio | Tipo | Ejemplo | Descripción |
|---|---|---|---|---|
| accountId | Account ID | string | 109014805831 | Douyin identifier of the publishing account. |
| accountName | Account name | string | 呼叫网管 | Display name of the publishing account. |
| accountSecId | Account secure ID | string | MS4wLjABAAAAAtnCpevF0YXW29cXbyJmXnSyq6qZL-PdV2x8Cl6PQpw | Encrypted Douyin identifier of the publishing account. |
| accountShortId | Account short ID | string | — | Short identifier shown for the publishing account when available. |
| accountUniqueId | Douyin handle | string | HJWG | Unique public handle of the publishing account. |
| accountUrl | Account URL | string | https://www.douyin.com/user/MS4wLjABAAAAAtnCpevF0YXW29cXbyJmXnSyq6qZL-PdV2x8Cl6PQpw | Public Douyin profile URL of the publishing account. |
| accurateLocationCities | Matched cities | string | — | City-level location information associated with the content, as provided by the source. |
| accurateLocationProvinces | Matched provinces | string | — | Province-level location information associated with the content, as provided by the source. |
| anchorInfo | Anchor information | string | — | Raw anchor information attached to the content. |
| asrText | Speech transcript | string | — | Text recognized from the video's audio when available. |
| avatarUrl | Avatar URL | string | https://p11.douyinpic.com/aweme/100x100/aweme-avatar/tos-cn-avt-0015_5c0c342a89f6ce58ccd71b497a37a53e.heic?from=327834062 | Image URL for the publishing account's avatar. |
| bizId | Business ID | string | 英雄联盟 | Business identifier associated with the result record. |
| collectionCount | Favorite count | string | 3196.0 | Number of favorites saved as a numeric string. |
| commentCount | Comment count | string | 5446.0 | Number of comments saved as a numeric string. |
| contentId | Content ID | string | 6760573437619473671 | Unique identifier of the Douyin content. |
| contentText | Content text | string | — | Main text of the content when available. |
| contentTitle | Content title | string | lol最逆天的彩蛋!揭晓! #lol | Display title or caption of the content. |
| contentUrl | Content URL | string | https://www.douyin.com/video/6760573437619473671 | Public Douyin page URL for the content. |
| cooperationInfos | Cooperation information | string | [] | Cooperation details saved as a JSON-formatted string. |
| coverUrl | Cover URL | string | https://p95-sz-sign.douyinpic.com/tos-cn-p-0015/53734fedbaec4ad3968a06c6cb295e7e~tplv-dy-resize-walign-adapt-aq:540:q75.heic | Image URL for the content cover. |
| crawlTime | Collection time | string | 2026-09-09T16:39:38 | Time when the record was collected; the source does not specify a time zone. |
| diggCount | Like count | string | 547844.0 | Number of likes saved as a numeric string. |
| downloadCount | Download count | string | 8463.0 | Number of downloads saved as a numeric string. |
| fans | Follower count | string | 12170016 | Publisher follower count saved as a numeric string. |
| forwardCount | Forward count | string | 20.0 | Number of forwards saved as a numeric string. |
| imageUrlList | Image URL list | string | [] | Content image URLs saved as a JSON-formatted string. |
| isHot | Hot status | string | false | Whether the content is marked as hot, saved as the source string. |
| keyword | Matched keyword | string | 英雄联盟 | Search keyword associated with this result. |
| music | Music information | string | {"audition_duration":"78","author":"呼叫网管","owner_id":"109014805831","owner_nickname":"呼叫网管","id":"6760527209229798151","title":"@呼叫网管创作的原声"} | Music details saved as a JSON-formatted string. |
| ocrText | On-screen text | string | — | Text recognized from the content's visual frames when available. |
| poiInfo | Place information | string | — | Raw place information associated with the content. |
| publishLocation | Publish location | string | {} | Publishing location saved as a JSON-formatted string. |
| publishTime | Publish time | string | 2019-11-18T17:18:59 | Content publication time; the source does not specify a time zone. |
| shareCount | Share count | string | 8616.0 | Number of shares saved as a numeric string. |
| status | Content status | string | 有效 | Current validity status reported for the content. |
| tags | Topic tags | string | ["lol"] | Topic tags saved as a JSON-formatted string. |
| taskMeta | Task metadata | string | — | Keyword item and no-data marker associated with the result. |
| verified | Verification status | string | — | Publisher verification status as provided by the source. |
| verifyType | Verification type | string | — | Publisher verification type as provided by the source. |
| videoDuration | Video duration | string | 78468.0 | Video duration saved as a numeric string; the source does not specify the unit. |
| videoUrl | Video media URL | string | https://www.douyin.com/aweme/v1/play/?video_id=v0300fg10000dagho0nog65j2h6olpi0 | Media URL for the video content. |
| viewCount | View count | string | 0.0 | Number of views saved as a numeric string. |
Schema del registro
La salida se devuelve registro a registro. detail.output.idFieldHint
{
"type": "object",
"properties": {
"accountId": {
"type": "string",
"title": "Account ID",
"description": "Douyin identifier of the publishing account.",
"prefill": "109014805831"
},
"accountName": {
"type": "string",
"title": "Account name",
"description": "Display name of the publishing account.",
"prefill": "呼叫网管"
},
"accountSecId": {
"type": "string",
"title": "Account secure ID",
"description": "Encrypted Douyin identifier of the publishing account.",
"prefill": "MS4wLjABAAAAAtnCpevF0YXW29cXbyJmXnSyq6qZL-PdV2x8Cl6PQpw"
},
"accountShortId": {
"type": "string",
"title": "Account short ID",
"description": "Short identifier shown for the publishing account when available."
},
"accountUniqueId": {
"type": "string",
"title": "Douyin handle",
"description": "Unique public handle of the publishing account.",
"prefill": "HJWG"
},
"accountUrl": {
"type": "string",
"title": "Account URL",
"description": "Public Douyin profile URL of the publishing account.",
"prefill": "https://www.douyin.com/user/MS4wLjABAAAAAtnCpevF0YXW29cXbyJmXnSyq6qZL-PdV2x8Cl6PQpw"
},
"accurateLocationCities": {
"type": "string",
"title": "Matched cities",
"description": "City-level location information associated with the content, as provided by the source."
},
"accurateLocationProvinces": {
"type": "string",
"title": "Matched provinces",
"description": "Province-level location information associated with the content, as provided by the source."
},
"anchorInfo": {
"type": "string",
"title": "Anchor information",
"description": "Raw anchor information attached to the content."
},
"asrText": {
"type": "string",
"title": "Speech transcript",
"description": "Text recognized from the video's audio when available."
},
"avatarUrl": {
"type": "string",
"title": "Avatar URL",
"description": "Image URL for the publishing account's avatar.",
"prefill": "https://p11.douyinpic.com/aweme/100x100/aweme-avatar/tos-cn-avt-0015_5c0c342a89f6ce58ccd71b497a37a53e.heic?from=327834062"
},
"bizId": {
"type": "string",
"title": "Business ID",
"description": "Business identifier associated with the result record.",
"prefill": "英雄联盟"
},
"collectionCount": {
"type": "string",
"title": "Favorite count",
"description": "Number of favorites saved as a numeric string.",
"prefill": "3196.0"
},
"commentCount": {
"type": "string",
"title": "Comment count",
"description": "Number of comments saved as a numeric string.",
"prefill": "5446.0"
},
"contentId": {
"type": "string",
"title": "Content ID",
"description": "Unique identifier of the Douyin content.",
"prefill": "6760573437619473671"
},
"contentText": {
"type": "string",
"title": "Content text",
"description": "Main text of the content when available."
},
"contentTitle": {
"type": "string",
"title": "Content title",
"description": "Display title or caption of the content.",
"prefill": "lol最逆天的彩蛋!揭晓! #lol"
},
"contentUrl": {
"type": "string",
"title": "Content URL",
"description": "Public Douyin page URL for the content.",
"prefill": "https://www.douyin.com/video/6760573437619473671"
},
"cooperationInfos": {
"type": "string",
"title": "Cooperation information",
"description": "Cooperation details saved as a JSON-formatted string.",
"prefill": "[]"
},
"coverUrl": {
"type": "string",
"title": "Cover URL",
"description": "Image URL for the content cover.",
"prefill": "https://p95-sz-sign.douyinpic.com/tos-cn-p-0015/53734fedbaec4ad3968a06c6cb295e7e~tplv-dy-resize-walign-adapt-aq:540:q75.heic"
},
"crawlTime": {
"type": "string",
"title": "Collection time",
"description": "Time when the record was collected; the source does not specify a time zone.",
"prefill": "2026-09-09T16:39:38"
},
"diggCount": {
"type": "string",
"title": "Like count",
"description": "Number of likes saved as a numeric string.",
"prefill": "547844.0"
},
"downloadCount": {
"type": "string",
"title": "Download count",
"description": "Number of downloads saved as a numeric string.",
"prefill": "8463.0"
},
"fans": {
"type": "string",
"title": "Follower count",
"description": "Publisher follower count saved as a numeric string.",
"prefill": "12170016"
},
"forwardCount": {
"type": "string",
"title": "Forward count",
"description": "Number of forwards saved as a numeric string.",
"prefill": "20.0"
},
"imageUrlList": {
"type": "string",
"title": "Image URL list",
"description": "Content image URLs saved as a JSON-formatted string.",
"prefill": "[]"
},
"isHot": {
"type": "string",
"title": "Hot status",
"description": "Whether the content is marked as hot, saved as the source string.",
"prefill": "false"
},
"keyword": {
"type": "string",
"title": "Matched keyword",
"description": "Search keyword associated with this result.",
"prefill": "英雄联盟"
},
"music": {
"type": "string",
"title": "Music information",
"description": "Music details saved as a JSON-formatted string.",
"prefill": "{\"audition_duration\":\"78\",\"author\":\"呼叫网管\",\"owner_id\":\"109014805831\",\"owner_nickname\":\"呼叫网管\",\"id\":\"6760527209229798151\",\"title\":\"@呼叫网管创作的原声\"}"
},
"ocrText": {
"type": "string",
"title": "On-screen text",
"description": "Text recognized from the content's visual frames when available."
},
"poiInfo": {
"type": "string",
"title": "Place information",
"description": "Raw place information associated with the content."
},
"publishLocation": {
"type": "string",
"title": "Publish location",
"description": "Publishing location saved as a JSON-formatted string.",
"prefill": "{}"
},
"publishTime": {
"type": "string",
"title": "Publish time",
"description": "Content publication time; the source does not specify a time zone.",
"prefill": "2019-11-18T17:18:59"
},
"shareCount": {
"type": "string",
"title": "Share count",
"description": "Number of shares saved as a numeric string.",
"prefill": "8616.0"
},
"status": {
"type": "string",
"title": "Content status",
"description": "Current validity status reported for the content.",
"prefill": "有效"
},
"tags": {
"type": "string",
"title": "Topic tags",
"description": "Topic tags saved as a JSON-formatted string.",
"prefill": "[\"lol\"]"
},
"taskMeta": {
"type": "string",
"title": "Task metadata",
"description": "Keyword item and no-data marker associated with the result."
},
"verified": {
"type": "string",
"title": "Verification status",
"description": "Publisher verification status as provided by the source."
},
"verifyType": {
"type": "string",
"title": "Verification type",
"description": "Publisher verification type as provided by the source."
},
"videoDuration": {
"type": "string",
"title": "Video duration",
"description": "Video duration saved as a numeric string; the source does not specify the unit.",
"prefill": "78468.0"
},
"videoUrl": {
"type": "string",
"title": "Video media URL",
"description": "Media URL for the video content.",
"prefill": "https://www.douyin.com/aweme/v1/play/?video_id=v0300fg10000dagho0nog65j2h6olpi0"
},
"viewCount": {
"type": "string",
"title": "View count",
"description": "Number of views saved as a numeric string.",
"prefill": "0.0"
}
},
"required": [],
"additionalProperties": false
}Integración
Esta App se puede integrar mediante MCP, API, SDK o exportación de archivos — todos los canales comparten las mismas capacidades y precios. Cada solicitud se autentica con la cabecera Authorization: Bearer usando una API Key (de larga duración, creada en la consola de Data Hub); los clientes MCP también pueden iniciar sesión con OAuth sin clave. Más opciones como CLI y Skill están en camino.
Con MCP (Model Context Protocol) puedes llamar a esta App directamente desde clientes de IA como Claude y Cursor. Elige tu cliente y el modo de autenticación, y copia la configuración de abajo.
Configuración del cliente
Sustituye el valor tras Bearer por tu API Key de larga duración. Funciona en cualquier cliente, CI o entorno sin interfaz.
{
"mcpServers": {
"meme_today__douyin-keyword-list": {
"type": "http",
"url": "https://mcp-v2.octoparse.com?pin=meme_today/douyin-keyword-list",
"headers": { "Authorization": "Bearer <YOUR_API_KEY>" }
}
}
}Deja que la IA lo configure por ti
¿No quieres editar configuraciones a mano? Copia el prompt de instalación y pégalo en cualquier cliente de IA: completará la configuración a su manera. (El prompt le pide a la IA que te solicite tu API Key, de modo que las credenciales nunca queden en el historial de chat ni en configuraciones compartidas.)
detail.access.mcp.composeHint
Precios
Se cobra una vez por cada ejecución enviada, independientemente del número de registros devueltos.
Se cobra según el número de registros devueltos correctamente. Las ejecuciones fallidas no se cobran. Se factura en unidades de 10 registro; cualquier unidad parcial se redondea a 10 registro.
Los distintos eventos de facturación se acumulan de forma independiente. Consulta cada elemento para más detalles. Las ejecuciones fallidas no se cobran.
Ver créditosPruébalo ahora
Rellena los parámetros y ejecuta — los resultados provienen de una llamada real.