Content API
Read Wake content as JSON, for apps, other websites or a headless frontend.
Wake answers JSON at /wake/api/v1/. Published content can be read by anyone,
just like the website itself. Drafts and statistics need a personal token with
the right scope (created under Assistants in the panel), sent as
Authorization: Bearer wake_…. All endpoints allow requests from any origin
(CORS) and are limited to 120 requests per minute.
The API only reads. Content is written in the panel or through the MCP server.
Endpoints
GET /wake/api/v1/site
Title, description, address, languages and content types.
GET /wake/api/v1/entries
| Parameter | Default | Meaning |
|---|---|---|
type |
post |
content type: post, page, tag or a custom type |
language |
default language | language code |
tag |
only entries with this tag | |
category |
only posts of this category; for date categories only upcoming ones, next first | |
status |
published |
draft, scheduled or any need the scope content:read |
limit |
10 |
entries per page, at most 100 |
page |
1 |
page |
body |
0 |
1 adds markdown and html to each entry |
{
"data": [{
"id": "posts/hello-world",
"title": "Hello world",
"url": "https://example.org/hello-world",
"status": "published",
"date": "2026-10-17T09:00:00+02:00",
"excerpt": "…",
"tags": [{ "slug": "wake", "title": "Wake" }],
"cover": { "url": "…", "srcset": "…", "width": 1600, "height": 900 },
"translations": { "en": "…", "de": "…" },
"fields": { "title": "Hello world", "…": "…" }
}],
"meta": { "page": 1, "pages": 3, "total": 25 }
}
GET /wake/api/v1/entry?id=…
One entry with markdown and html. Takes language as well. Drafts need the
scope content:read; without it they answer 404.
GET /wake/api/v1/stats?period=7d
The statistics report of a period (today, yesterday, 7d, 30d, 90d,
12m, month). Needs the scope stats:read.
Errors
Errors come back as JSON with a message and the usual status codes: 401 for an
invalid token, 403 for a missing scope, 404 for something that does not exist,
422 for invalid parameters, 429 for too many requests.
source: docs/reference/api.md