Skip to main content
POST
Transcribe una pista de audio cargada en palabras temporizadas para editar subtítulos. Esta operación no permite renderizar vídeos animados ni usar sesiones de edición locales del navegador. Devuelve una referencia compacta al resultado guardado; usa su getAction o downloadAction para recuperar la salida completa.

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
Un fileKey perteneciente al usuario devuelto por una subida completada o una importación multimedia. Cada generación consume su fuente subida.Longitud mínima: 1. Longitud máxima: 1024.
string
Valor de texto.Longitud mínima: 1. Longitud máxima: 255. Patrón: ^[^/\\\r\n\0]+$.
array
Lista de valores. Consulta la estructura de sus elementos en el esquema completo de entrada.Número máximo de elementos: 100.
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}$.
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. Referencia guardada de palabras de subtítulos. El JSON completo contiene words, durationSeconds y detectedLanguage opcional. Cada palabra tiene text, startMs, endMs y speakerId, que puede ser null.

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.
  • Usa el fileKey de una carga o importación completada de tu propiedad y trátalo como de un solo uso. Una vez que comienza el procesamiento multimedia, la limpieza elimina el origen tras completarse correctamente o tras un fallo de procesamiento. Un rechazo por validación o por cuota antes del procesamiento puede dejarlo intacto. Reutiliza el requestId original para recuperar la generación aceptada antes de iniciar otra.
  • Sube solo la pista de audio extraída: WAV, MP3, M4A, AAC, OGG, Opus o FLAC, de un máximo de 250 MiB. Se rechaza cualquier archivo que contenga una pista de vídeo, aunque su nombre tenga una extensión de audio.
  • Beginner admite hasta 30 minutos; Starter, Creator, Pro, Scale y Enterprise admiten hasta 60 minutos, más una tolerancia del contenedor de 2 segundos.
  • Límite diario de transcripción de subtítulos: Beginner 10, Starter 15, Creator 30, Pro 60, Scale 100 y Enterprise 100; compartido con la herramienta web de subtítulos.
  • Los desplazamientos de las palabras se expresan en milisegundos; durationSeconds, en segundos. El servidor devuelve palabras con tiempos, no un vídeo animado renderizado. La edición y el renderizado local de subtítulos en el navegador quedan fuera de esta acción.
  • La transcripción de subtítulos no tiene una familia independiente de acciones de historial web. Usa subtitles_result_list/get/download para recuperar toda su salida de integración.

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