Acceptance Criteria:
- Define route for /page/
- Define route handler for page endpoint
- Request:
- Must support HTTP POST only
- Must support source parameter for wikitext source
- One of title_key/ or display_title// are supported for a request
- If both are provided title_key takes precedent
- One of title_key/ or display_title// are supported for a request
- Must support summary parameter, optional
- Request headers:
- Must support If-Modified-Since: only if the result set has changed since this date
- Must support If-None-Match: only if the result set's etag is different from this
- Response
- Response must return JSON
- Responses JSON must have structure:
{ "id": 12345, "revision_id": 67890, title_key: "Talk:Main_Page", display_title: "Talk:Main Page", source: "This is the Main Page. Check out the [[News]] and [[Weather]]." }
- id must contain the page numeric ID.
- revision_id must contain the numeric ID of the most recent revision.
- title_key must contain the pdbk version of the title
- display_title must contain the version of the title most suited for display, with spaces instead of underscores
- source must contain the wikitext source of the page
- Response headers must contain:
- Last-Modified: last time this result set was modified
- ETag: etag for this result set