Books
A book is the top-level container — metadata (title, premise, genre, cover color), generation state, and an ordered list of chapters. All endpoints scope to the calling token’s user; you can only see your own books.
List books
GET/v1/booksscope: books:read
Returns every non-deleted book on the account, newest-updated first.
curl -H "authorization: Bearer $ANTHRA_TOKEN" \
https://anthra.vercel.app/api/v1/booksResponse
{
"data": [
{
"id": "8f1c…",
"title": "Walking the Salt Roads",
"subtitle": "A year on foot through southern Europe",
"premise": "…",
"status": "published",
"visibility": "unlisted",
"slug": "walking-the-salt-roads",
"readerUrl": "https://anthra.vercel.app/read/walking-the-salt-roads",
"createdAt": "2026-05-12T18:24:11.000Z",
"updatedAt": "2026-05-30T09:01:02.000Z"
}
]
}Create a book
POST/v1/booksscope: books:write
Creates a draft book seeded with a premise. The outliner is not run automatically — call /outline next.
Body
| Field | Type | Notes |
|---|---|---|
premise | string (10–4000) | Required. The seed prompt for the book. |
title | string | Optional. Defaults to “Untitled Book” until the outliner overwrites it. |
genre | string | Hint for the outliner. |
audience | string | Hint for the outliner. |
author | string | Public author byline. Defaults to your account name. |
modelTier | haiku | sonnet | opus | Writer model for chapter prose. sonnet is the default. |
Get a book
GET/v1/books/{bookId}scope: books:read
Returns the book and its full chapter list (with prose content).
Update a book
PATCH/v1/books/{bookId}scope: books:write
Patch any of title, subtitle, author, description, coverColor (hex), audience, toneStyle, genre, modelTier.
Delete a book
DELETE/v1/books/{bookId}scope: books:write
Soft-deletes the book — it’s recoverable for 30 days, after which the nightly cron worker hard-deletes it.