In addition for the HTML route, add another route which simplifies changes for the apps by having the same JSON structure but have all the DOM transformations done on the service. (Basically a scaled down version of mobileview).
The idea is that we can use the same route for both the lead section (whatever we need to display above the fold) on the final page, and for the enhanced link previews. At least for now we put all the things we need for either one together into the same response. We may decide later to split it out.
/{domain}/v1
-- /page
-- /mobile
-- /json/{title}/lead
-- /json/{title}/rest
What we need for lead:
* id (pageid)
* revision
* lastmodified (maybe, could also go to the end)
* title
* description
* lead image
* lead section
* (full) toc
Additionally, what we need for enhanced link previews:
* first infobox, as JSON, all rows, as a table, tr, td
* text extracts
Can come later:
* link to pronunciation, example: [[Obama]]
* link full spoken version, example: [[Obama]]
* geocoordinates