Ir a la referencia de la API

Integración API

Del audio al texto. Directamente en su flujo de trabajo.

En esta página

Resumen

Convierta archivos de audio y vídeo en transcripciones y subtítulos con una sencilla API REST.

Envíe una URL multimedia, siga el progreso de la transcripción y obtenga JSON estructurado o un archivo de subtítulos listo para usar.

Solicitudes HTTPSRespuestas JSONTrabajos asíncronos

URL base

https://api.taption.com/v1POST/transcriptsGET/transcripts/{id}

Su primera transcripción

La transcripción se realiza en segundo plano. Al crear un trabajo, la respuesta es inmediata; consulte su estado hasta que el resultado esté listo.

  1. Crear un trabajo

    Envíe POST /transcripts con una URL multimedia directa y pública. Guarde el id devuelto.

  2. Consultar el progreso

    Consulte GET /transcripts/{id} cada 15–30 segundos hasta que status sea complete o error.

  3. Usar la transcripción

    Lea el JSON de data o descargue el archivo de export_url si solicita SRT o VTT.

Estado del trabajo

initializing

En cola, a la espera de comenzar. Siga consultando.

transcribing

Se está transcribiendo su archivo. Siga consultando.

complete

Listo. Lea el resultado o descargue el archivo.

error

El trabajo ha fallado. Lea message y deje de consultar.

Considere cualquier otro estado como «en curso». Pueden añadirse nuevos estados intermedios.

Autenticación

Envíe su clave API en la cabecera Authorization de cada solicitud, exactamente como se mostró al crearla.

Authorization: <your api key>

No añada el prefijo Bearer.

Las claves nuevas empiezan por tp_live_. La clave completa solo se muestra una vez, al crearla. Si la pierde, revóquela y cree una nueva; una clave revocada deja de funcionar de inmediato.

Se requiere una suscripción activa y una clave de API con los permisos necesarios.

Guarde su clave en el servidor. Da acceso a las transcripciones y al uso de su cuenta. Nunca la exponga en el código del navegador ni en un repositorio público.

Crear clave API

Crear una transcripción

POST/transcripts

Inicie un trabajo de transcripción para un archivo multimedia en una URL pública. La respuesta se devuelve cuando el trabajo entra en la cola, con status: "initializing".

Taption descarga el archivo directamente. Los enlaces a páginas compartidas, como una vista previa de Google Drive o Dropbox, no funcionan.

media_urlstringobligatorio

Enlace de descarga directa del archivo multimedia.

Máximo 2048 caracteres
extensionstringobligatorio

Formato del archivo multimedia.

mp3wavm4aaacflacwmaopusmp4
languagestringobligatorio

Idioma hablado en el archivo, como etiqueta de idioma. Consulte la referencia de idiomas.

Ver etiquetas de idioma
namestring

Nombre de la transcripción. De forma predeterminada se usa el nombre del archivo de `media_url`. Los nombres más largos se recortan a 200 caracteres.

Máximo 200 caracteres
export_typestring

Formato de salida. El valor predeterminado es json, que devuelve el contenido de la transcripción analizado en data. srt y vtt devuelven un enlace al archivo en export_url.

jsonsrtvtt
Predeterminado: json
max_charinteger

Máximo de caracteres por segmento de subtítulo. El valor predeterminado es `16` para chino, japonés, coreano y cantonés, y `65` para otros idiomas. Los valores fuera de 1–200 se ignoran y se usa el predeterminado.

1–200

Respuestas

200

Se ha creado el trabajo y se ha puesto en cola. Guarde el `id` para consultar su estado.

400

El cuerpo de la solicitud no es válido. Corríjalo antes de reintentar. Solo se informa del primer problema encontrado.

401

La clave API falta, no es válida o no está configurada para acceder a la API.

403

Se requiere una suscripción activa y una clave de API con los permisos necesarios.

429

Límite de la cuenta alcanzado; no se creó ningún trabajo. Valores predeterminados: Premium 10 envíos/minuto y 2 trabajos sin terminar; Corp 30/minuto y 10 trabajos sin terminar, compartidos entre todas las claves. Los límites pueden cambiar. Las consultas de estado no cuentan.

