Skip to main content
POST
Incrusta los subtítulos SRT proporcionados en un vídeo público de YouTube y guarda el resultado.

Autenticación y permisos

string
requerido
Envía una clave de API de VoiceCheap en esta cabecera. También se admite Authorization: Bearer con la misma clave de API. Los tokens de acceso OAuth solo se aceptan en MCP, no en este endpoint REST.
Permisos necesarios: subtitles:write. Se requiere una suscripción de pago activa. Los permisos no cambian los roles del equipo, la propiedad de los recursos, los créditos multimedia ni los límites del plan.

Parámetros

string
requerido
Valor de texto.Longitud máxima: 2048. Formato: “uri”.
string
Opcional en la capa de transporte: el servidor introduce un identificador antes de la validación si se omite. Proporciona tu propio UUID v4 estable para recuperar la solicitud de forma segura si se pierde la respuesta.Formato: “uuid”. Patrón: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$.
string
requerido
Valor de texto.Longitud mínima: 1. Longitud máxima: 2097152.
string
Valor de texto.Longitud mínima: 2. Longitud máxima: 60.
object
Objeto JSON. Consulta sus campos anidados en el esquema completo de entrada.
object
Objeto JSON. Consulta sus campos anidados en el esquema completo de entrada.
El JSON Schema siguiente conserva los nombres exactos de los campos, los tipos anidados, los valores predeterminados, los límites y los valores aceptados que expone el descubrimiento. Las reglas adicionales entre campos se indican en las notas de la operación.

Idempotencia

Usa un UUID v4 en requestId o en la cabecera HTTP Idempotency-Key para cada modificación. Reutiliza el mismo identificador y argumentos idénticos después de un fallo de red. Si proporcionas ambos, deben coincidir. Repetir una solicitud guardada no vuelve a ejecutar la operación ni consume otra llamada mensual. Las solicitudes fallidas o interrumpidas no se reinician automáticamente. Toda modificación puede devolver HTTP 202 cuando un reintento encuentra la misma solicitud todavía en ejecución, incluso si su primera ejecución suele ser síncrona. Si la ejecución ha terminado pero resultStored es false, un reintento devuelve HTTP 200 con el estado de la solicitud guardada en lugar del resultado original. Recupera la salida mediante la acción de historial, resultado o descarga de su ámbito.

Ejemplos de solicitud

Sustituye los identificadores de recursos y las claves multimedia de los ejemplos por valores devueltos para tu cuenta. Mantén el identificador de solicitud al reintentar la misma modificación.

Respuesta

Esta operación devuelve HTTP 202 mientras se ejecuta. Guarda requestId y consulta action_request_get con ese identificador y el nombre de la operación original. Los estados de consulta son running, completed, failed e interrupted. Un resultado completado puede apuntar a un trabajo multimedia independiente; continúa con la acción de estado o de salida específica de la operación. Una referencia guardada del resultado de renderizado de subtítulos de YouTube. El JSON completo contiene srt, sourceSrt, subtitledVideoUrl y detectedLanguage opcional.

Campos del resultado

Recuperar y consultar esta solicitud

Usa el mismo identificador incluso después de perder la conexión. Si resultStored es false, recupera la salida mediante la acción correspondiente de historial, resultado o descarga. Nunca inicies una segunda generación solo para comprobar el progreso.
HTTP 200

Notas de la operación

  • Requiere una suscripción de pago y el permiso de la acción. El plan personal de herramientas del actor se comprueba de nuevo al ejecutar; las herramientas guardadas y las referencias de carga pertenecen a ese actor, también cuando la credencial está asociada a un equipo.
  • Una acción correcta consume una llamada mensual compartida de API/MCP. Beginner permite 500, Starter 5,000 y Creator 25,000 llamadas al mes; Pro, Scale y Enterprise no tienen límite mensual. Siguen aplicándose los límites por minuto: 30, 60, 120, 180, 300 y 600, respectivamente. Las cuotas de generación de las herramientas son independientes.
  • Usa un requestId UUID v4 o un encabezado Idempotency-Key idéntico, y conserva la misma acción, el mismo ID y los mismos argumentos en los reintentos. Una repetición desde la caché no consume otra llamada mensual.
  • Esta es una acción asíncrona. El resultado inicial del transporte es una solicitud en ejecución con pollAction; consulta periódicamente action_request_get con esta operación y el requestId original. El resultado de la operación completada que se muestra aquí es una referencia compacta a la salida guardada, no el cuerpo generado.
  • El resultado completo se guarda con la titularidad autenticada en almacenamiento cifrado, independientemente de la caché limitada de consulta de acciones. Llama al getAction devuelto con resultId e includeContent: true para obtener JSON estructurado, o a downloadAction con resultId para obtener texto JSON. listAction permite recuperarlo cuando solo se conoce la solicitud original.
  • El JSON guardado está limitado a 32 MiB. Los metadatos nunca exponen su clave de cifrado de almacenamiento ni una URL de descarga de la transcripción sin autenticación.
  • Una generación correcta consume una unidad de la cuota personal de la herramienta. Una generación fallida normalmente libera su reserva de herramienta. Cuando no se sabe con certeza si la salida se ha guardado, revisa la misma solicitud y el historial de resultados guardados antes de volver a generar; el servidor mantiene la reserva para evitar un consumo duplicado.
  • Los planes superiores sin límite mensual de integración siguen teniendo las cuotas diarias específicas de cada herramienta y los límites multimedia que se indican a continuación. Estas acciones independientes consumen su cuota de herramienta en lugar de minutos de doblaje o caracteres TTS.
  • Proporciona una URL HTTPS pública de un vídeo de YouTube y SRT válido en srtContent. Aunque el esquema de la acción marca srtContent como opcional, el renderizador actual de YouTube lo valida siempre y devuelve 400 SRT_EMPTY cuando se omite. Este controlador no genera subtítulos de YouTube automáticamente.
  • El vídeo de YouTube importado no debe durar más de 2 horas y el archivo ensamblado no debe superar 300 MiB. La resolución de importación depende del plan del actor.
  • Cuota diaria por herramienta: Beginner 5, Starter 15, Creator 30, Pro 60, Scale 100 y Enterprise 100 generaciones completadas correctamente. Se comparte con la herramienta web correspondiente y utiliza el periodo de restablecimiento de herramientas de la cuenta.
  • Comparte el límite diario de añadir subtítulos con subtitles_burn. Un renderizado utiliza una generación incluso si se ha proporcionado un SRT.
  • No se usa ningún fileKey subido anteriormente. El vídeo renderizado se almacena por separado; su historial guardado de incrustación de subtítulos permite renovar la URL de descarga temporal.

Uso

Cada invocación correcta consume una llamada mensual de API/MCP. También se aplican los créditos multimedia y las cuotas de generación propias de la operación.

Errores