Penerbitan

POST/v1/books/{bookId}/publishcakupan: publish:write

Terbitkan atau batalkan penerbitan buku. Saat menerbitkan, setiap bab harus berisi konten; Anthra membuat slug yang unik secara global (memakai ulang slug buku jika sebelumnya sudah pernah terbit), mengisi publishedAt, dan memvalidasi ulang pembaca publik di /read/{slug}.

Body

FieldTipeCatatan
publishbooleanWajib. true menerbitkan (status → published); false mengembalikan ke ready.
visibilityprivate | unlisted | publicOpsional. Bawaannya mengikuti nilai yang sudah dimiliki buku. unlisted = siapa pun yang punya slug bisa membaca; public = juga bisa diindeks.
curl -X POST "$ANTHRA_BASE/books/$BOOK/publish" \
  -H "authorization: Bearer $ANTHRA_TOKEN" \
  -H "content-type: application/json" \
  -d '{ "publish": true, "visibility": "unlisted" }'

Respons berisi Book yang diperbarui, termasuk slug dan readerUrl.

Error umum

  • 400 invalid_state — “Finish writing all chapters before publishing.” Ada bab dengan content kosong.
  • 403 insufficient_scope — token tidak membawa publish:write.