Referencia
API
Una API JSON pública y de solo lectura para consultar la biblioteca de canciones de esta web.
Esta API está en marcha ahora que la biblioteca de canciones está en esta web: mira Web.
Resumen
Una API JSON pública y de solo lectura para consultar las canciones compartidas. Sin autenticación. CORS abierto (*). Límite de peticiones: 120 peticiones/minuto/IP; por encima recibes un 429 con una cabecera Retry-After. Las respuestas correctas se guardan en caché un minuto.
Solo se devuelven canciones publicadas. Un id desconocido, o una canción que no está publicada, responde 404:
{ "error": { "code": "not_found", "message": "No published song with that id." } }GET /api/v1/songs
Lista y busca canciones.
Parámetros de consulta:
| Parámetro | Significado |
|---|---|
q | Búsqueda de texto libre (nombre, autor, notas) |
style | Filtra por estilo de JAM: pop, rock, blues, jazz, hiphop, funk, metal |
feel | Filtra por etiqueta de feel |
difficulty | easy, medium, hard (sin distinguir mayúsculas) |
sort | newest (por defecto), downloads, rating, bars |
page | Número de página, empezando en 1, por defecto 1 |
per_page | Resultados por página, por defecto 20, máximo 50 |
No hay filtro por tonalidad; key solo se devuelve, no se lee.
Forma de la respuesta:
{
"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 y key son null cuando la canción no los lleva. id es el id público de la canción, el mismo que va en la URL de su página.
GET /api/v1/songs/{id}
Todos los metadatos de la canción: los campos de arriba más notes (la descripción), kit, bpm, tuning, form (las secciones en orden, p. ej. INTRO · VERSE ×2 · CHORUS), playsOnce, sourceUuid (la canción de la que se construyó, si la hay) y createdAt.
GET /api/v1/songs/{id}/chart
El cifrado como datos legibles, con la misma forma que toma build_song en el servidor MCP: compases como arrays, acordes como símbolos, formas como etiquetas.
{
"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 es el id de dentro del documento, para el linaje cuando construyes sobre ella; notes enumera, en palabras llanas, todo lo que hay en la canción guardada y esta forma no puede expresar.
GET /api/v1/songs/{id}/file
El archivo .noisesong de la canción (Content-Type: application/x-noise-song+json), listo para descargar o para pasar a un enlace noise://: mira El archivo .noisesong y el enlace noise://. Una descarga se cuenta una vez por IP y día.