Supported combination: platform 2026.10.1rc17 · tooling 2026.10.1rc17.
Reference

API integration

Use the same API as the operator CLI for external automation.

The operator CLI uses the server's HTTP API. Integrations receive the same authorization, revision checks, execution policy enforcement, and retained evidence as interactive users.

For downloadable specifications, discovery, and compatibility rules, see Contracts and compatibility.

Connect and authenticate

Use HTTPS and trust the server's certificate. POST /v1/login accepts a username/password and returns a token and expiry. Authenticated requests use Authorization: Bearer TOKEN; POST /v1/logout revokes the session. Deliver credentials through your automation environment rather than committing them in scripts.

The running server exposes its generated OpenAPI document at /openapi.json. Use that document for exact schemas and response fields for the deployed platform version. The website's rendering fixtures are not an API contract.

Main endpoints

Method and pathPurpose
GET /healthHealth and server version
POST /v1/deploymentsDeploy a Definition using an expected revision and idempotency key
GET /v1/pyplinesList installed Pyplines
GET /v1/pyplines/{environment}/{name}Inspect an installed revision
GET /v1/pyplines/{environment}/{name}/historyList revisions
POST /v1/runsStart a Run with revision, inputs, and idempotency key
GET /v1/runsList Runs
GET /v1/runs/{id}Inspect state and available execution evidence
GET /v1/runner-poolsList runner pools (administrator)
POST /v1/runner-poolsCreate a pool with a name field (administrator)
GET /v1/runs/{id}/historyRead Run events
GET /v1/runs/{id}/attemptsRead execution attempts
GET /v1/runs/{id}/logs/{step}Read retained non-private logs
POST /v1/runs/{id}/approveApprove prepared work
POST /v1/runs/{id}/retryRetry a settled blocked step
POST /v1/runs/{id}/skipSkip with policy permission and a reason
POST /v1/runs/{id}/cancelRequest cancellation

Integrate external triggers

Pyplines has no built-in scheduler or webhook receiver. An external scheduler or incident system can authenticate, start a Run, and observe its ID. Persist the Run ID and request key before retrying an uncertain response. A new key can create new work; a polling timeout does not cancel existing work.

Decide explicitly how your integration handles awaiting_approval, blocked, uncertain, and cancelling. Do not equate request acceptance with successful completion. See Run states.

The Python distribution pyplines[client] provides the API client used by the operator CLI. Choose it from the supported tooling release. The SDK reference primarily covers authoring Actions; Action handlers are not required for API integration.