API Reference
The Remyx REST API is available athttps://engine.remyx.ai/api/v1.0. All endpoints require a Bearer token in the Authorization header.
Create a named API key at Account > API Access in the Remyx app, or at studio.remyx.ai/account. Each route is gated by scopes; see Authentication below.
Experiments
Manage experiments, track outcomes, and log decisions.List Experiments
Response: Array of experiment objects with all ExperimentOps fields.
Get Experiment
source_type, source_ref, hypothesis, target_metric, observed_delta, delta_confidence, decision, tags, project_id, project_name, launch_context, ab_test_config, ab_test_results, and linked resources.
Update Experiment
Implementation
Manage the experiment implementation pipeline — context assembly, implementation runs, and status tracking.Get Experiment Context
Get Reference Implementation
List Actionable Experiments
Returns experiments that have a
launch_context but no PR yet — ready for implementation.
Run Implementation
202 Accepted with a task reference.
Get Implementation Status
pipeline_status, pr_url, pr_status, and timing information.
Report Implementation Result
Research Interests
Manage your Research Interests — the context that drives personalized resource recommendations.Two interests surfaces exist. The token/programmatic API uses
/interests (documented here). The session/web app uses /research-interests. When calling with an API key, always use /interests.List Interests
name, context, daily_count, is_active.
Create Interest
Get Interest
experiment_history field, a bullet list summarizing the experiments linked to this interest.
Update Interest
context invalidates the recommendation pool and triggers re-ranking.
Delete Interest
Toggle Interest
is_active status without deleting the interest or its history.
Provision an Interest
rmxa_) key into repo secrets, and prepares the continuous-experimentation loop. Optional agent in the body (claude — the default — / codex / backboard) picks the coding agent the rendered workflow runs; it’s validated against the interest’s model provider up front, so an impossible pair is a 400 rather than a 200 that renders the wrong agent. Requires the provisioning:write scope. Returns 202 Accepted with a task_id.
provisioning:write scope.
Score Candidates
Refit Preference Model
202 Accepted with a task reference.
Recommendations
Get personalized resource recommendations based on your Research Interests.List Recommendations
Response: Array of recommended resources with titles, abstracts, relevance scores, and links.
Get Digest
Response: Structured digest grouped by Research Interest.
Refresh Recommendations
Returns
202 Accepted with a task reference for polling.
Poll Refresh Status
Search
Search across research assets with hybrid retrieval.Search Assets
Response: Array of matching assets with titles, abstracts, categories, Docker availability, and relevance scores.
Get Asset Details
List Recent Assets
Get Asset Statistics
Integrations
Manage OAuth connections to external tools (GitHub, Linear, Jira).List Providers
Get OAuth URL
Exchange OAuth Code
List Connections
Check Connection Status
Disconnect Provider
Get OAuth Token
user_id query param for service tokens.
Identity Resolution
Outrider agents
The agent plane: run telemetry, the fleet report, the inbox, and dispatch. Base path/api/v1.0/outrider. These endpoints back the studio’s Agents, Reports, and Inbox views and the MCP fleet tools, so what you read here matches the app exactly. Visibility is scoped to your own agents.
Runs & telemetry
POST /runs is called by the Outrider action itself (authenticated with the repo’s provisioned agent key) to report per-run telemetry: cost identity (backend, model, tokens, cost basis), selection audit (pool sizes, per-candidate rejections, reasoning excerpt), routing and gate outcomes, chain phases, and file-touch lists. Idempotent on run_id.
GET /runs lists your runs; params repo, limit (default 20, max 100), and include=selection to add the selection audit trail.
{repo, run_id} → cause, evidence bullets, suggested next step. Cached per run.
Fleet report, activity, and inbox
/agents/report— the fleet report: headline, KPIs, per-agent timelines and terminal states, findings, deliverable pipeline, chronology.since/until(YYYY-MM-DD) andrepos(intersected with your own footprint — it can only narrow) scope it./agents/activity— one agent’s runs, events, directions, and summary; backs Agent detail./agents/inbox— the derived Inbox;inbox/dismissarchives{id}or{ids: […]}(orundo: true),inbox/digestgenerates-once-and-persists the TLDR digest for a PR/Issue{href}, andartifact/evidencereturns the deterministic gate/fidelity facts for one artifact./agents/refresh— force a re-fetch of agent state from GitHub ({full: false}for a delta)./agents/chat— one stateless turn of run-grounded chat:{repo, messages[], focus_run_id?}; context is assembled server-side, and the transcript carries no privileged access.
Installations & dispatch
/installations— one row per provisioned agent, including paused (revoked) ones./installations/<id>/revoke— pause an agent: marks the installation revoked and revokes its agent key, so the next run fails auth immediately./trigger— the API twin ofremyxai outrider trigger:{repo, pin_arxiv?, interest_id?, ref?, agent?, provider?, model?, start_from_ref?, lead_content?, test_integration_policy?, fidelity_policy?}.agent(claude/codex/backboard) is validated againstproviderbefore dispatch — an impossible pair is a400, and the credential the run is armed with follows the pair rather than whatever key the account has connected. Dispatches via the remyx[bot] App token; returns409 {pool_building: true}while a fresh interest’s candidate pool is still building./run-status— the latest run for a repo, live from GitHub (no webhook lag), enriched with its outcome kind and artifact URL.
Outcome tracking (merge/close of the artifacts a run opened) is webhook-driven — it flows back through the GitHub webhooks rather than being polled here.
GitHub App & Provisioning
Endpoints for installing the Remyx GitHub App and provisioning repos for automated discovery PRs (Outrider). The per-interest provisioning endpoints live under Research Interests.Get Install URL
Get Installation
Returns the GitHub App installation that covers the given repo (if any).
Get Installation Token
github:write.
Fork a Repo
branches from the source network — this is what the Quickstart’s set-example track uses to warm-start curated drafts. Idempotent.
Eval Environments
Build and run containerized evaluation environments. Base path/api/v1.0/eval-env.
Builds
POST /builds starts a new environment build. GET /builds/<id> returns build status; /context returns the assembled build context; POST /builds/<id>/report reports the build result back from a worker.
Runs
Templates
POST /templates/<id>/lock freezes a template so it can’t be edited once it’s in use.
Result Webhooks
webhooks/results for the generic path and webhooks/modal/results for Modal-hosted runs.
Authentication
All API requests require an opaque API key passed as a Bearer token:
Each key carries a set of scopes that gate which routes it can call (a route returning
403 means the key lacks the required scope). See API Scopes for the full catalog, presets, and which surface needs what.
Create and manage named keys at Account > API keys in the Remyx app, or programmatically:
rmxa_) key pauses the agent that uses it. See Account & keys.