Get book status
GET
/v1/projects/{id}/status
One read that tells you everything you need to know about where a book stands: whether it's moving, and if not, whether it's waiting (it'll resume on its own — just poll) or blocked (it needs you to do something, like add credit). This is the single endpoint an agent should poll to drive a book to completion without juggling several separate reads.
Authorizations
Bearer
JWT bearer token from POST /v1/auth/login.
Type
HTTP (bearer)
or
ApiKey
Scoped API key for non-interactive clients (issued by PBI #1426).
Type
API Key (header: X-Api-Key)
Parameters
Path Parameters
id*
Type
Requiredstring
Format
"uuid"Responses
OK
application/json
The single, described, agent-facing status of one book — what GET /v1/projects/{id}/status (#2000)
returns. Composed, never stored: every read derives it from the project (state + page counts +
ApprovalCount) + the latest job + the ModelBackendStatus GPU overlay (#1833) + the
BatchQuote (#1997). The machine-stable fields (string ProjectStatusView.State, string ProjectStatusView.Phase,
string? ProjectStatusView.WaitingOn, string? ProjectStatusView.BlockedOn, string? ProjectStatusView.NextAction) are closed enums an
agent can switch on; string ProjectStatusView.Title/string ProjectStatusView.Detail are display strings.
Shape ratified in docs/design/book-status-state-machine.md §4.
The GPU backend overlay (a ModelBackendStatus projection): ready/starting/throttled/unconfigured.
Valid values
"credit""retry"Valid values
"add_credit""retry""download"Valid values
"intake""working""waiting""done""error""cancelled"Progress facet of ProjectStatusView: translated / total included pages + the ladder rung.
Format
"uuid"Valid values
"Created""Calibrating""Processing""PausedNeedsCredit""PausedNeedsCapacity""Complete""CompletedWithErrors""Failed""Cancelling""Cancelled"Format
"date-time"Valid values
"gpu_capacity""gpu_warmup""queue""credit"