Skip to main content
Every API response — success or failure — uses one envelope. Failures carry a stable machine-readable code, a human-readable message, and the request ID. Quote outcomes such as requires_input or failed are not errors: they are successful responses with an unpriced Receipt.

Envelope shape

Success (200 or 201):
Failure:

Error codes

Quote routes

Book authoring and publication routes

Business membership and branding routes

API key, webhook, and log routes (Workspace management)

These routes authenticate the Workspace session and authorize against Workspace roles.

Quote outcomes are not errors

A created Quote always returns 201 with a Receipt, even when the Receipt is unpriced: Handle outcomes in your integration logic and reserve error handling for the envelope above.

The request ID

Every response includes x-request-id. Quote creates also echo it as the Intent and Receipt requestCorrelationId, so a customer-facing Quote can always be traced back to the exact HTTP request. Include it in support reports.