Produktion

Mixanalytic API-Dokumentation

Offizielle API-Referenz für https://mixanalytic.com. Laden Sie Audio hoch und erhalten Sie eine KI-Mixanalyse mit auswählbaren Modulen sowie kompakten oder vollständigen Antworten.

Basis-URL: https://mixanalytic.com/api

Authentifizierung

Senden Sie Ihren API-Schlüssel bei jeder Anfrage im Header X-API-Key.

curl -X GET "https://mixanalytic.com/api/test-data" \ -H "X-API-Key: YOUR_API_KEY"
  • 401 fehlender oder ungültiger Schlüssel
  • 403 Schlüssel des kostenlosen Tarifs ohne API-Zugriff
  • 429 Ratenlimit überschritten

Berechtigungsbereiche: write dient dem Upload und der Analyse in Mix Analyzer. content liest bereinigte Daten für die Inhaltsrecherche. content_write speichert nicht öffentliche Inhaltsentwürfe. Inhaltsberechtigungen sind nur für Admins.

Endpunkte

Methode Pfad Zweck
GET/api/test-dataVerbindungs- und Authentifizierungsprüfung.
POST/api/uploadAudiodatei hochladen und analysieren.
GET/api/analyze/<file_id>Erneut anhand der Datei-ID analysieren (wenn die Originaldatei noch vorhanden ist).
GET/api/content/analysis-feedBereinigter Recherchefeed für Inhaltsagenten, nur für Admins.
POST/api/content/draftsEndpunkt zum Speichern und Aktualisieren von Entwürfen für Inhaltsagenten, nur für Admins.
GET/api/ai-stats?days=30Nutzungsstatistiken für KI-Analysen.

Upload-Anfrage

POST/api/upload

Feld Typ Erforderlich Hinweise
filemultipart fileJaZulässig: mp3, wav, flac, m4a, aac, ogg. Maximal 100MB.
modulesstring/listNeinOhne Angabe werden standardmäßig alle Module verwendet.
detail_levelstringNeinfull (Standard) oder summary.

Ungültiges detail_level liefert 400. Zu große Dateien liefern 413.

Modulauswahl

Steuern Sie mit modules, welche Analysemodule zurückgegeben und berechnet werden.

Unterstützte Formate:

  • Durch Kommas getrennte Zeichenfolge: modules=frequency_balance,clarity,mood
  • Zeichenfolge mit JSON-Array: modules=["frequency_balance","clarity","mood"]
  • Wiederholter Schlüssel (Abfrage/Formular): modules=frequency_balance&modules=clarity
  • Alle Module: modules=all oder modules=*
Modul Beschreibung
frequency_balanceFrequenz- und Balancebewertung über 7 Bänder.
dynamic_rangeDynamikbereich, Crest-Faktor, PLR.
stereo_fieldBreiten-, Phasen- und Korrelationsmetriken.
clarityMetriken für spektrale Klarheit und Definition.
harmonic_contentTonart und harmonische Komplexität.
transientsDaten zu Attack, Transientendichte und Bass-Punch.
3d_spatialKonsistenz von Höhe, Tiefe und Breite.
surround_compatibilityMonokompatibilität + Phasenbewertung.
headphone_optimizationOptimierungsbewertung für Kopfhörerwiedergabe.
speaker_optimizationOptimierungsbewertung für Lautsprecherwiedergabe.
genreGenreklassifikation und Konfidenz.
voicePräsenz und Eigenschaften der Stimme.
instrumentsInstrumentenerkennung und Arrangement-Informationen.
moodStimmungsprofil mit Energie und Valenz.
keywordsSemantische Schlagwörter und Tags.
loudnessMiss LUFS, True Peak, Clipping und Streaming-Ziele, damit dein Master laut genug bleibt, ohne Verzerrung, Codec-Spitzen oder Überraschungen auf Plattformen.
noiseMiss Grundrauschen, Netzbrummen, Zischen und Artefakte, damit du Aufnahmen bereinigen kannst, bevor diese Störungen beim Mastering lauter, heller und schwerer zu verbergen werden.
format_qualityPrüfe verlustbehaftete Kodierung, spektralen Cutoff und Bittiefe, damit du vor der Veröffentlichung nicht versehentlich beeinträchtigte MP3-, AAC- oder hochskalierte Audioquellen masterst.
referenceReferenz
visualizationsURLs für erzeugte Analysevisualisierungen.
ai_insightsVon einem LLM erstellte Zusammenfassung und Empfehlungen.

Antwortgröße steuern

Verwenden Sie detail_level:

  • full (Standard): vollständige Antwortdaten
  • summary: kompakte Antwortdaten für Frontend- und mobile Clients

Beispiele

1) Upload + vollständige Analyse

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3"

2) Upload + ausgewählte Module

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3" \ -F "modules=frequency_balance,dynamic_range,genre,mood,keywords"

3) Upload + ausgewählte Module + zusammengefasste Antwortdaten

curl -X POST "https://mixanalytic.com/api/upload" \ -H "X-API-Key: YOUR_API_KEY" \ -F "file=@/path/to/track.mp3" \ -F "modules=frequency_balance,stereo_field,clarity,ai_insights" \ -F "detail_level=summary"

4) Testendpunkt

curl -X GET "https://mixanalytic.com/api/test-data" \ -H "X-API-Key: YOUR_API_KEY"

5) Clientseitiges JavaScript

const formData = new FormData(); formData.append('file', fileInput.files[0]); formData.append('modules', 'frequency_balance,dynamic_range,mood,ai_insights'); formData.append('detail_level', 'summary'); const res = await fetch('https://mixanalytic.com/api/upload', { method: 'POST', headers: { 'X-API-Key': 'YOUR_API_KEY' }, body: formData }); const data = await res.json(); console.log(data.analysis, data.returned_modules);

Standard-Antwortmetadaten

Erfolgreiche Analyseantworten enthalten:

  • requested_modules
  • returned_modules
  • detail_level
  • available_modules

Fehlercodes

Status Bedeutung Typische Ursache
400Ungültige AnfrageUngültiges Modul/detail_level, fehlendes file-Feld, leere Datei.
401Nicht autorisiertFehlender, ungültiger oder abgelaufener API-Schlüssel.
403Zugriff verweigertAPI-Zugriff für diesen Kontotarif nicht erlaubt.
404Nicht gefunden/api/analyze/<file_id> Datei nicht mehr verfügbar (Löschung zum Datenschutz).
413Nutzlast zu großDatei größer als 100MB.
429Ratenlimit überschrittenZu viele Anfragen pro Minute, Stunde oder Tag.
500ServerfehlerAnalyse- oder Laufzeitfehler.

Frontend-Hinweise

  • Für Web- und mobile Clients sollten Sie detail_level=summary bevorzugen.
  • Fordern Sie nur die beim ersten Rendern benötigten Module an, um Latenz und Antwortgröße zu reduzieren.
  • Behandeln Sie 429 und 500 mit erneuten Versuchen und zunehmenden Wartezeiten.
  • Legen Sie keine langlebigen Produktionsschlüssel in öffentlichen Bundles offen.