Tokoh

Tokoh membawa poros want / fear / lie ala Truby yang membentuk pemahaman penulis bab tentang siapa tokoh itu, ditambah alias, peran, biografi, dan profil suara yang opsional. Buku dengan banyak POV membutuhkan setidaknya satu tokoh isPov: true.

Tampilkan daftar tokoh

GET /v1/books/{bookId}/characters
authorization: Bearer ant_live_…

→ 200 {
  "data": [
    {
      "id": "8b0c…",
      "name": "Marin",
      "aliases": ["the salt-keeper"],
      "role": "protagonist",
      "bio": "Lighthouse keeper, raised by her grandmother in Tide's Cove.",
      "voiceProfile": "Spare, water-bound, never apologetic.",
      "want": "to keep the village safe through one more storm",
      "fear": "becoming the version of her mother she swore she wouldn't",
      "lie": "love is something you earn by being useful",
      "isPov": true
    }
  ]
}

Buat tokoh

POST /v1/books/{bookId}/characters
content-type: application/json
authorization: Bearer ant_live_…

{
  "name": "Selene",
  "role": "antagonist",
  "want": "to break the village's grip on the cove",
  "fear": "being forgotten",
  "lie": "control is the only love that doesn't decay",
  "isPov": false
}

Ubah + hapus satu tokoh

PATCH /v1/books/{bookId}/characters/{characterId}
content-type: application/json
authorization: Bearer ant_live_…

{
  "voiceProfile": "Clipped, generous with silence, never repeats herself."
}
DELETE /v1/books/{bookId}/characters/{characterId}
authorization: Bearer ant_live_…

→ 200 { "data": { "ok": true } }

Sisi konflik yang merujuk ke tokoh yang dihapus dibersihkan secara otomatis.

Referensi field

  • name — wajib, ≤ 120 karakter.
  • aliases — hingga 20 nama alternatif pendek.
  • role, bio, voiceProfile — bebas; bio + voiceProfile bisa sampai 2000 karakter.
  • want / fear / lie — masing-masing satu klausa pendek (≤ 240 karakter). Mengisi salah satunya dengan null menghapusnya dari prompt bab.
  • isPov — true menandai tokoh sebagai pembawa POV.

Dari MCP

list_characters, create_character, update_character, dan delete_character juga tersedia lewat server MCP. Matriks konflik dibungkus oleh list_character_conflicts, add_character_conflict, dan remove_character_conflict.