The json format already exists. Google "spelldata.json 5e". I would highly recommend any api follows that format as it already has all the spells in it. It is not the best format (yours is better), but its all done already. This is the format they use (Fireball is in the free rules, so should be ok to post this): [
{
"name":"Fireball",
"desc":"<p>A bright streak flashes from your pointing finger to a point you choose within range and then blossoms with a low roar into an explosion of flame. Each creature in a 20-foot-radius sphere centered on that point must make a dexterity saving throw. A target takes 8d6 fire damage on a failed save, or half as much damage on a successful one.</p><p>The fire spreads around corners. It ignites flammable objects in the area that aren’t being worn or carried.</p>",
"higher_level":"<p>When you cast this spell using a spell slot of 4th level or higher, the damage increases by 1d6 for each slot level above 3rd.</p>",
"page":"phb 241",
"range":"150 feet",
"components":"V, S, M",
"material":"A tiny ball of bat guano and sulfur.",
"ritual":"no",
"duration":"Instantaneous",
"concentration":"no",
"casting_time":"1 action",
"level":"3rd-level",
"school":"Evocation",
"class":"Cleric, Sorcerer, Warlock, Wizard",
"archetype":"Cleric: Light<br/> Warlock: Fiend",
"domains":"Light",
"patrons":"Fiend"
}
]