synth_ai.research.runs
Alpha
client.research.runs — launch and lifecycle for Managed Research runs.
Classes
ResearchRunHandle
Run-scoped readouts and lifecycle (public hero session type).
Prefer ResearchRunSession in type hints — RunHandle is not part of
the public hero surface.
Methods:
progress_snapshot
snapshots.get(detail=...).
full_progress
snapshots.get(detail='full')).
stream_transcript
work_product_content
download_workspace_archive
workspace.download.
list_artifacts
artifacts.list.
ResearchRunsAPI
Public Research run methods (alpha must-have).
Methods:
runbook_presets
runs.create.
check_preflight
projects.setup.prepare to surface blockers (missing repo,
secrets, budget caps) without creating a run record.
Returns:
- Preflight payload with
allowedflag and structured denials.
launch_preflight
check_preflight.
create
objective is provided, starts a run with that primary message and
returns a :class:ResearchRunHandle. Otherwise triggers a configured run
and may return a wire dict (legacy drivers).
Args:
project_id: Owning project id.objective: Primary operator message for the run (preferred launch path).
- class:
ResearchRunHandlewhenobjectiveis set; otherwise a wire dict.
start
create).
launch
create with a required objective.
trigger
start_run
create).
get
(project_id, run_id), (run_id,) when project is implied,
or keyword forms. Prefer nested readouts on the returned handle:
handle.usage.get(), handle.snapshots.get(), handle.transcript.get().
open
get).
state
public_state
list
list_active
wait
timeout: Max seconds to wait (Nonewaits indefinitely).poll_interval: Seconds between status polls.raise_if_failed: Raise when the run ends in a failed state.
- Final
ResearchRunpublic state model.
transcript
handle.transcript.get).
stream_events
handle.events.stream).
resource_limits
progress_toward_resource_limits
stop
pause
resume
results
logs
logs_page
SyncPagewithitems,next_cursor, andhas_morefor- cursor-based iteration without hand-parsing wire payloads.