The article object
Every field of an article, as the API returns it.
| Field | Type | |
|---|---|---|
id | string | UUID. Stable for the article's life, rewrites included. |
projectId | string | The project it belongs to. |
title | string | The headline. Render it as the page's h1; it's not a block. |
slug | string | URL segment, stable across rewrites. |
status | "ready" | Always "ready", which means published. A content key sees published articles only. |
topic | string | The search query the article targets. |
cluster | string | null | The topic cluster, for grouping and navigation. |
blocks | Block[] | The body as typed blocks. Never HTML. |
seo | SeoMetadata | Head tags and JSON-LD. |
thumbnailUrl | string | null | The cover image on the SEO for SaaS CDN, generated at 1536×1024. |
createdAt | string | ISO 8601, when the article was written. If you review articles before publishing, it can be earlier than the publish date. The guides use it as the published date. |
updatedAt | string | ISO 8601. The last change a reader can see: publishing, a rewrite, an edit, a link we added. Internal changes that readers can't see never move it, so it's safe for a sitemap lastmod (Sitemap) and an "Updated" byline. |
related | { title, href }[] | Single reads only. |
All of it as TypeScript types: types.ts (Article, ArticleDetail, ContentBlock, SeoMetadata, WebhookEvent). A real one: the example article.