musics.name

For machines

Public JSON API

Everything this site publishes is available as structured data: articles with their Markdown source, the topic taxonomy, the tools, the recording catalogue and full-text search. Read-only, no keys, no accounts, CORS open.

Endpoints

  • GET /api/index.json — Site index

    Name, description, counts, endpoint list, latest articles, machine-readable locations.

  • GET /api/articles.json — Article list

    Metadata for every article. Filters: ?topic=, ?tag=, ?q=, ?limit= (1–100), ?offset=.

  • GET /api/article.json?slug=<slug> — One article

    Metadata, headings, FAQ, Markdown source and rendered HTML for a single article. Also at /api/articles/<slug>.json.

  • GET /api/topics.json — Taxonomy

    Topic keys with names, blurbs, counts and the newest article in each.

  • GET /api/tools.json — Tools

    The five browser tools with features, FAQ, privacy notes and schema.org nodes.

  • GET /api/releases.json — Catalogue

    Featured recordings with per-store links, cover art and release years.

  • GET /api/search.json?q=&lt;query&gt; — Search

    Ranked full-text search with snippets and the ranking rules.

  • GET /api/openapi.json — OpenAPI 3.1

    Formal description of every endpoint above, with schemas and policies.

Try it

# the index: counts, endpoints, latest articles
curl -s https://musics.name/api/index.json | jq .counts

# every article about tuning, oldest first
curl -s "https://musics.name/api/articles.json?topic=tuning&limit=50" | jq -r ".items[].url"

# one article with its Markdown source and rendered HTML
curl -s "https://musics.name/api/article.json?slug=just-intonation" | jq -r .markdown

# search
curl -s "https://musics.name/api/search.json?q=hypermeter" | jq -r ".results[].title"

Markdown twins

Every article is also published as raw Markdown with its front matter intact at /articles/<slug>.md, and any article URL answers Accept: application/json with the same object as /api/article.json. If you are building an index, wholesale reading is cheaper through /llms-full.txt (the whole corpus in one file) than through per-article requests.

Provenance

The site — design, front end, PHP rendering layer and browser tools — is developed by Yunus Emre Vurgun, who also reviews, corrects and publishes every article. Articles are drafted with AI assistance against a written house style; the review, the corrections and the decision to publish are human. Article objects returned by this API carry a provenance block with the same statement, so a citing agent can pass it on. Full disclosure.

Policy

The API is read-only and unauthenticated. Responses are cacheable and served with Access-Control-Allow-Origin: *, so browser-side clients can call it directly. There are no rate limits in the application; static caching (5–60 minutes) absorbs traffic, so please do not defeat it with cache-busting parameters. Identify your client with a meaningful user-agent.

Quoting is welcome and requires attribution with a link to the article URL. Republishing articles whole, or using the corpus to train a model for redistribution as a competing publication, needs permission — see the terms and, for anything unclear, contact.

Standard feeds and files

  • /feed.xml — RSS 2.0 with full article text
  • /feed.json — JSON Feed 1.1 with HTML and Markdown attachments
  • /llms.txt and /llms-full.txt — the site described for language models, and the full corpus
  • /sitemap.xml — every indexable URL with last-modified dates
  • /robots.txt — crawler policy, including explicit allowances for AI crawlers