Quick example
Client construction
{ apiKey: process.env.EIGENPAL_API_KEY } explicitly.
Metadata
client.auth.check
GET /api/v1/auth/check
Check API key identity
Return the tenant, user, API key, and scope represented by the current API key.
Response
Automations
client.automations.list
GET /api/v1/automations
List automations
Returns workflows and agents through one runnable automation collection. Use type to narrow to workflows or agents, and search to find automations by slug, name, or description.
Query parameters
Response
client.automations.get
GET /api/v1/automations/:id
Get automation
Get one runnable workflow or agent automation by id or typed alias.
Path parameters
Response
client.automations.sync
POST /api/v1/automations/:id/sync
Sync automation from latest Git release
Reconciles automation registry metadata and trigger projections from the latest Git source release. This operation is idempotent for unchanged source state: repeated calls against the same latest release leave the same automation registry state and may repeat the same warnings. Requires a Bearer API token for the organization and a user-backed API key. It does not publish source; it reads the already-published latest release manifest. Versioned targets are rejected with 400, missing organization/source/release/manifest state returns 404, invalid manifests return 400, and provider or persistence failures return 5xx.
Path parameters
Response
client.automations.triggers
GET /api/v1/automations/:id/triggers
Get automation triggers
Read trigger state for a workflow or agent automation. Trigger mutation is not public v1.
Path parameters
Response
client.automations.versions
GET /api/v1/automations/:id/versions
List automation versions
List versions for a workflow or agent automation through one read-only route.
Path parameters
Response
Evaluation
client.automations.dataset.export
GET /api/v1/automations/:id/dataset/export
Export automation dataset
Download the automation dataset as a ZIP archive. The archive uses the examples/<name>/input and examples/<name>/expected folder convention, so it can be re-imported into another automation or environment.
Path parameters
Query parameters
Response
client.automations.dataset.import
POST /api/v1/automations/:id/dataset/import
Import automation dataset
Import a dataset ZIP archive using the examples/<name>/input and examples/<name>/expected folder convention. Use mode=append for additive imports or mode=replace to replace the dataset.
Path parameters
Response
client.automations.evaluators.get
GET /api/v1/automations/:id/evaluators
Get evaluators
Fetch the evaluator configuration for an automation. Evaluators produce automated score results, which are separate from human review verdicts.
Path parameters
Response
client.automations.evaluators.update
PUT /api/v1/automations/:id/evaluators
Replace evaluators
Replace the evaluator YAML for an automation. The submitted YAML is validated before it becomes the source for future experiment scores.
Path parameters
Request body
client.automations.examples.list
GET /api/v1/automations/:id/examples
List dataset examples
List dataset examples for one automation. Examples contain input, expected output, expected files, metadata, and optional overrides used by evaluation runs.
Path parameters
Query parameters
Response
client.automations.examples.create
POST /api/v1/automations/:id/examples
Create dataset example
Create one dataset example from JSON fields. Use dataset import for archive-based uploads and file-bearing examples.
Path parameters
Request body
client.automations.examples.get
GET /api/v1/automations/:id/examples/:exampleId
Get dataset example
Fetch one dataset example, including input, expected output, expected files, metadata, and overrides.
Path parameters
Response
client.automations.examples.update
PATCH /api/v1/automations/:id/examples/:exampleId
Update dataset example
Partially update a dataset example. Omitted fields are preserved; pass null for nullable fields to clear them.
Path parameters
Request body
client.automations.examples.delete
DELETE /api/v1/automations/:id/examples/:exampleId
Delete dataset example
Delete one dataset example from the automation dataset. This removes the example from future experiments.
Path parameters
Response
client.automations.examples.expectedFiles.list
GET /api/v1/automations/:id/examples/:exampleId/expected
List expected files
List files stored under the expected folder for one automation dataset example.
Path parameters
Response
client.automations.examples.expectedFiles.create
POST /api/v1/automations/:id/examples/:exampleId/expected
Upload expected files
Upload one or more files into the expected folder for an automation dataset example. Use $file references such as expected/result.pdf from expected JSON to compare file outputs.
Path parameters
Response
client.automations.examples.expectedFile.get
GET /api/v1/automations/:id/examples/:exampleId/expected/:path
Download expected dataset file
Download one expected file attached to an automation dataset example.
Path parameters
Response
client.automations.examples.expectedFile.update
PATCH /api/v1/automations/:id/examples/:exampleId/expected/:path
Rename expected file
Rename one expected file attached to an automation dataset example. The parent folder is preserved.
Path parameters
Request body
client.automations.examples.expectedFile.delete
DELETE /api/v1/automations/:id/examples/:exampleId/expected/:path
Delete expected file
Delete one file from an automation dataset example expected folder.
Path parameters
client.automations.examples.inputFiles.list
GET /api/v1/automations/:id/examples/:exampleId/input
List input files
List files stored under the input folder for one automation dataset example.
Path parameters
Response
client.automations.examples.inputFiles.create
POST /api/v1/automations/:id/examples/:exampleId/input
Upload input files
Upload one or more files into the input folder for an automation dataset example. Use $file references such as input/invoice.pdf from the example input JSON to consume them.
Path parameters
Response
client.automations.examples.inputFile.get
GET /api/v1/automations/:id/examples/:exampleId/input/:path
Download input file
Download one file from an automation dataset example input folder.
Path parameters
Response
client.automations.examples.inputFile.update
PATCH /api/v1/automations/:id/examples/:exampleId/input/:path
Rename input file
Rename one input file attached to an automation dataset example. The parent folder is preserved.
Path parameters
Request body
client.automations.examples.inputFile.delete
DELETE /api/v1/automations/:id/examples/:exampleId/input/:path
Delete input file
Delete one file from an automation dataset example input folder.
Path parameters
client.automations.examples.run
POST /api/v1/automations/:id/examples/:exampleId/run
Run dataset example
Start an asynchronous run using the input from one dataset example. Poll GET /api/v1/runs/:id for completion and use run scores or review endpoints to review the result.
Path parameters
Response
client.automations.experiments.list
GET /api/v1/automations/:id/experiments
List experiments
List experiment batches for one automation. Each experiment runs selected dataset examples and records automated evaluator scores.
Path parameters
Query parameters
Response
client.automations.experiments.create
POST /api/v1/automations/:id/experiments
Create experiment
Start an asynchronous experiment batch for one automation. Omit examples to run the full dataset, or pass specific example ids to run a subset.
Path parameters
Request body
client.automations.experiments.get
GET /api/v1/automations/:id/experiments/:experimentId
Get experiment
Fetch one experiment batch with its run summaries and evaluator results grouped by run id.
Path parameters
Response
client.automations.experiments.cancel
POST /api/v1/automations/:id/experiments/:experimentId/cancel
Cancel experiment
Request cancellation for an experiment batch. Already-completed runs remain recorded; queued or running work is cancelled when possible.
Path parameters
Response
client.automations.experiments.export
GET /api/v1/automations/:id/experiments/:experimentId/export
Export experiment eval results
Download eval result rows for a single experiment batch as CSV or JSON.
Path parameters
Query parameters
Response
client.automations.experiments.exportAll
GET /api/v1/automations/:id/experiments/export
Export all experiment eval results
Download every eval result row for an automation as CSV or JSON.
Path parameters
Query parameters
Response
client.automations.experiments.createStream
POST /api/v1/automations/:id/experiments/stream
Create automation experiment with NDJSON progress
Starts a batch eval experiment for workflow or agent automations and streams per-run completion events as NDJSON.
Path parameters
Request body
client.experiments.resolve
GET /api/v1/experiments/:experimentId
Resolve experiment by id
Returns the owning automation for an experiment batch id. Used when callers only know the experiment id.
Path parameters
Response
client.runs.scores.list
GET /api/v1/runs/:id/scores
List run evaluator scores
List automated evaluator results for one run. Use score for evaluator output and run reviews for human verdicts.
Path parameters
Response
Reviews
client.automations.reviews.health
GET /api/v1/automations/:id/reviews/health
Get automation review health
Aggregates reviewed correctness, review coverage, bucketed counts, and rolling-window confidence for one automation. Prefer this endpoint for single-automation monitoring dashboards.
Path parameters
Query parameters
Response
client.runs.promote
POST /api/v1/runs/:id/promote
Promote run to example
Turn a reviewed run into a dataset example. The new example uses the run input and any corrected output/files stored through the review endpoints.
Path parameters
Request body
client.runs.reviews.get
GET /api/v1/runs/:id/reviews
Get run review
Returns review metadata and corrections for a run. Corrected files are listed at GET /runs/{id}/reviews/expected; embed review + expected artifacts with GET /runs/{id}?expand=execution.
Path parameters
Response
client.runs.reviews.update
PUT /api/v1/runs/:id/reviews
Update run review
Create or replace review metadata for a run.
Path parameters
Request body
client.runs.reviews.clear
DELETE /api/v1/runs/:id/reviews
Clear run review
Deletes review metadata, corrections, and corrected files for the run.
Path parameters
Response
client.runs.reviews.listExpected
GET /api/v1/runs/:id/reviews/expected
List corrected files
Returns corrected artifact files attached to the run review. Review metadata and corrected JSON output live at GET /runs/{id}/reviews.
Path parameters
Response
client.runs.reviews.copyOutputToExpected / uploadExpected
POST /api/v1/runs/:id/reviews/expected
Add corrected file
Attach one corrected file to a run review. Send multipart/form-data with file and optional name to upload a local file, or JSON with outputFileName and optional expectedName to copy an existing run output file.
Path parameters
Request body
client.runs.reviews.downloadExpected
GET /api/v1/runs/:id/reviews/expected/:filename
Download corrected artifact file
Downloads one corrected artifact file attached to the run review. Use the filename returned by the corrected-output collection endpoint.
Path parameters
Response
client.runs.reviews.renameExpected
PATCH /api/v1/runs/:id/reviews/expected/:filename
Rename corrected artifact file
Renames one corrected artifact file attached to the run review.
Path parameters
Request body
client.runs.reviews.deleteExpected
DELETE /api/v1/runs/:id/reviews/expected/:filename
Delete corrected artifact file
Deletes one corrected artifact file attached to the run review.
Path parameters
Files
client.files.upload
POST /api/v1/files
Upload file
Upload a reusable file that can later be referenced by run inputs or dataset examples.
Response
client.files.get
GET /api/v1/files/:id
Get file metadata
Get metadata for a reusable uploaded file.
Path parameters
Response
client.files.delete
DELETE /api/v1/files/:id
Delete file
Delete a reusable uploaded file. Historical run and dataset snapshots are separate artifacts.
Path parameters
Response
client.files.download
GET /api/v1/files/:id/content
Download file content
Download bytes for a reusable uploaded file.
Path parameters
Runs
client.runs.list
GET /api/v1/runs
List runs
List workflow and agent runs with cursor pagination.
Query parameters
Response
client.run
POST /api/v1/runs
Start a run
Start a run. Send JSON or multipart/form-data.
Query parameters
Request body
client.runs.get
GET /api/v1/runs/:id
Get a run
Fetch one run by id. By default this returns core metadata plus terminal output/error fields. Pass ?expand=input,usage,execution,debug to include detailed sub-objects; expand=execution is also where embedded review and expected artifacts appear.
Path parameters
Query parameters
Response
client.runs.artifacts.list
GET /api/v1/runs/:id/artifacts
List run artifacts
Returns a JSON list of downloadable artifact paths for a run. Pass zip=1 to switch the response to a ZIP download containing output files.
Path parameters
Query parameters
Response
client.runs.artifacts.download
GET /api/v1/runs/:id/artifacts/:path
Download run artifact
Download one artifact by path.
Path parameters
client.runs.cancel
POST /api/v1/runs/:id/cancel
Cancel run
Cancel a queued run or request cancellation of an in-flight run.
Path parameters
Response
client.runs.events
GET /api/v1/runs/:id/events
List run events
List a stable chronological lifecycle timeline for a run.
Path parameters
Response
client.rerun
POST /api/v1/runs/:id/rerun
Retry run
Start a new run using the source run input. By default the retry uses the latest automation version; pass version=original to pin the same source version as the original run.
Path parameters
Query parameters
Response
client.runs.steps
GET /api/v1/runs/:id/steps
List run steps
List workflow steps or an agent-compatible execution step summary for a run.
Path parameters
Response
client.runs.trace.get
GET /api/v1/runs/:id/trace
Get run trace
Return low-level execution trace events for debugging one run. Workflow runs expose observability phases or step records; agent runs expose parsed trace.jsonl events. The shape is intentionally extensible, but common fields are documented.
Path parameters
Response
client.runs.usage
GET /api/v1/runs/:id/usage
Get run usage
Get token, credit, duration, and execution usage for a run.
Path parameters
Response
Errors
Every non-2xx response throws a typed exception:
The thrown exception carries
status, requestId, envelope (raw ApiErrorEnvelope), and (for 429) retryAfter.