500

Error inesperado del servidor. Reintente aumentando la espera exponencialmente.

503

Los límites de envío no están disponibles temporalmente (`api_limits_unavailable`; no se creó ninguna transcripción), o el envío a la cola falló o no se pudo confirmar. Respeta Retry-After si está presente. Si se devuelve un `id`, comprueba su estado antes de reintentar: puede ser `error` o estar ya en proceso. Un reintento crea una transcripción nueva.

Obtener una transcripción

GET/transcripts/{id}

Obtenga el estado actual y el resultado de una transcripción. Consulte cada 15–30 segundos mientras el trabajo esté en curso.

Con json o sin especificar el tipo de exportación, el resultado final aparece en data. Con srt o vtt, descargue el archivo de export_url.

idstringobligatorio
El ID de transcripción devuelto por POST /transcripts.Máximo 256 caracteres

Una transcripción fallida también devuelve HTTP 200 con status: "error". Compruebe el estado del trabajo además del código HTTP.

Respuestas

200

El estado actual de la transcripción. Esto no significa que el trabajo haya finalizado correctamente; lea `status`.

401

La clave API falta, no es válida o no está configurada para acceder a la API.

403

Se requiere una suscripción activa y una clave de API con los permisos necesarios.

404

No existe una transcripción con este ID en su cuenta. Una transcripción que pertenece a otra cuenta devuelve la misma respuesta.

500

Error inesperado del servidor. Reintente aumentando la espera exponencialmente.

El objeto de transcripción

Las solicitudes de creación y consulta de estado devuelven un objeto JSON. Sus campos describen el trabajo y, cuando está listo, su resultado.

idstring
El ID de transcripción. Úselo con `GET /transcripts/{id}`.
statusstring
Estado del trabajo: `initializing`, `transcribing`, `complete` o `error`. Considere cualquier otro valor como «en curso».
dataJSON
Exportación JSON analizada cuando está lista, para json o si se omite export_type; en caso contrario, una cadena vacía.
export_urlstring
Enlace de descarga para una exportación srt o vtt. Vacío hasta que esté lista. Se omite en las respuestas de estado para json o si se omite export_type.
messagestring
Detalles adicionales del estado actual. Durante `transcribing`, puede indicar una fase como `ANALYZING` o `FINALIZING`. Cuando `status` es `error`, describe el fallo. Está dirigido a personas; no lo analice mediante código.
error_codestring
Código opcional legible por máquina para un error de límite de envío.
limitinteger
Límite aplicable a la cuenta, incluido en las respuestas HTTP 429.

Errores y reintentos

Use el código de estado HTTP para decidir el siguiente paso. El campo message está dirigido a personas; su redacción puede cambiar.

Las respuestas de la API incluyen la cabecera X-Request-Id. Inclúyala cuando contacte con soporte sobre una solicitud.

Códigos de error HTTP9 códigos
Errores HTTP e indicaciones para reintentar
HTTPQué ocurrióSiguiente paso
400Cuerpo de solicitud no válido.Corrija primero la solicitud.
401Clave API ausente, no válida o revocada.Compruebe su clave API.
403Se requiere una suscripción activa y una clave de API con los permisos necesarios.Comprueba tu suscripción y los permisos de la clave de API.
404No se encontró la transcripción en su cuenta.Compruebe el ID de transcripción.
405Método HTTP incorrecto.Use el método documentado.
429Se alcanzó el límite de envíos o de trabajos sin terminar.Respeta Retry-After y espera a que quede un espacio disponible.
500Error inesperado del servidor.Aumente la espera exponencialmente.
503Límites de envío no disponibles, o el envío a la cola falló o no se pudo confirmar.Comprueba el ID de trabajo devuelto antes de reintentar; respeta Retry-After.
504Se agotó el tiempo de espera de la solicitud.Aumente la espera y evite trabajos duplicados.

