GenHealth Workflow Developer API
Create, version, audit, publish, run, and maintain UMPA workflows directly against the core ETL API. The capability and action-discovery operations are optimized for AI agents.
Build workflow automations
Discover supported integrations and actions, validate canonical workflow JSON, manage drafts and immutable versions, inspect graphs, publish viable workflows, and operate organization-scoped workflow runs.
Scope referral intake, clearance, authorization, and recurring care using the right system contracts.
Explore Build and run your first workflowUse REST or MCP, validate a synthetic graph, publish it, and inspect an idempotent run.
Explore Discover capabilitiesInspect controls, node types, expressions, integrations, and action schemas.
Explore Find workflow functionsSearch the actions available for use in a workflow definition.
Explore Create workflowsCreate organization-scoped workflow records and validate their JSON first.
Explore Publish and runPublish immutable versions and start idempotent workflow runs.
ExploreWorkflow runs, integrations, and events
These terms describe what starts a workflow, how it works with other systems, and how its step attempts are modeled.
- Workflow run
- One run begins each time a workflow is triggered—by a person, schedule, API request, file upload, or webhook—and ends when it completes, fails, or is canceled. Branches, waits, loops, and step retries remain part of that run; a child workflow starts a separate run.
- Integration
- An integration connects a workflow to another system or exposes a GenHealth capability. It provides actions—tools such as finding a record, extracting data, or sending an update—that can be used as workflow steps. Some integrations require a configured connection or credentials.Browse available integrations and actions
- Modeled internal event
- A planning unit for work performed inside a run. In the historical benchmark, each event represents one successful or failed attempt to execute a workflow step, after replay duplicates are removed. Loops and retries can add events; an event does not map one-to-one to a visible block, tool call, or external request.
Contract summary
| Property | Value |
|---|---|
| OpenAPI | 3.1.0 |
| API version | 1.0.0 |
| Operations | 37 |
| Component schemas | 62 |
| Authentication | HTTP bearer token with operation-specific workflow scopes |
Organization isolation
Workflow definitions, versions, graphs, webhook endpoints, and runs are resolved within the organization carried by the authenticated credential. An identifier from another organization does not grant access.
Operations
Workflow Developer API
/developer/v1/actionsGETGet Workflow Action/developer/v1/actions/{handler}GETList Workflow Action Field Options/developer/v1/actions/{handler}/fields/{field}/optionsGETGet Workflow Capabilities/developer/v1/capabilitiesGETGet Workflow Capabilities V2/developer/v1/capabilities/v2GETList Workflow Integration Connections/developer/v1/integration-connectionsGETList Workflow Integrations/developer/v1/integrationsPOSTCancel Developer Workflow Run/developer/v1/runs/{run_id}/cancelGETList Developer Workflows/developer/v1/workflowsPOSTCreate Developer Workflow/developer/v1/workflowsPOSTImport Developer Workflow/developer/v1/workflows/importPOSTValidate Workflow Definition/developer/v1/workflows/validateDELETEDelete Developer Workflow/developer/v1/workflows/{definition_id}GETGet Developer Workflow/developer/v1/workflows/{definition_id}PATCHUpdate Developer Workflow/developer/v1/workflows/{definition_id}POSTAudit Workflow/developer/v1/workflows/{definition_id}/auditDELETEDiscard Developer Workflow Draft/developer/v1/workflows/{definition_id}/draftPOSTCreate Developer Workflow Draft/developer/v1/workflows/{definition_id}/draftPOSTReplace Developer Workflow Draft From Json/developer/v1/workflows/{definition_id}/draft/from-jsonGETExport Developer Workflow/developer/v1/workflows/{definition_id}/exportGETGet Workflow Graph/developer/v1/workflows/{definition_id}/graphPUTReplace Workflow Graph/developer/v1/workflows/{definition_id}/graphPOSTInsert Workflow Node After/developer/v1/workflows/{definition_id}/nodes/afterPOSTInsert Workflow Node Before/developer/v1/workflows/{definition_id}/nodes/beforeDELETEDelete Workflow Node/developer/v1/workflows/{definition_id}/nodes/{node_id}GETGet Workflow Node Details/developer/v1/workflows/{definition_id}/nodes/{node_id}PATCHUpdate Workflow Node/developer/v1/workflows/{definition_id}/nodes/{node_id}GETGet Workflow Node Context/developer/v1/workflows/{definition_id}/nodes/{node_id}/contextGETGet Workflow Outline/developer/v1/workflows/{definition_id}/outlinePOSTPublish Developer Workflow/developer/v1/workflows/{definition_id}/publishGETList Workflow Runs Safe/developer/v1/workflows/{definition_id}/runsPOSTRun Developer Workflow/developer/v1/workflows/{definition_id}/runsGETRead Workflow Run Node Shape/developer/v1/workflows/{definition_id}/runs/{run_id}/nodes/{node_id}GETList Developer Workflow Versions/developer/v1/workflows/{definition_id}/versionsGETGet Developer Workflow Version/developer/v1/workflows/{definition_id}/versions/{version_id}POSTRevert Developer Workflow Version/developer/v1/workflows/{definition_id}/versions/{version_id}/revertGETGet Developer Workflow Webhook Endpoint/developer/v1/workflows/{definition_id}/webhook-endpoint