Articles¶
Status: Live
The reading-detail endpoint is implemented (CSL-230). See API Conventions for auth, errors, and caching.
An Article is editorial, contributor-authored writing — a contemporary piece about Lewis or his themes, written by a named contributor (e.g. Malcolm Guite). It's distinct from Lewis's own canon (Passages and Writings) and from the source Books: an Article has a byline and stands on its own, with no source Work.
Reading detail: GET /api/articles/{id}/¶
The single-piece payload behind the article reading screen. It is licensed content: it needs the
app key and a content-access token (X-Content-Token, see Content access),
is user-agnostic, and is cached by the app only (Cache-Control: private + ETag). It returns 404
when the id is not a published article.
How it behaves:
kindis"article". The article-specific fields are the contributor byline:subtitle,author(the contributor's display name, ornull), andpublication_date(an ISO date, ornull).- No
source. Articles are not drawn from a Book, so the payload has no "Discover about the book" block and no Buy CTA. The writing detail has both. - No
interpretation. The "What This Means" layer is passages-only. - Two computed onward rails match the other reading screens (CSL-207).
more_on_topicreturns Lewis Writings that share the article's theme.related_contentreturns other Articles that share its tags, with the article itself excluded. - No
related_quotes. The curated editorial-quotes rail is passage-only, so this payload omits the field instead of returning it empty. See the Passages API guide. - Body is Markdown (ADR-0006). Read time comes from its word count.
imageis thefeatured_imagehero,audiopowers the Listen control, andreflection_promptis the reflect question.
See Swagger for the precise field list and status codes.
Audio¶
A long-form body is one performance, so the detail payload's audio object has a single key,
body, holding a track or null until the article has been narrated. The track shape and the
placeholder-audio warning are in Audio.