NØISEDE

Referenz

API

Eine öffentliche JSON-API, nur lesend, zum Durchsehen der Songbibliothek auf dieser Website.

Diese API ist live, seit die Songbibliothek auf dieser Website ist; siehe Website.

Überblick

Eine öffentliche JSON-API, nur lesend, zum Durchsehen geteilter Songs. Keine Authentifizierung. CORS ist offen (*). Rate-Limit: 120 Anfragen/Minute/IP; darüber bekommst du eine 429 mit einem Retry-After-Header. Erfolgreiche Antworten werden eine Minute lang gecacht.

Zurück kommen nur veröffentlichte Songs. Eine unbekannte id, oder ein Song, der nicht veröffentlicht ist, antwortet mit 404:

{ "error": { "code": "not_found", "message": "No published song with that id." } }

GET /api/v1/songs

Songs auflisten und suchen.

Query-Parameter:

ParameterBedeutung
qFreitextsuche (Name, Autor, Notizen)
styleFilter nach JAM-Stil: pop, rock, blues, jazz, hiphop, funk, metal
feelFilter nach Groove-Feel-Tag
difficultyeasy, medium, hard (Groß- oder Kleinschreibung egal)
sortnewest (Standard), downloads, rating, bars
pageSeitennummer, ab 1, Standard 1
per_pageErgebnisse pro Seite, Standard 20, höchstens 50

Einen Filter auf die Tonart gibt es nicht; key wird nur ausgegeben, nicht gelesen.

Form der Antwort:

{
  "songs": [
    {
      "id": "d_OxIkOTen",
      "name": "Amber Skyline",
      "author": "NØISE",
      "style": "rock",
      "feel": "straight",
      "key": "Am",
      "difficulty": "medium",
      "bars": 32,
      "ratingAvg": 4.5,
      "ratingCount": 2,
      "downloadCount": 17,
      "updatedAt": "2026-05-01T12:00:00.000Z"
    }
  ],
  "page": 1,
  "per_page": 20,
  "total": 137
}

author und key sind null, wenn der Song sie nicht trägt. id ist die öffentliche id des Songs, dieselbe wie in der URL seiner Seite.

GET /api/v1/songs/{id}

Die vollständigen Metadaten des Songs: die Felder oben plus notes (die Beschreibung), kit, bpm, tuning, form (die Teile der Reihe nach, z. B. INTRO · VERSE ×2 · CHORUS), playsOnce, sourceUuid (der Song, aus dem er gebaut wurde, falls es einen gibt) und createdAt.

GET /api/v1/songs/{id}/chart

Das Akkordschema als lesbare Daten, in derselben Form, die build_song des MCP-Servers nimmt: Takte als Arrays, Akkorde als Symbole, Griffe als Tags.

{
  "id": "d_OxIkOTen",
  "songUuid": "6F1A0E9C-3D4E-4B11-9A0B-1C2D3E4F5A6B",
  "song": {
    "name": "Amber Skyline",
    "key": "Am",
    "bpm": 120,
    "sections": [
      { "name": "VERSE", "repeats": 2, "bars": ["Am", "F", "C", "G"] }
    ]
  },
  "notes": []
}

songUuid ist die id im Dokument, für die Herkunft, wenn du darauf aufbaust; notes nennt in einfachen Worten alles im gespeicherten Song, was diese Form nicht ausdrücken kann.

GET /api/v1/songs/{id}/file

Die .noisesong-Datei des Songs (Content-Type: application/x-noise-song+json), fertig zum Laden oder für einen noise://-Link; siehe Die .noisesong-Datei und der noise://-Link. Ein Download wird einmal pro IP und Tag gezählt.

Weiter