Documentación de la API de Mixanalytic
Referencia oficial de la API de https://mixanalytic.com. Usa esta API para subir audio y recibir análisis de mezcla con IA, con módulos seleccionables y respuestas compactas o completas.
URL base: https://mixanalytic.com/api
Autenticación
Envía tu clave de API en la cabecera X-API-Key en cada solicitud.
- 401 clave ausente o no válida
- 403 clave de plan gratuito sin acceso a la API
- 429 límite de solicitudes superado
Ámbitos: write permite subir y analizar en Mix Analyzer. content lee datos de investigación de contenido con datos sensibles ocultos. content_write guarda borradores de contenido no públicos. Los ámbitos de contenido son exclusivos de administradores.
Endpoints
| Método | Ruta | Propósito |
|---|---|---|
| GET | /api/test-data | Comprobación de conectividad y autenticación. |
| POST | /api/upload | Subir y analizar un archivo de audio. |
| GET | /api/analyze/<file_id> | Volver a analizar mediante el ID de archivo (si el archivo original aún existe). |
| GET | /api/content/analysis-feed | Feed de investigación con datos sensibles ocultos para agentes de contenido, exclusivo de administradores. |
| POST | /api/content/drafts | Endpoint para guardar o actualizar borradores para agentes de contenido, exclusivo de administradores. |
| GET | /api/ai-stats?days=30 | Estadísticas de uso del análisis de IA. |
Solicitud de subida
POST/api/upload
| Campo | Tipo | Obligatorio | Notas |
|---|---|---|---|
| file | multipart file | Sí | Permitidos: mp3, wav, flac, m4a, aac, ogg. Máx. 100MB. |
| modules | string/list | No | Si se omite, se usan todos los módulos por defecto. |
| detail_level | string | No | full (por defecto) o summary. |
Un valor de detail_level no válido devuelve 400. Los archivos demasiado grandes devuelven 413.
Selección de módulos
Controla qué módulos de análisis se devuelven (y se calculan) con modules.
Formatos admitidos:
- Cadena separada por comas: modules=frequency_balance,clarity,mood
- Cadena de array JSON: modules=["frequency_balance","clarity","mood"]
- Clave repetida (consulta/formulario): modules=frequency_balance&modules=clarity
- Todos los módulos: modules=all o modules=*
| Módulo | Descripción |
|---|---|
| frequency_balance | Puntuación de frecuencias y equilibrio en 7 bandas. |
| dynamic_range | Rango dinámico, factor de cresta, PLR. |
| stereo_field | Métricas de anchura, fase y correlación. |
| clarity | Métricas de claridad y definición espectral. |
| harmonic_content | Tonalidad y complejidad armónica. |
| transients | Datos de ataque, densidad de transitorios y pegada en graves. |
| 3d_spatial | Consistencia de altura, profundidad y anchura. |
| surround_compatibility | Compatibilidad mono y puntuación de fase. |
| headphone_optimization | Puntuación de optimización de reproducción con auriculares. |
| speaker_optimization | Puntuación de optimización de reproducción con altavoces. |
| genre | Clasificación de género y nivel de confianza. |
| voice | Presencia vocal y características de la voz. |
| instruments | Detección de instrumentos e información del arreglo. |
| mood | Perfil de estado de ánimo con energía y valencia. |
| keywords | Palabras clave y etiquetas semánticas. |
| loudness | Mide LUFS, pico real, clipping y objetivos de streaming para que el máster tenga suficiente nivel sin distorsión, picos del códec ni sorpresas en plataformas. |
| noise | Mide ruido de fondo, zumbido de red, siseo y artefactos para limpiar audio antes de que el mastering los haga más fuertes, brillantes y difíciles de ocultar. |
| format_quality | Revisa codificación con pérdida, corte espectral y profundidad de bits para no masterizar audio MP3, AAC o ampliado y degradado por error antes de publicar. |
| reference | Referencia |
| visualizations | URL de los recursos visuales generados para el análisis. |
| ai_insights | Resumen y recomendaciones generados por LLM. |
Control del tamaño de respuesta
Usa detail_level:
- full (por defecto): respuesta completa
- summary: respuesta compacta para clientes web y móviles
Ejemplos
1) Subida y análisis completo
2) Subida y módulos seleccionados
3) Subida, módulos seleccionados y respuesta resumida
4) Endpoint de prueba
5) JavaScript del lado del cliente
Metadatos estándar de respuesta
Las respuestas de análisis correctas incluyen:
- requested_modules
- returned_modules
- detail_level
- available_modules
Códigos de error
| Estado | Significado | Causa habitual |
|---|---|---|
| 400 | Solicitud incorrecta | Módulo/detail_level no válido, campo de archivo ausente o archivo vacío. |
| 401 | No autorizado | Clave de API ausente, no válida o caducada. |
| 403 | Prohibido | El nivel de cuenta no permite el acceso a la API. |
| 404 | No encontrado | /api/analyze/<file_id> archivo ya no disponible (eliminación por privacidad). |
| 413 | Contenido demasiado grande | Archivo de más de 100MB. |
| 429 | Límite de solicitudes superado | Demasiadas solicitudes por minuto, hora o día. |
| 500 | Error del servidor | Fallo de análisis o de ejecución. |
Notas para el frontend
- Para clientes web y móviles, usa preferentemente detail_level=summary.
- Solicita solo los módulos necesarios para el primer renderizado para reducir la latencia y el tamaño de la respuesta.
- Gestiona 429 y 500 con reintentos e intervalos de espera crecientes.
- No expongas claves de producción de larga duración en paquetes públicos.