"As a Reader, I want to get a page and its contents, so that I can read it whenever I want."
This is the most basic reading use case, retrieving the metadata about the page and the page text in HTML form in a single request. There are optimizations that work better when the reader is online and using a browser or native HTML widget that can load an HTML stream directly; see the related "Reader reads a page online" user story T234377.
GET /page/{title}/with_html
Returns the page as JSON. Title is escaped for slashes
Payload: empty
Request headers:
If-Modified-Since: for cache
If-None-Match: for cache
Status:
200 – this is the page
304 – not modified; body should be empty
404 – page does not exist (never created or deleted)
Headers:
Last-modified: last modification date of the page
ETag: entity tag for the page
Location: actual location if redirected
Body: JSON
id: id of the page
revision_id: revision ID of the page
title_key: prefixed DB key of the page, like "Talk:Main_Page"
display_title: title for display, like "Talk:Main Page"
html: Reversible HTML for the page as generated by Parsoid. No UI or navigation.