API de Notas de Vídeo
Envía la URL de un vídeo o un archivo subido para generar información de resumen y, opcionalmente, una nota estructurada con IA. Puedes personalizar las instrucciones de la nota, el idioma de salida, la longitud deseada, las marcas de tiempo y si se incluyen fotogramas relevantes del vídeo de origen.
Cada respuesta incluye una descripción general estructurada, hashtags y momentos destacados de la línea de tiempo. Cuando la generación de notas con IA está habilitada, la respuesta también incluye la nota en formato Markdown y como texto sin formato. Cuando no está habilitada, la respuesta contiene únicamente la información relacionada con el resumen.
Fuentes de Vídeo Compatibles
La API acepta URLs de vídeos de YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble y más.
También puedes procesar archivos de vídeo locales que subas — la subida local requiere un plan Starter o superior.
Flujo de Trabajo
- Envía una tarea de Notas de Vídeo mediante una URL de vídeo o el identificador de un archivo subido
- Consulta el endpoint de resultados hasta que
statusseaSUCCEEDED
Enviar una Tarea de Notas de Vídeo
Crea una tarea con o sin generación de notas con IA. Incluye note_params para generar una nota con IA; omítelo si solo necesitas el resumen, los hashtags y los momentos destacados de la línea de tiempo.
POST https://wayinvideo-api.wayin.ai/api/v2/notes
Cuerpo de la Solicitud
| Parámetro | Tipo | Requerido | Predeterminado | Descripción |
|---|---|---|---|---|
video_url | string | Sí | — | URL del vídeo de origen o identificador del archivo subido |
source_lang | string | No | null | Idioma de origen del vídeo (consulta Idiomas Compatibles). Cuando es null, el sistema detecta automáticamente el idioma original. |
target_lang | string | No | null | Idioma de destino del resumen y los momentos destacados generados (consulta Idiomas Compatibles). Cuando es null, el idioma de salida sigue el idioma de origen detectado. |
note_params | object | No | null | Configuración para generar notas con IA. Omite este objeto para no generar una nota con IA. |
Parámetros de la Nota
| Parámetro | Tipo | Requerido | Predeterminado | Descripción |
|---|---|---|---|---|
enable_note | boolean | Sí, cuando se proporciona note_params | — | Establécelo en true para generar una nota con IA |
generate_params | object | Sí, cuando se proporciona note_params | — | Configuración para generar la nota con IA |
Parámetros de Generación de la Nota
| Parámetro | Tipo | Requerido | Predeterminado | Descripción |
|---|---|---|---|---|
prompt | string | Sí | — | Instrucciones que describen la estructura, el contenido o el enfoque deseados para la nota |
language | string | No | null | Idioma de salida únicamente para la nota con IA; no afecta al resumen ni a los momentos destacados (consulta Idiomas Compatibles) |
length_option | string | Sí | — | Longitud deseada de la nota: short, medium o long |
include_timestamp | boolean | Sí | — | Indica si se añaden marcas de tiempo del vídeo de origen a las secciones y puntos clave relevantes, para ayudar a localizar los momentos correspondientes en el vídeo |
image_visual | boolean | No | false | Indica si se incluyen fotogramas relevantes extraídos del vídeo de origen |
Ejemplo de Solicitud
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/notes \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-d '{
"video_url": "https://www.youtube.com/watch?v=EXAMPLE",
"source_lang": "en",
"target_lang": "en",
"note_params": {
"enable_note": true,
"generate_params": {
"prompt": "Organize the main ideas and action items",
"language": "en",
"length_option": "medium",
"include_timestamp": true,
"image_visual": false
}
}
}'
import requests
requests.post(
"https://wayinvideo-api.wayin.ai/api/v2/notes",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"x-wayinvideo-api-version": "v2",
},
json={
"video_url": "https://www.youtube.com/watch?v=EXAMPLE",
"target_lang": "en",
"note_params": {
"enable_note": True,
"generate_params": {
"prompt": "Organize the main ideas and action items",
"language": "en",
"length_option": "medium",
"include_timestamp": True,
},
},
},
)
await fetch('https://wayinvideo-api.wayin.ai/api/v2/notes', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'x-wayinvideo-api-version': 'v2',
'Content-Type': 'application/json',
},
body: JSON.stringify({
video_url: 'https://www.youtube.com/watch?v=EXAMPLE',
target_lang: 'en',
note_params: {
enable_note: true,
generate_params: {
prompt: 'Organize the main ideas and action items',
language: 'en',
length_option: 'medium',
include_timestamp: true,
},
},
}),
});
Respuesta al Envío
{
"data": {
"id": "note_proj_001",
"name": "sample project name",
"status": "CREATED"
}
}
| Campo | Tipo | Descripción |
|---|---|---|
id | string | Identificador de la tarea usado para obtener los resultados |
name | string | Nombre de la tarea derivado del vídeo de origen |
status | string | Estado inicial; las tareas aceptadas devuelven CREATED |
Ejemplos
Los siguientes ejemplos muestran casos de uso habituales de Notas de Vídeo. Sustituye YOUR_API_KEY por una clave del API Dashboard.
Generar notas concisas con marcas de tiempo
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/notes \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://www.youtube.com/watch?v=EXAMPLE",
"note_params": {
"enable_note": true,
"generate_params": {
"prompt": "Create concise notes covering the main ideas",
"length_option": "short",
"include_timestamp": true
}
}
}'
Generar notas de reunión orientadas a la acción
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/notes \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-H "Content-Type: application/json" \
-d '{
"video_url": "UPLOADED_FILE_ID",
"note_params": {
"enable_note": true,
"generate_params": {
"prompt": "Create meeting notes with decisions, owners, and action items",
"length_option": "medium",
"include_timestamp": true
}
}
}'
Procesar un vídeo sin una nota con IA
Omite note_params para obtener el resumen, los hashtags y los momentos destacados de la línea de tiempo sin datos de notas.
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/notes \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://www.youtube.com/watch?v=EXAMPLE",
"target_lang": "en"
}'
Obtener los Resultados de Notas de Vídeo
Después de enviar una tarea, consulta este endpoint hasta que status sea SUCCEEDED. La respuesta correcta contiene la información del resumen y, cuando se haya solicitado, la nota generada con IA.
GET https://wayinvideo-api.wayin.ai/api/v2/notes/results/{id}
Parámetros de Ruta
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string | Sí | ID de la tarea devuelto por el endpoint de envío |
Solicitud de Resultados
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/notes/results/note_proj_001 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2"
import requests
requests.get(
"https://wayinvideo-api.wayin.ai/api/v2/notes/results/note_proj_001",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"x-wayinvideo-api-version": "v2",
},
)
await fetch(
'https://wayinvideo-api.wayin.ai/api/v2/notes/results/note_proj_001',
{
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'x-wayinvideo-api-version': 'v2',
},
}
);
Ejemplo de Respuesta Correcta
{
"data": {
"summary_id": "vdsmr_001",
"status": "SUCCEEDED",
"title": "sample title",
"video_thumbnail": "https://cdn.example.com/thumb/video_001.jpg",
"summary": "sample summary text",
"note_data": "# Main Ideas\n\n- **00:45** First key point\n- **03:20** Second key point",
"note_text": "Main Ideas\n\n00:45 First key point\n03:20 Second key point",
"tags": ["#topic1", "#topic2"],
"highlights": [
{
"start": 0,
"end": 196000,
"desc": "sample section title",
"events": [
{
"timestamp": 45000,
"desc": "sample event description"
}
]
}
],
"cost_usage": 54.0
}
}
Campos de la Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
summary_id | string | Identificador del resumen generado |
status | string | Estado de la tarea: CREATED, QUEUED, ONGOING, SUCCEEDED o FAILED |
error_message | string | Motivo del error; solo aparece cuando status es FAILED |
title | string | Título generado por IA |
video_thumbnail | string | URL de la miniatura del vídeo de origen |
summary | string | Descripción general estructurada del vídeo |
note_data | string | Nota con IA que conserva la estructura Markdown, adecuada para renderizarse como Markdown; se omite si no se solicita |
note_text | string | Versión de texto sin formato de la nota con IA, sin sintaxis Markdown; se omite si no se solicita |
tags | string[] | Hashtags generados por IA |
highlights | array | Secciones de la línea de tiempo con marcas de tiempo y eventos clave |
cost_usage | number | API Units consumidas por la tarea |
Objeto de Momento Destacado
| Campo | Tipo | Descripción |
|---|---|---|
start | number | Tiempo de inicio en milisegundos |
end | number | Tiempo de fin en milisegundos |
desc | string | Título o descripción de la sección |
events | array | Eventos clave del momento destacado |
Objeto de Evento
| Campo | Tipo | Descripción |
|---|---|---|
timestamp | number | Tiempo del evento en milisegundos |
desc | string | Descripción del evento |
Preguntas Frecuentes
¿Cuál es la diferencia entre Notas de Vídeo y Resumen de Vídeo?
La API de Resumen de Vídeo genera una descripción general, hashtags y momentos destacados de la línea de tiempo. La API de Notas de Vídeo devuelve la misma información de resumen y, además, puede generar una nota personalizable en Markdown y texto sin formato.
¿Es obligatorio generar una nota con IA?
No. Omite note_params para obtener la información del resumen sin una nota con IA. Para generar una nota, proporciona note_params, establece enable_note en true e incluye generate_params.prompt.
¿Cuál es la diferencia entre note_data y note_text?
note_data conserva la estructura Markdown generada para renderizar encabezados, listas, énfasis y otros formatos. note_text contiene la misma nota sin sintaxis Markdown, por lo que resulta adecuado para indexación de búsquedas, embeddings, vistas previas o almacenamiento como texto sin formato.
¿Puedo controlar el formato de la nota?
Sí. Usa generate_params.prompt para las instrucciones, language para el idioma de la nota, length_option para la longitud deseada, include_timestamp para las marcas de tiempo e image_visual para incluir fotogramas relevantes del vídeo.
¿Qué fuentes de vídeo son compatibles?
URLs de YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble y más, además de archivos locales subidos mediante la API de Subida.