Metadatos de audio
Una biblioteca de audios con nombres de artista faltantes, portadas en blanco o números de pista inconsistentes es la peor pesadilla de un reproductor y una molestia diaria para quien escucha. Esta API de metadatos de audio lee las etiquetas ID3 ya incrustadas en un archivo y escribe las nuevas que especifique, así se puede corregir o enriquecer un catálogo completo sin abrir un solo archivo a mano.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
El problema silencioso detrás de toda biblioteca desordenada
Los metadatos son la parte de un archivo de audio que nadie nota hasta que están mal: la aplicación de podcast que muestra 'Pista 1' en vez del título del episodio, el audiolibro que se ordena mal porque nunca se definieron los números de capítulo, la biblioteca de streaming con un ícono genérico donde debería estar la portada. Cualquiera que administre más de un puñado de archivos, sellos discográficos, redes de podcast, editoriales de audiolibros, termina necesitando inspeccionar y corregir etiquetas a escala en vez de un archivo a la vez en un editor de etiquetas de escritorio.
Leer y escribir en la misma solicitud
Envía un archivo a POST /audio/metadata junto con nada, para leer lo que ya está incrustado, o con un conjunto de valores de etiqueta a escribir, como título, artista, álbum, número de pista o portada. La tarea se pone en cola de forma asíncrona y devuelve un task_id de inmediato; cuando el procesamiento termina, las etiquetas leídas o el archivo actualizado se entregan por webhook firmado o por un enlace firmado válido por 24 horas.
Un formato con tres décadas de historia
ID3 ha sido la forma estándar de incrustar el título, el artista y la información del álbum directamente dentro de un MP3 o formato similar desde mediados de los años noventa, y es la razón por la que un reproductor puede mostrar el nombre de una canción sin que usted lo escriba. Versiones sucesivas del formato ampliaron lo que se podía almacenar, agregando portadas incrustadas y campos más estructurados, lo cual explica por qué leerlo y escribirlo correctamente sigue importando: el comportamiento del reproductor, el ordenamiento y la búsqueda dependen de que esas etiquetas existan y sean correctas.
Cómo encaja el trabajo de metadatos en la automatización
Como este es un solo endpoint para leer y escribir, un flujo de trabajo puede inspeccionar un lote de archivos entrantes en busca de etiquetas faltantes y luego escribir de inmediato los valores corregidos en una segunda llamada, todo sin que una persona abra un editor de etiquetas. El precio es de $0.077 por solicitud más $0.0045 por archivo, lo que mantiene el costo predecible ya sea que etiquete una sola pista o procese un lote entero bajo la misma especificación.
Acceso y estado actual
Usar el endpoint requiere saldo prepago, igual que el resto de la API; sin saldo, las solicitudes devuelven HTTP 402 en vez de una escritura parcial. Este endpoint está actualmente en despliegue y comenzará a aceptar tareas pronto. Los archivos subidos y sus metadatos se conservan solo durante la ventana de entrega y nunca se usan para entrenar modelos.
Qué puede hacer con ella
Limpieza de catálogo de podcast
Lea las etiquetas existentes en un catálogo histórico de episodios para identificar qué archivos no tienen título o número de episodio.
Etiquetado de capítulos de audiolibros
Escriba números de pista y títulos de capítulo correctos en un conjunto de archivos de narración para que se reproduzcan en el orden correcto.
Actualización masiva de portadas
Incruste una nueva portada en un conjunto de pistas después de un cambio de marca, sin editar cada archivo individualmente.
Normalización de biblioteca musical
Estandarice los campos de artista y álbum en archivos que llegaron de distintas fuentes con etiquetado inconsistente.
Preguntas frecuentes
¿Cómo leo etiquetas id3 con esta api?
Envía el archivo a POST /audio/metadata sin nuevos valores y la tarea devuelve las etiquetas existentes, como título, artista y álbum, por webhook o por un enlace firmado.
¿Esta api también puede escribir nuevas etiquetas id3?
Sí, enviando al mismo endpoint un conjunto de valores de etiqueta, incluida la portada, se escriben en el archivo y se devuelve la versión actualizada.
¿Hay un nivel gratuito para leer etiquetas id3?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. El acceso funciona con un saldo prepago de ForHosting KIT: se recarga desde $10.00 (no caduca) y cada solicitud se cobra a su precio publicado, así que una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Cuánto cuesta la api de metadatos de audio?
Cuesta $0.077 por solicitud más $0.0045 por archivo, así que el etiquetado por lotes escala de forma predecible con el número de archivos.
¿Está disponible ya la api de etiquetas id3?
Actualmente está en despliegue y comenzará a aceptar tareas pronto; el comportamiento de lectura y escritura descrito aquí es el que se lanzará.
¿Qué campos de etiqueta se pueden leer o escribir?
Se admiten campos ID3 estándar como título, artista, álbum, número de pista y portada incrustada.
¿Puedo actualizar metadatos de un lote de archivos de audio?
Sí, envíe una solicitud por archivo; cada una se procesa y se cobra de forma independiente, así puede procesar un catálogo completo con el mismo patrón de llamadas.
¿Escribir nuevas etiquetas afecta el audio en sí?
No, solo se modifican los metadatos incrustados; el contenido de audio del archivo no se recodifica ni se altera.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/audio/metadata \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/audio/metadata", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/metadata",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/metadata", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/metadata", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"input": "…"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.metadata",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 200 |
max_minutes | 180 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |