NØISENL

Naslag

API

Een openbare, alleen-lezen JSON-API om door de bibliotheek op de website te bladeren.

Deze API is live nu de bibliotheek op deze website staat. Zie Website.

Overzicht

Een openbare JSON-API, alleen lezen, om door gedeelde nummers te bladeren. Geen authenticatie. CORS staat open (*). Limiet: 120 verzoeken per minuut per IP; daarboven krijg je een 429 met een Retry-After-header. Geslaagde antwoorden worden een minuut gecachet.

Alleen gepubliceerde nummers komen terug. Een onbekend id, of een nummer dat niet gepubliceerd is, geeft 404:

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

GET /api/v1/songs

Nummers opvragen en zoeken.

Queryparameters:

ParameterBetekenis
qVrij zoeken op tekst (naam, auteur, notities)
styleFilter op JAM-stijl: pop, rock, blues, jazz, hiphop, funk, metal
feelFilter op de feel-tag
difficultyeasy, medium, hard (hoofdletters maken niet uit)
sortnewest (standaard), downloads, rating, bars
pagePaginanummer, vanaf 1, standaard 1
per_pageResultaten per pagina, standaard 20, maximaal 50

Op de toonsoort kun je niet filteren; key wordt alleen teruggegeven, niet gelezen.

Vorm van het antwoord:

{
  "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 en key zijn null als het nummer ze niet heeft. id is het publieke id van het nummer, hetzelfde als in de URL van de pagina van het nummer.

GET /api/v1/songs/{id}

Alle metadata van één nummer: de velden hierboven plus notes (de beschrijving), kit, bpm, tuning, form (de secties op volgorde, bijvoorbeeld INTRO · VERSE ×2 · CHORUS), playsOnce, sourceUuid (het nummer waarop het is gebouwd, als dat er is) en createdAt.

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

Het akkoordenschema als leesbare data, in dezelfde vorm die build_song van de MCP-server verwacht: maten als arrays, akkoorden als symbolen, grepen 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 is het id in het document zelf, voor de afstamming als je erop voortbouwt; notes zegt in gewone woorden wat er in het bewaarde nummer zit dat deze vorm niet kan uitdrukken.

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

Het .noisesong-bestand van het nummer (Content-Type: application/x-noise-song+json), klaar om te downloaden of aan een noise://-link te hangen. Zie Het .noisesong-bestand en de noise://-link. Een download telt één keer per IP per dag.

Verder