Tienes una función de medios que enviar: dado un enlace o ID de YouTube, devuelve un MP3 descargable y muestra metadatos básicos (título, duración, tamaño). Al final de esta guía, llamarás a la API de Youtube a Audio desde Zyla API Hub para obtener un enlace de audio directo y conectarlo a la tubería de tu aplicación con un flujo de trabajo mínimo y amigable para producción.
Qué hace la API de Youtube a Audio
La API de Youtube a Audio convierte un video de YouTube en un archivo de audio y devuelve un enlace de descarga directa junto con campos útiles como título, duración y tamaño del archivo. Los equipos la utilizan para potenciar herramientas de podcasting, captura de notas de audio, funciones de reproducción sin conexión y tuberías de ingestión de medios donde la pista de audio es el único activo requerido.
En Zyla API Hub, esta API está disponible bajo un modelo de suscripción y cuota única (sin pago por llamada). La primera API a la que te suscribes en el Hub generalmente ofrece una prueba de 7 días o 50 solicitudes; verifica la lista para la prueba actual. Cada API que uses en Zyla se accede con la misma cuenta y clave API.
Comenzando en Zyla API Hub
Abre la lista de la API de Youtube a Audio en Zyla, haz clic en Suscribirse o comienza la prueba disponible, y obtén tu clave. Tu clave va en el encabezado de Autorización como un token Bearer. Las llamadas se realizan a través de las URL del Hub de Zyla, no a un dominio de terceros.
Iniciar prueba de 7 días en la API de Youtube a Audio
Puntos finales que puedes enviar esta semana
La API expone dos puntos finales GET a través de las URL del Hub de Zyla. La autenticación es basada en encabezados con Authorization: Bearer YOUR_API_KEY.
1) Obtener Audio
- Método: GET
- URL: https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio
- Qué hace: Toma un ID de video de YouTube y devuelve un enlace de descarga directa de MP3 y metadatos.
- Parámetros de consulta requeridos:
- id (cadena): ID de video de YouTube. Ejemplo: xFYQQPAOz7Y
curl oficial (copia/pega):
curl -s -X GET "https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio?id=xFYQQPAOz7Y" \
-H "Authorization: Bearer YOUR_API_KEY"
Respuesta de ejemplo oficial:
{
"msg": "success",
"link": "https://theta.123tokyo.xyz/get.php/d/fa/xFYQQPAOz7Y.mp3?n=Eminem%20-%20Lose%20Yourself&uT=R&uN=QWxlam9aeWxhTGFicw%3D%3D&h=TcO7xrzRPZ9cGbw2wXP93w&s=1784312338&uT=R&uN=QWxlam9aeWxhTGFicw%3D%3D",
"status": "ok",
"duration": 327.49718169275,
"title": "Eminem - Lose Yourself",
"progress": 100,
"pc": 0,
"filesize": 4181397
}
Lo que realmente usarás:
- link: URL directa al archivo MP3 generado. Usa esto para descargar o transmitir.
- title: Título del video legible por humanos.
- duration: Duración del audio en segundos (punto flotante).
- filesize: Tamaño del archivo en bytes.
- status y msg: Campos de verificación rápida de salud; espera "ok" y "success" en caso de éxito.
- progress y pc: Indicadores de progreso que puedes registrar o ignorar una vez que el progreso sea 100.
2) Descargar Audio
- Método: GET
- URL: https://zylalabs.com/api/381/youtube-to-audio-api/22174/download-audio
- Qué hace: Toma una URL completa de video de YouTube y devuelve un enlace de audio descargable.
- Parámetros de consulta requeridos:
- url (cadena): URL completa de visualización de YouTube. Ejemplo: https://www.youtube.com/watch?v=_Yhyp-_hX2s
Este es el camino más fácil cuando tu interfaz de usuario ya tiene una URL completa de YouTube. Si solo tienes el ID del video, usa Obtener Audio.
Notas enfocadas en producción que ahorran tiempo
- Autenticación: Todas las solicitudes requieren Authorization: Bearer YOUR_API_KEY.
- Transporte: Usa las URL del Hub HTTPS exactamente como se muestra. No llames a un host de origen.
- Cacheo: Si almacenas en caché las respuestas, guarda el enlace final, el título, la duración y el tamaño del archivo. La duración está en segundos; el tamaño del archivo está en bytes.
- Reintentos: Para errores de red transitorios, un breve retroceso exponencial es razonable. Si el estado o msg indican un no éxito, muéstralo al usuario.
- Cuotas: El Hub utiliza suscripción + cuota, no pago por llamada. La primera API comúnmente incluye una prueba de 7 días o 50 solicitudes. Consulta la lista para las opciones de acceso y precios actuales.
Ejemplo mínimo de Python usando Obtener Audio
Este fragmento solicita audio para un ID de video dado y transmite el MP3 al disco. Utiliza el punto final oficial Obtener Audio para que puedas copiar y ejecutar después de agregar tu clave.
import os
import sys
import json
import time
import urllib.parse
import requests
API_KEY = os.environ.get("ZYLA_API_KEY", "YOUR_API_KEY")
VIDEO_ID = "xFYQQPAOz7Y" # Reemplaza con tu ID de YouTube objetivo
HUB_URL = "https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio"
def get_audio_info(video_id: str):
params = {"id": video_id}
headers = {"Authorization": f"Bearer {API_KEY}"}
r = requests.get(HUB_URL, params=params, headers=headers, timeout=30)
r.raise_for_status()
return r.json()
def download_file(url: str, out_path: str):
with requests.get(url, stream=True, timeout=60) as r:
r.raise_for_status()
with open(out_path, "wb") as f:
for chunk in r.iter_content(chunk_size=8192):
if chunk:
f.write(chunk)
return out_path
def main():
info = get_audio_info(VIDEO_ID)
# Campos esperados basados en el ejemplo oficial
if info.get("status") != "ok" or info.get("msg") != "success":
print("Conversión no lista o fallida:", json.dumps(info, indent=2))
sys.exit(1)
link = info["link"]
title = info.get("title", f"{VIDEO_ID}.mp3")
duration = info.get("duration") # segundos (float)
filesize = info.get("filesize") # bytes (int)
# Construir un nombre de archivo simple a partir del título
safe_title = "".join(c for c in title if c.isalnum() or c in (" ", "-", "_")).rstrip()
filename = f"{safe_title}.mp3"
print(f"Descargando: {title}")
print(f"Duración (s): {duration}")
print(f"Tamaño reportado (bytes): {filesize}")
print(f"Enlace de origen: {link}")
path = download_file(link, filename)
print(f"Guardado en: {path}")
if __name__ == "__main__":
main()
Eligiendo el punto final correcto para tu flujo
- Si tu interfaz de usuario captura un enlace completo de YouTube (URL de visualización), llama a Descargar Audio para obtener un URL de descarga directamente con el parámetro url.
- Si solo tienes el ID del video (por ejemplo, analizado en otro lugar o almacenado en tu base de datos), usa Obtener Audio con el parámetro id para también recuperar metadatos como duración y tamaño del archivo.
Llamando desde un agente de IA con MCP
Puedes activar los mismos puntos finales del Hub desde cualquier cliente compatible con MCP (Claude Code, Cursor, Windsurf, etc.) utilizando el servicio MCP de Zyla. Configura tu cliente para apuntar a MCP, pasa tu clave API de Zyla e invoca las rutas del Hub mostradas arriba. Para detalles de configuración, consulta la página MCP.
Tarea de ejemplo de extremo a extremo
Tarea: dado un enlace de YouTube, almacena un MP3 y registra metadatos básicos para una biblioteca de medios.
- Analiza la entrada. Si contiene una URL de visualización completa, llama a Descargar Audio con el parámetro url. Si solo tienes el ID del video, llama a Obtener Audio con id.
- En caso de éxito, persiste:
- Título (title)
- Duración en segundos (duration)
- Tamaño del archivo en bytes (filesize)
- URL de origen y de descarga (link)
- Descarga el MP3 desde el enlace y almacénalo en tu almacenamiento de objetos o carpeta de medios local.
- Registra un checksum si necesitas detección de duplicados. Usa el tamaño del archivo como una heurística rápida para cambios.
Consideraciones operativas
- Timeouts: La variabilidad de la red es una realidad al transferir medios. Usa timeouts y reintentos razonables para el paso final de descarga del enlace.
- Backpressure: Si tu cola se dispara (por ejemplo, muchas conversiones), procesa en lotes y respeta tu cuota de suscripción en Zyla.
- Observabilidad: Registra estado, msg y progreso desde Obtener Audio para identificar rápidamente problemas intermitentes.
- Seguridad: Mantén tu clave API en un almacén seguro o variable de entorno; nunca la codifiques directamente en el código del lado del cliente.
- Resiliencia: Si almacenas en caché la respuesta, guarda tanto el título como la duración para que puedas renderizar metadatos incluso si esperas para descargar el archivo más tarde.
Referencia rápida
- Base del Hub para esta lista: https://zylalabs.com/api/381/youtube-to-audio-api/
- Obtener Audio: GET /8884/get-audio?id=VIDEO_ID
- Descargar Audio: GET /22174/download-audio?url=YOUTUBE_WATCH_URL
- Encabezado de autenticación: Authorization: Bearer YOUR_API_KEY
- Campos de respuesta que probablemente persistirás: link, title, duration (segundos), filesize (bytes)
Por qué usar Zyla API Hub para tareas de medios
Zyla centraliza más de 10,000 APIs públicas bajo una cuenta y una clave, para que puedas agregar funciones adyacentes sin rehacer la autenticación o la facturación. La API de Youtube a Audio se integra en ese flujo de trabajo con el mismo encabezado de Autorización que ya usas en otros lugares del Hub. Explora más capacidades de medios más adelante, pero envía primero este camino de conversión.
Navega por el catálogo en Zyla API Hub y agrega APIs con facturación de suscripción + cuota consistente (sin sorpresas por llamada).
FAQ
Q: ¿Cuál es la diferencia entre Obtener Audio y Descargar Audio?
A: Obtener Audio acepta un ID de video y devuelve el enlace directo más metadatos (título, duración, tamaño del archivo). Descargar Audio acepta una URL completa de YouTube y devuelve un enlace de audio descargable.
Q: ¿Qué campos debo almacenar para una biblioteca de medios?
A: Almacena link (URL de descarga), title, duration (en segundos) y filesize (en bytes). Estos son devueltos por Obtener Audio en el ejemplo oficial.
Q: ¿Cómo me autentico?
A: Agrega Authorization: Bearer YOUR_API_KEY a cada solicitud que envíes a las URL del Hub.
Q: ¿Hay un plan gratuito?
A: El Hub utiliza suscripción + cuota. La primera API generalmente ofrece una prueba de 7 días o 50 solicitudes; consulta la página de la API para las opciones de acceso y precios actuales.
Q: ¿Puedo activar esto desde un agente de codificación de IA?
A: Sí. Configura tu cliente compatible con MCP para usar el servicio MCP de Zyla y llama a los puntos finales del Hub. Consulta la página MCP para la configuración.
¿Listo para integrar esto en tu flujo de trabajo de medios? Suscríbete y obtén tu clave en la lista de API de Youtube a Audio, comienza la prueba de 7 días y envía la función de conversión hoy.