Reference

API documentation

All endpoints are static JSON files. No authentication, no rate limiting, no SDK required. Fetch them with anything that speaks HTTP.

Endpoints

Path Returns Sample
/ragas/<SLUG>.json One raga record (e.g. yaman, bhairavi, shankarabharanam). /ragas/yaman.json
/index.json Compact array of every raga slug. Use for autocomplete. /index.json
/all.json Every full record in one file. /all.json
/by-system.json { hindustani: [slugs], carnatic: [slugs] } map. /by-system.json
/thaats.json The 10 Hindustani thaats with descriptions. /thaats.json
/melakartas.json The 72 Carnatic melakarta ragas (parent scales). /melakartas.json

Base URL: https://ragas.oriz.in · also available at https://cdn.jsdelivr.net/gh/oriz-org/ragas-api@main

Record schema

Each /ragas/<SLUG>.json file returns one record:

type Raga = {
  slug:       string;             // e.g. "yaman", "shankarabharanam"
  name:       string;             // canonical name in Latin script
  alt_names:  string[];           // alternate spellings / regional names
  system:     "hindustani" | "carnatic";
  thaat:      string | null;      // Hindustani parent thaat, null for Carnatic
  melakarta:  number | null;      // Carnatic parent melakarta (1..72), null for Hindustani
  arohana:    string;             // ascending scale, sargam notation
  avarohana:  string;             // descending scale, sargam notation
  vadi:       string | null;      // most-emphasized note
  samvadi:    string | null;      // second-most-emphasized note
  time:       string | null;      // performance time (mostly Hindustani)
  rasa:       string | null;      // dominant emotional mood
  notes:      string;             // free-text description (may be empty)
}

Hindustani vs Carnatic

Indian classical music has two major systems, and they classify ragas differently:

See /thaats.json for the 10 thaats and /melakartas.json for the 72 melakartas.

Sargam notation

Arohana and avarohana use the 7-svara sargam: S R G M P D N (Sa Re Ga Ma Pa Dha Ni). Komal (flat) notes are marked with a trailing lowercase letter or symbol; tivra (sharp) Ma is sometimes M' or . Higher-octave notes are marked with ' or a dot above (rendered as ). Spacing is preserved as in the source.

Errors

The only possible error is 404 — unknown slug. There is no authentication, no rate limit, and no quota, so 401/403/429 cannot occur. CORS is wide open on both origins.

License

Attribution: "Source: Wikipedia List of Hindustani / Carnatic ragas; OpenRaga/ragajson."