Autoresearch
For instructions on how to authenticate to use this endpoint, see API overview.
Endpoints
GET | |
GET | |
PATCH | |
DELETE | |
POST | |
GET | |
POST | |
POST | |
POST |
Retrieve autoresearch training runs history
Return recent completed training runs and their iteration trails so a new run can learn from what was already tried. Scoped to this pipeline first, then same-target sibling pipelines on the team. Read this before iterating to reuse winning features and avoid repeating discarded approaches.
Required API key scopes
autoresearch:readPath parameters
- pipeline_idstring
Query parameters
- limitintegerDefault:
5
Response
Example request
GET /api /projects /:project_id /autoresearch /:pipeline_id /training_runs /historyExample response
Status 200 Prior completed training runs with their iteration trails, for orienting a new run.
Retrieve autoresearch training runs history
Return recent completed training runs and their iteration trails so a new run can learn from what was already tried. Scoped to this pipeline first, then same-target sibling pipelines on the team. Read this before iterating to reuse winning features and avoid repeating discarded approaches.
Required API key scopes
autoresearch:readPath parameters
- pipeline_idstring
Query parameters
- limitintegerDefault:
5
Response
Example request
GET /api /projects /:project_id /autoresearch /:pipeline_id /training_runs /historyExample response
Status 200 Prior completed training runs with their iteration trails, for orienting a new run.
Retrieve autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:readPath parameters
- idstring
Response
Example request
GET /api /projects /:project_id /autoresearch /:idExample response
Status 200
Retrieve autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:readPath parameters
- idstring
Response
Example request
GET /api /projects /:project_id /autoresearch /:idExample response
Status 200
Update autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:writePath parameters
- idstring
Request parameters
- namestring
- descriptionstring
- target_eventstring
- target_definition
- horizon_daysinteger
- training_lookback_daysinteger
- training_populationobject
- inference_populationobject
- cadence_daysinteger
- iteration_budgetinteger
- iterations_per_runinteger
- research_interval_days
- agent_modelstring | null
- agent_reasoning_effortstring | null
- success_aucnumber | null
- plateau_iterationsinteger
- output_person_propertystring
- write_person_propertyboolean
Response
Example request
PATCH /api /projects /:project_id /autoresearch /:idExample response
Status 200
Update autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:writePath parameters
- idstring
Request parameters
- namestring
- descriptionstring
- target_eventstring
- target_definition
- horizon_daysinteger
- training_lookback_daysinteger
- training_populationobject
- inference_populationobject
- cadence_daysinteger
- iteration_budgetinteger
- iterations_per_runinteger
- research_interval_days
- agent_modelstring | null
- agent_reasoning_effortstring | null
- success_aucnumber | null
- plateau_iterationsinteger
- output_person_propertystring
- write_person_propertyboolean
Response
Example request
PATCH /api /projects /:project_id /autoresearch /:idExample response
Status 200
Delete autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:writePath parameters
- idstring
Example request
DELETE /api /projects /:project_id /autoresearch /:idExample response
Status 204 The pipeline and its rows were deleted.
Status 400 A training run is in progress for this pipeline.
Status 404 The pipeline does not exist or is archived.
Delete autoresearch
Manage autoresearch prediction pipelines.
A pipeline defines a target event, population, and horizon. The autoresearch training loop finds the best predictive recipe; the inference workflow scores users daily and emits autoresearch_prediction events.
Required API key scopes
autoresearch:writePath parameters
- idstring
Example request
DELETE /api /projects /:project_id /autoresearch /:idExample response
Status 204 The pipeline and its rows were deleted.
Status 400 A training run is in progress for this pipeline.
Status 404 The pipeline does not exist or is archived.
Create autoresearch archive
Soft-delete a pipeline. Stops daily scoring and training. Predictions and metrics are preserved. When write_person_property is on, a cleanup run removes output_person_property from the people it scored. Refused while a training run is in progress.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /archiveExample response
Status 200 The pipeline after archiving.
Status 400 A training run is in progress for this pipeline.
Status 404 The pipeline does not exist or is archived.
Create autoresearch archive
Soft-delete a pipeline. Stops daily scoring and training. Predictions and metrics are preserved. When write_person_property is on, a cleanup run removes output_person_property from the people it scored. Refused while a training run is in progress.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /archiveExample response
Status 200 The pipeline after archiving.
Status 400 A training run is in progress for this pipeline.
Status 404 The pipeline does not exist or is archived.
Retrieve autoresearch online performance
Return the realized metrics online validation recorded for each model on each validated prediction date, newest date first. Each row has realized AUC with a 95% interval, Brier score, calibration error, quantile calibration bins, mean predicted probability against the base rate, lift, and the model's role when it emitted and now. The rows come from the validation runs, so a former champion that a promotion archived keeps its history. Read-only; it runs no queries.
Required API key scopes
autoresearch:readPath parameters
- idstring
Query parameters
- limitintegerDefault:
60
Response
Example request
GET /api /projects /:project_id /autoresearch /:id /online_performanceExample response
Status 200 Realized metrics per model per validated prediction date, newest date first.
Status 404 The pipeline does not exist.
Retrieve autoresearch online performance
Return the realized metrics online validation recorded for each model on each validated prediction date, newest date first. Each row has realized AUC with a 95% interval, Brier score, calibration error, quantile calibration bins, mean predicted probability against the base rate, lift, and the model's role when it emitted and now. The rows come from the validation runs, so a former champion that a promotion archived keeps its history. Read-only; it runs no queries.
Required API key scopes
autoresearch:readPath parameters
- idstring
Query parameters
- limitintegerDefault:
60
Response
Example request
GET /api /projects /:project_id /autoresearch /:id /online_performanceExample response
Status 200 Realized metrics per model per validated prediction date, newest date first.
Status 404 The pipeline does not exist.
Create autoresearch pause
Pause daily scoring and training on a running pipeline. The pipeline can be resumed later. A training run already in progress finishes and can promote a new champion, but the pipeline stays paused and scores nobody until it is resumed.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /pauseExample response
Status 200 The pipeline after pausing.
Status 400 The pipeline is not running.
Status 404 The pipeline does not exist or is archived.
Create autoresearch pause
Pause daily scoring and training on a running pipeline. The pipeline can be resumed later. A training run already in progress finishes and can promote a new champion, but the pipeline stays paused and scores nobody until it is resumed.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /pauseExample response
Status 200 The pipeline after pausing.
Status 400 The pipeline is not running.
Status 404 The pipeline does not exist or is archived.
Create autoresearch resume
Resume a paused pipeline. Daily scoring and training will restart on the next cadence tick.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /resumeExample response
Status 200 The pipeline after resuming.
Status 400 The pipeline is not paused.
Status 404 The pipeline does not exist or is archived.
Create autoresearch resume
Resume a paused pipeline. Daily scoring and training will restart on the next cadence tick.
Required API key scopes
autoresearch:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /resumeExample response
Status 200 The pipeline after resuming.
Status 400 The pipeline is not paused.
Status 404 The pipeline does not exist or is archived.
Create autoresearch score
Start scoring the inference population using the champion model. Scoring runs in the background: it emits autoresearch_prediction events for each scored user and sets the pipeline's output_person_property on each scored person. The response returns at once with the running run. A second request while a run is running returns that run and starts nothing. The daily Temporal inference workflow also scores each pipeline on its cadence.
Required API key scopes
autoresearch:writequery:readperson:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /scoreExample response
Status 200 The inference run, with status running. If a run for the pipeline is already running, this is that run. Poll the run until its status is completed or failed.
Status 400 The pipeline has no champion model or is paused, or an action target needs the action:read scope.
Status 404 The pipeline does not exist or is archived.
Create autoresearch score
Start scoring the inference population using the champion model. Scoring runs in the background: it emits autoresearch_prediction events for each scored user and sets the pipeline's output_person_property on each scored person. The response returns at once with the running run. A second request while a run is running returns that run and starts nothing. The daily Temporal inference workflow also scores each pipeline on its cadence.
Required API key scopes
autoresearch:writequery:readperson:writePath parameters
- idstring
Response
Example request
POST /api /projects /:project_id /autoresearch /:id /score










