Generations

Generations

Endpoints for starting, monitoring, cancelling, promoting, and clearing documentation generations

Overview

The Generations endpoints start a documentation generation for a project, follow its progress, and manage its results. A generation is one run of Doxabot against the project's connected GitHub repository. It writes MDX pages and stores them as a versioned artifact. Publishing happens separately, by switching the active docs version.

Every endpoint in this group is scoped to a project. Pass the project ID in the path as projectId, and pass the generation ID as generationId where a single generation is addressed. The same operations are available in the dashboard on the project's Generations page, and to connected agents through the generation:run scope. See Generations and Doxabot Instructions for the dashboard workflow.

Starting a generation requires permission to run generations on the project. The project owner's account is charged for the run.

Use the list and stream endpoints to watch progress. The events endpoint returns the events recorded for one generation. The stream endpoint pushes the same kind of updates as server-sent events, and it accepts a cursor so a client can resume from the last event it received.

Schema

The request and response bodies use the generation DTOs from the shared contracts package. The table lists the fields that the endpoints in this group take as input.

FieldTypeRequiredDescription
projectIdstring (path)YesID of the project that owns the generation. Used by every endpoint in this group.
generationIdstring (path)Yes for single-generation endpointsID of one generation. Used by the get, events, stream, cancel, rerun, resume, promote, and delete endpoints.
cursorstring (query)NoPosition in the event stream. The stream endpoint uses it to resume after the last event a client received.

Generation responses return a generation object, or a list of them. Starting a generation returns a start result that describes whether the run began. Event responses return the events recorded for one generation, in the order they were recorded.

Endpoints

MethodPathDescription
POST/projects/{projectId}/generateStart a generation for a project.
GET/projects/{projectId}/generationsList a project's generations.
GET/projects/{projectId}/generations/{generationId}Get a generation.
GET/projects/{projectId}/generations/{generationId}/eventsList generation events.
GET/projects/{projectId}/generations/{generationId}/streamStream generation updates as server-sent events.
POST/projects/{projectId}/generations/{generationId}/cancelCancel a generation that is running.
POST/projects/{projectId}/generations/{generationId}/rerunRerun a generation.
POST/projects/{projectId}/generations/{generationId}/resumeResume a generation that stopped.
POST/projects/{projectId}/generations/{generationId}/promotePromote a generation output.
DELETE/projects/{projectId}/generations/{generationId}Delete a generation record.
GET/projects/{projectId}/generation-cacheGet generation cache for the project.
POST/projects/{projectId}/generation-cache/clearClear generation cache for the project.

Note:

Generation management from AI agents uses the same operations through the MCP tools. See Generation for the tool names and the generation:run scope.