Initiate synthesis proposal generation
POST /pipelines/{pipelineId}/synthesize
Creates a pending synthesis run and queues a job to analyze signals and execution history using an LLM. The synthesis runs asynchronously - poll GET /synthesis-runs/{id} to check status. Once status is ‘generated’, the proposal can be approved or rejected.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”ID of the pipeline to generate synthesis for
ID of the pipeline to generate synthesis for
Request Body
Section titled “Request Body ”object
Synthesis handler to use (e.g., ‘apg_v1’)
Responses
Section titled “ Responses ”Synthesis generation initiated - poll for completion
object
Unique identifier for the synthesis run (nanoid format)
ID of the pipeline this synthesis is for
ID of the team that owns the pipeline
Status: ‘pending’, ‘generating’, ‘generated’, ‘approved’, ‘rejected’, or ‘failed’
Synthesis handler/algorithm used for this run (e.g., ‘apg_v1’)
ID of the pipeline configuration before synthesis
ID of the proposed configuration (null until generation completes)
Legacy: LLM explanation text (use diagnosis/changes for new runs)
Legacy: String warnings (use structuredWarnings for new runs)
Structured diagnosis with summary and findings from signal analysis
object
1-2 sentence summary of overall issues
object
Simple numeric ID: ‘1’, ‘2’, ‘3’
What the signals indicate
Actual signal IDs (mapped from LLM numeric refs)
Proposed changes with per-change rationale
object
Simple numeric ID: ‘1’, ‘2’, ‘3’
The ID of the slot being changed
Human-readable description of the change
Why this change addresses the issues
Finding IDs this change addresses: [‘1’, ‘2’]
Typed warnings with optional change references
object
Change IDs this warning relates to
Overall confidence level based on signal quality/quantity
IDs of signals that were analyzed for this synthesis
ID of the job processing this synthesis
Error message if synthesis generation failed
ISO 8601 timestamp when the synthesis was created
ID of the user who triggered the synthesis
ISO 8601 timestamp when synthesis generation started
ISO 8601 timestamp when synthesis generation completed (success or failure)
ISO 8601 timestamp when the synthesis was approved and applied
ID of the user who approved and applied the synthesis
Bad Request - Validation error or invalid input
object
Unauthorized - Authentication required or invalid token
object
Forbidden - Insufficient permissions
object
Not Found - Resource does not exist