Los errores de límite de la API devuelven HTTP 429 con JSON y Retry-After en segundos. El alojamiento también puede devolver 429, 504 o 400 sin JSON. Comprueba el estado HTTP antes de leer el cuerpo.

Las solicitudes de creación no son idempotentes. Reintentar un POST /transcripts que agotó el tiempo puede crear otra transcripción. Si una respuesta 503 incluye un ID de trabajo, comprueba ese trabajo antes de volver a enviarlo: puede haber fallado o estar ya en proceso.

Idiomas

Establezca language en el idioma hablado en su archivo. Use la etiqueta exacta de la lista, incluido cualquier sufijo de región o sistema de escritura de salida.

Idiomas disponibles74 idiomas
Etiquetas de idioma disponibles para transcripción
IdiomaEtiqueta
Afrikaans (South Africa)af-ZA
Arabic (Egypt)ar-EG
Armenian (Armenia)hy-AM
Assamese (India)as-IN
Azerbaijani (Azerbaijan)az-AZ
Bengali (India)bn-IN
Bosnian (Bosnia and Herzegovina)bs-BA
Bulgarian (Bulgaria)bg-BG
Burmese (Myanmar)my-MM
Cantonese, Simplified Chinese output (Hong Kong)yue-Hant-HK-zh
Cantonese, Traditional Chinese output (Hong Kong)yue-Hant-HK-TW-zh
Cantonese, Simplified Cantonese output (Hong Kong)yue-Hant-HK
Cantonese, Traditional Cantonese output (Hong Kong)yue-Hant-HK-TW
Catalan (Spain)ca-ES
Chinese (China)zh
Chinese (Taiwan)zh-TW
Chinese & English (Simplified)zh-EN
Chinese & English (Traditional)zh-EN-TW
Croatian (Croatia)hr-HR
Czech (Czech Republic)cs-CZ
Danish (Denmark)da-DK
Dutch (Belgium)nl-BE
English (Australia)en-AU
English (United Kingdom)en-GB
English (United States)en-US
Estonian (Estonia)et-EE
Filipino (Philippines)tl-PH
Finnish (Finland)fi-FI
French (France)fr-FR
Galician (Spain)gl-ES
German (Germany)de-DE
Greek (Greece)el-GR
Gujarati (India)gu-IN
Hebrew (Israel)iw-IL
Hindi (India)hi-IN
Hungarian (Hungary)hu-HU
Icelandic (Iceland)is-IS
Indonesian (Indonesia)id-ID
Italian (Italy)it-IT
Japanese (Japan)ja-JP
Kannada (India)kn-IN
Kazakh (Kazakhstan)kk-KZ
Khmer (Cambodia)km-KH
Korean (South Korea)ko-KR
Latvian (Latvia)lv-LV
Lithuanian (Lithuania)lt-LT
Macedonian (North Macedonia)mk-MK
Malay (Malaysia)ms-MY
Malayalam (India)ml-IN
Marathi (India)mr-IN
Nepali (Nepal)ne-NP
Norwegian (Norway)no-NO
Odia (India)or-IN
Persian (Iran)fa-IR
Polish (Poland)pl-PL
Portuguese (Portugal, Brazil)pt-PT_pt-BR
Punjabi, Gurmukhi (India)pa-IN
Romanian (Romania)ro-RO
Russian (Russia)ru-RU
Serbian (Serbia)sr-SR
Slovak (Slovakia)sk-SK
Slovenian (Slovenia)sl-SI
Spanish (Spain)es-ES
Swahili (Kenya)sw-KE
Swedish (Sweden)sv-SE
Tamil (India)ta-IN
Telugu (India)te-IN
Thai (Thailand)th-TH
Turkish (Turkey)tr-TR
Ukrainian (Ukraine)uk-UA
Urdu (Pakistan)ur-PK
Uzbek (Uzbekistan)uz-UZ
Vietnamese (Vietnam)vi-VN
Zulu (South Africa)zu-ZA

Esta lista sigue la configuración de idiomas de Taption y puede cambiar. El selector de idiomas de Taption es la referencia definitiva.

Volver al resumen