{"openapi":"3.1.0","info":{"title":"GenHealth Workflow Developer API","description":"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.","version":"1.0.0"},"paths":{"/developer/v1/capabilities":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Capabilities","description":"Describe graph JSON, expressions, node controls, lifecycle, and safety status.","operationId":"get_workflow_capabilities","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowCapabilityManifest"}}}}},"security":[{"HTTPBearer":[]}],"x-required-scope":"workflow:read"}},"/developer/v1/actions":{"get":{"tags":["Workflow Developer API"],"summary":"Search Workflow Actions","description":"Search tenant-permitted platform actions; connection setup is reported separately.","operationId":"search_workflow_actions","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Terms such as Brightree patient search or Niko order.","title":"Query"},"description":"Terms such as Brightree patient search or Niko order."},{"name":"group","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional partial integration group name.","title":"Group"},"description":"Optional partial integration group name."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":25,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowActionSearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/integrations":{"get":{"tags":["Workflow Developer API"],"summary":"List Workflow Integrations","description":"List tenant-permitted public integrations; this does not assert connection setup.","operationId":"list_workflow_integrations","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowIntegrationCatalogResponse"}}}}},"security":[{"HTTPBearer":[]}],"x-required-scope":"workflow:read"}},"/developer/v1/integration-connections":{"get":{"tags":["Workflow Developer API"],"summary":"List Workflow Integration Connections","description":"Report whether each public integration has credentials, without exposing them.","operationId":"list_workflow_integration_connections","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowIntegrationConnectionCatalogResponse"}}}}},"security":[{"HTTPBearer":[]}],"x-required-scope":"workflow:read"}},"/developer/v1/actions/{handler}":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Action","description":"Return the complete first-pass schema for one exact public action handler.","operationId":"get_workflow_action","security":[{"HTTPBearer":[]}],"parameters":[{"name":"handler","in":"path","required":true,"schema":{"type":"string","title":"Handler"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowActionCapability"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/actions/{handler}/fields/{field}/options":{"get":{"tags":["Workflow Developer API"],"summary":"List Workflow Action Field Options","description":"Resolve dynamic choices for one action field without exposing credentials.","operationId":"list_workflow_action_field_options","security":[{"HTTPBearer":[]}],"parameters":[{"name":"handler","in":"path","required":true,"schema":{"type":"string","title":"Handler"}},{"name":"field","in":"path","required":true,"schema":{"type":"string","title":"Field"}},{"name":"query","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Query"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"page_size","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Page Size"}},{"name":"account_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Account Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowIntegrationFieldOptionsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows":{"get":{"tags":["Workflow Developer API"],"summary":"List Developer Workflows","description":"List the same organization-scoped workflows shown in UMPA.","operationId":"list_developer_workflows","security":[{"HTTPBearer":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}},{"name":"search","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Search"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"},"post":{"tags":["Workflow Developer API"],"summary":"Create Developer Workflow","description":"Create a workflow directly in the core ETL store used by UMPA.","operationId":"create_developer_workflow","security":[{"HTTPBearer":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDeveloperDefinitionCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/validate":{"post":{"tags":["Workflow Developer API"],"summary":"Validate Workflow Definition","description":"Preflight canonical workflow JSON against save, audit, and public API rules.\n\nThis operation does not persist anything. A definition that fails validation still\nreturns HTTP 200 with ``viable=false`` and machine-actionable findings.","operationId":"validate_workflow_definition","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionValidationRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionValidationResult"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}],"x-required-scope":"workflow:read"}},"/developer/v1/workflows/import":{"post":{"tags":["Workflow Developer API"],"summary":"Import Developer Workflow","description":"Import canonical JSON as an inactive UMPA workflow with published version 1.","operationId":"import_developer_workflow","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowImportEnvelope"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowImportResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"HTTPBearer":[]}],"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}":{"get":{"tags":["Workflow Developer API"],"summary":"Get Developer Workflow","description":"Read an active, historical, or draft workflow definition by identifier.","operationId":"get_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"version_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Version Id"}},{"name":"draft","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Draft"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"},"patch":{"tags":["Workflow Developer API"],"summary":"Update Developer Workflow","description":"Update workflow metadata or an existing draft; published graphs are immutable.","operationId":"update_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDeveloperDefinitionUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDefinitionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-conditional-scopes":{"body.status":"workflow:publish"},"x-required-scope":"workflow:write"},"delete":{"tags":["Workflow Developer API"],"summary":"Delete Developer Workflow","description":"Soft-delete a workflow after publish-scope authorization and explicit confirmation.","operationId":"delete_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"confirm","in":"query","required":false,"schema":{"type":"boolean","description":"Must be true to confirm removal of the workflow from UMPA-visible lists.","default":false,"title":"Confirm"},"description":"Must be true to confirm removal of the workflow from UMPA-visible lists."}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:publish"}},"/developer/v1/workflows/{definition_id}/export":{"get":{"tags":["Workflow Developer API"],"summary":"Export Developer Workflow","description":"Export canonical workflow JSON suitable for validation or exact re-import.","operationId":"export_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowExportEnvelope"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/draft/from-json":{"post":{"tags":["Workflow Developer API"],"summary":"Replace Developer Workflow Draft From Json","description":"Replace the complete draft graph from canonical JSON without publishing it.","operationId":"replace_developer_workflow_draft_from_json","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowImportEnvelope"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowImportResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/draft":{"post":{"tags":["Workflow Developer API"],"summary":"Create Developer Workflow Draft","description":"Create an editable draft from the workflow's currently active version.","operationId":"create_developer_workflow_draft","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowVersionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"},"delete":{"tags":["Workflow Developer API"],"summary":"Discard Developer Workflow Draft","description":"Discard the current unpublished draft while preserving published versions.","operationId":"discard_developer_workflow_draft","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/publish":{"post":{"tags":["Workflow Developer API"],"summary":"Publish Developer Workflow","description":"Audit and publish the current draft as an immutable active version.","operationId":"publish_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowPublishRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowPublishResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:publish"}},"/developer/v1/workflows/{definition_id}/versions":{"get":{"tags":["Workflow Developer API"],"summary":"List Developer Workflow Versions","description":"List immutable published versions and draft metadata for one workflow.","operationId":"list_developer_workflow_versions","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1,"title":"Page"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":20,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowVersionListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/versions/{version_id}":{"get":{"tags":["Workflow Developer API"],"summary":"Get Developer Workflow Version","description":"Read one immutable workflow version without changing the active version.","operationId":"get_developer_workflow_version","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"version_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Version Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowVersionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/versions/{version_id}/revert":{"post":{"tags":["Workflow Developer API"],"summary":"Revert Developer Workflow Version","description":"Create a new editable draft copied from a historical workflow version.","operationId":"revert_developer_workflow_version","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"version_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Version Id"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowVersionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/runs":{"post":{"tags":["Workflow Developer API"],"summary":"Run Developer Workflow","description":"Start an active published workflow with idempotent retry semantics.","operationId":"run_developer_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"draft","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Draft"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowDeveloperRunTriggerRequest"}}}},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRunTriggerResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:run"},"get":{"tags":["Workflow Developer API"],"summary":"List Workflow Runs Safe","description":"Return run navigation metadata without trigger or node-result values.","operationId":"list_workflow_runs_safe","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":25,"minimum":1,"default":10,"title":"Limit"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Since"}},{"name":"until","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Until"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRunsIndexResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/webhook-endpoint":{"get":{"tags":["Workflow Developer API"],"summary":"Get Developer Workflow Webhook Endpoint","description":"Return an active, published webhook URL; never exposed as an MCP tool.","operationId":"get_developer_workflow_webhook_endpoint","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowWebhookEndpointResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:run"}},"/developer/v1/runs/{run_id}/cancel":{"post":{"tags":["Workflow Developer API"],"summary":"Cancel Developer Workflow Run","description":"Request cancellation of one organization-owned public-compatible workflow run.","operationId":"cancel_developer_workflow_run","security":[{"HTTPBearer":[]}],"parameters":[{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRunControlResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:run"}},"/developer/v1/workflows/{definition_id}/outline":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Outline","description":"Read a compact node-and-edge outline before requesting larger graph details.","operationId":"read_workflow_outline","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowOutlineResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/graph":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Graph","description":"Read the complete public-safe graph for a workflow's current target version.","operationId":"read_workflow_graph","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowGraphResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"},"put":{"tags":["Workflow Developer API"],"summary":"Replace Workflow Graph","description":"Replace the entire editable draft graph after public policy validation.","operationId":"replace_workflow_graph","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowGraphReplaceRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMutationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/nodes/{node_id}/context":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Node Context","description":"Read one node with its immediate upstream and downstream graph context.","operationId":"read_workflow_node_context","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"node_id","in":"path","required":true,"schema":{"type":"string","title":"Node Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowNodeContextResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/nodes/{node_id}":{"get":{"tags":["Workflow Developer API"],"summary":"Get Workflow Node Details","description":"Read one node's configuration, connections, and public action metadata.","operationId":"read_workflow_node_details","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"node_id","in":"path","required":true,"schema":{"type":"string","title":"Node Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowNodeDetailsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"},"patch":{"tags":["Workflow Developer API"],"summary":"Update Workflow Node","description":"Patch selected fields on one node in the editable draft graph.","operationId":"update_workflow_node","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"node_id","in":"path","required":true,"schema":{"type":"string","title":"Node Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowNodeUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMutationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"},"delete":{"tags":["Workflow Developer API"],"summary":"Delete Workflow Node","description":"Delete one draft node and optionally reconnect its incoming and outgoing edges.","operationId":"delete_workflow_node","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"node_id","in":"path","required":true,"schema":{"type":"string","title":"Node Id"}},{"name":"rewire_edges","in":"query","required":false,"schema":{"type":"boolean","default":true,"title":"Rewire Edges"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMutationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/audit":{"post":{"tags":["Workflow Developer API"],"summary":"Audit Workflow","description":"Audit the unpublished draft and return actionable graph findings without mutation.","operationId":"audit_workflow","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"node_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowAuditResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}},"/developer/v1/workflows/{definition_id}/nodes/after":{"post":{"tags":["Workflow Developer API"],"summary":"Insert Workflow Node After","description":"Insert one node after an existing draft node and optionally rewire its targets.","operationId":"insert_workflow_node_after","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowNodeInsertAfterRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMutationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/nodes/before":{"post":{"tags":["Workflow Developer API"],"summary":"Insert Workflow Node Before","description":"Insert one node before an existing draft node and optionally rewire its sources.","operationId":"insert_workflow_node_before","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowNodeInsertBeforeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowMutationResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:write"}},"/developer/v1/workflows/{definition_id}/runs/{run_id}/nodes/{node_id}":{"get":{"tags":["Workflow Developer API"],"summary":"Read Workflow Run Node Shape","description":"Return status and value-free output shapes for one executed node.","operationId":"read_workflow_run_node_shape","security":[{"HTTPBearer":[]}],"parameters":[{"name":"definition_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Definition Id"}},{"name":"run_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Run Id"}},{"name":"node_id","in":"path","required":true,"schema":{"type":"string","title":"Node Id"}},{"name":"iteration_path","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"title":"Iteration Path"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":25,"minimum":1,"default":5,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowRunNodeShapeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"x-required-scope":"workflow:read"}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"JsonValue":{},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"WorkflowActionCapability":{"properties":{"handler":{"type":"string","title":"Handler"},"group":{"type":"string","title":"Group"},"label":{"type":"string","title":"Label"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"connection_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Connection Type"},"fields":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Fields"},"outputs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Outputs"},"safety":{"$ref":"#/components/schemas/WorkflowActionSafety"},"score":{"type":"integer","title":"Score"},"integration_node_config":{"additionalProperties":true,"type":"object","title":"Integration Node Config"},"input_schema":{"additionalProperties":true,"type":"object","title":"Input Schema","description":"First-pass authoring guidance derived from public field metadata; runtime action validation remains authoritative."},"output_schema":{"additionalProperties":true,"type":"object","title":"Output Schema","description":"Best-effort declared output names; fields and JSON types may be incomplete."},"output_schema_completeness":{"type":"string","title":"Output Schema Completeness"}},"additionalProperties":false,"type":"object","required":["handler","group","label","fields","outputs","safety","score","integration_node_config","input_schema","output_schema","output_schema_completeness"],"title":"WorkflowActionCapability","description":"One callable integration action available to the authenticated tenant."},"WorkflowActionSafety":{"properties":{"effect":{"type":"string","enum":["read","write","irreversible"],"title":"Effect","description":"Expected external-system effect; unknown actions default to write."},"confirmation_recommended":{"type":"boolean","title":"Confirmation Recommended","description":"Confirm business intent and identifiers before publishing this step."},"retry_safe":{"type":"boolean","title":"Retry Safe","description":"Whether an agent may automatically retry without duplicating a business write."},"dry_run_supported":{"type":"boolean","title":"Dry Run Supported","description":"Whether the action declares a top-level dry_run input."}},"additionalProperties":false,"type":"object","required":["effect","confirmation_recommended","retry_safe","dry_run_supported"],"title":"WorkflowActionSafety","description":"Conservative execution guidance for an integration action."},"WorkflowActionSearchResponse":{"properties":{"success":{"type":"boolean","title":"Success","default":true},"query":{"type":"string","title":"Query"},"group":{"type":"string","title":"Group"},"count":{"type":"integer","title":"Count"},"total_matches":{"type":"integer","title":"Total Matches"},"offset":{"type":"integer","title":"Offset","default":0},"has_more":{"type":"boolean","title":"Has More","default":false},"next_offset":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Next Offset"},"actions":{"items":{"$ref":"#/components/schemas/WorkflowActionCapability"},"type":"array","title":"Actions"}},"additionalProperties":false,"type":"object","required":["query","group","count","total_matches","actions"],"title":"WorkflowActionSearchResponse"},"WorkflowAuditFinding":{"properties":{"id":{"type":"string","title":"Id"},"code":{"type":"string","title":"Code"},"category":{"type":"string","title":"Category"},"severity":{"type":"string","enum":["blocking","warning"],"title":"Severity"},"node_ids":{"items":{"type":"string"},"type":"array","title":"Node Ids"},"edge":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Edge"},"message":{"type":"string","title":"Message"},"suggestion":{"type":"string","title":"Suggestion"}},"additionalProperties":false,"type":"object","required":["id","code","category","severity","node_ids","edge","message","suggestion"],"title":"WorkflowAuditFinding"},"WorkflowAuditResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"workflow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workflow Status"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"version_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Status"},"version_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version Number"},"editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Editable"},"summary":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Summary"},"findings":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Findings"},"runtime_notes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Runtime Notes"},"scope":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Scope"},"filtered":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Filtered"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowAuditResponse"},"WorkflowAuditRuntimeNote":{"properties":{"id":{"type":"string","title":"Id"},"code":{"type":"string","title":"Code"},"category":{"type":"string","title":"Category"},"node_ids":{"items":{"type":"string"},"type":"array","title":"Node Ids"},"message":{"type":"string","title":"Message"},"suggestion":{"type":"string","title":"Suggestion"}},"additionalProperties":false,"type":"object","required":["id","code","category","node_ids","message","suggestion"],"title":"WorkflowAuditRuntimeNote"},"WorkflowExpressionSyntax":{"properties":{"reference":{"type":"string","description":"Reference an upstream node output, optionally followed by a nested path."},"whole_value_preserves_type":{"type":"boolean","description":"A value made entirely from one reference keeps the referenced JSON type."},"embedded_reference_stringifies":{"type":"boolean","description":"A reference embedded in surrounding text is converted to a string."},"loop_item_reference":{"type":"string","description":"Reference the current item inside a loop body."},"loop_index_reference":{"type":"string","description":"Reference the zero-based current loop index."}},"additionalProperties":false,"type":"object","required":["reference","whole_value_preserves_type","embedded_reference_stringifies","loop_item_reference","loop_index_reference"],"title":"WorkflowExpressionSyntax","description":"Expression forms accepted in workflow configuration values.","example":{"reference":"{{node_id.output_name.path}}","whole_value_preserves_type":true,"embedded_reference_stringifies":true,"loop_item_reference":"{{loop_node_id.item}}","loop_index_reference":"{{loop_node_id.index}}"}},"WorkflowGraphSchemaManifest":{"properties":{"workflow_import_envelope":{"$ref":"#/components/schemas/WorkflowJsonSchemaDocument","description":"JSON Schema for the canonical workflow import envelope."},"node":{"$ref":"#/components/schemas/WorkflowJsonSchemaDocument","description":"JSON Schema for one node in a workflow graph."},"edge":{"$ref":"#/components/schemas/WorkflowJsonSchemaDocument","description":"JSON Schema for one directed workflow edge."},"rules":{"items":{"type":"string"},"type":"array","description":"Cross-object rules that cannot be expressed by an individual JSON Schema."}},"additionalProperties":false,"type":"object","required":["workflow_import_envelope","node","edge","rules"],"title":"WorkflowGraphSchemaManifest","description":"Named JSON Schema documents and graph-wide authoring rules. The example is a compact excerpt; the response contains the complete schemas.","example":{"workflow_import_envelope":{"type":"object","required":["kind","schema_version","workflow"],"properties":{"kind":{"const":"genhealth.workflow_definition"},"schema_version":{"const":1},"workflow":{"type":"object"}},"additionalProperties":false},"node":{"type":"object","required":["id","type","name"],"properties":{"id":{"type":"string"},"type":{"type":"string"},"name":{"type":"string"},"config":{"type":"object"},"error_strategy":{"type":"string","enum":["fail","fail_branch","default_value","retry"]}},"additionalProperties":false},"edge":{"type":"object","required":["source_node_id","target_node_id"],"properties":{"source_node_id":{"type":"string"},"source_output":{"type":"string","default":"default"},"target_node_id":{"type":"string"},"target_input":{"type":"string","default":"default"}},"additionalProperties":false},"rules":["Node ids are unique within a workflow.","Every edge endpoint names an existing node.","Expressions may only reference statically upstream nodes.","Active workflows must be edited through a draft before publishing."]}},"WorkflowIntegrationActions":{"properties":{"discovery":{"type":"string","description":"How to discover tenant-permitted workflow actions."},"connection_status":{"type":"string","description":"How to verify that an integration connection is ready."},"detail_source":{"type":"string","description":"What action discovery returns for each handler."},"output_schema_completeness":{"type":"string","enum":["best_effort_declared_or_unknown"]},"warning":{"type":"string"}},"additionalProperties":false,"type":"object","required":["discovery","connection_status","detail_source","output_schema_completeness","warning"],"title":"WorkflowIntegrationActions","description":"Discovery and connection guidance for integration action nodes.","example":{"discovery":"Use the workflow action search endpoint for compact, tenant-permitted results.","connection_status":"Use the integration connection status endpoint before publishing; it reports only configured/validated state and never credential material.","detail_source":"Each result includes an exact handler/group, compact public fields, connection type, and best-effort declared outputs. Connection configuration status is not asserted.","output_schema_completeness":"best_effort_declared_or_unknown","warning":"Output names may be incomplete or observed from production examples; use PHI-safe run-node shape inspection to observe runtime fields."}},"WorkflowJsonSchemaDocument":{"additionalProperties":true,"type":"object","title":"WorkflowJsonSchemaDocument","description":"A JSON Schema document describing a workflow payload or graph object."},"WorkflowLifecycle":{"properties":{"states":{"items":{"type":"string","enum":["inactive","active","paused"]},"type":"array"},"version_states":{"items":{"type":"string","enum":["draft","published","archived"]},"type":"array"},"recommended_sequence":{"items":{"type":"string"},"type":"array","description":"Recommended authoring sequence from creation through execution."},"umpa_visibility":{"type":"string","description":"How Developer API workflow records relate to UMPA."}},"additionalProperties":false,"type":"object","required":["states","version_states","recommended_sequence","umpa_visibility"],"title":"WorkflowLifecycle","description":"Workflow and version states plus the recommended publishing lifecycle.","example":{"states":["inactive","active","paused"],"version_states":["draft","published","archived"],"recommended_sequence":["create or import an inactive workflow","read the editable graph","create a draft before changing any published workflow version","write and audit the graph","publish the draft","run and inspect PHI-safe run metadata"],"umpa_visibility":"Developer API and UMPA use the same organization-scoped workflow records and versions."}},"WorkflowRecipe":{"properties":{"name":{"type":"string"},"description":{"type":"string"},"status":{"type":"string","description":"Present when a recipe has an important availability limitation."}},"additionalProperties":false,"type":"object","required":["name","description"],"title":"WorkflowRecipe","description":"A concise workflow-authoring pattern or limitation.","example":{"name":"object_literals","description":"JSON objects may be supplied directly in node params, bodies, and other open config fields."}},"WorkflowCapabilityManifest":{"properties":{"schema_version":{"type":"integer","const":1,"title":"Schema Version","default":1},"graph_schema":{"$ref":"#/components/schemas/WorkflowGraphSchemaManifest","description":"Complete JSON Schemas for workflow imports, nodes, and edges, plus graph-wide rules."},"expression_syntax":{"$ref":"#/components/schemas/WorkflowExpressionSyntax","description":"Supported node-output and loop reference forms."},"lifecycle":{"$ref":"#/components/schemas/WorkflowLifecycle","description":"Workflow states, version states, and the recommended authoring sequence."},"node_types":{"items":{"$ref":"#/components/schemas/WorkflowNodeCapability"},"type":"array","title":"Node Types"},"integration_actions":{"$ref":"#/components/schemas/WorkflowIntegrationActions","description":"Action discovery, connection readiness, and output-schema guidance."},"recipes":{"items":{"$ref":"#/components/schemas/WorkflowRecipe"},"type":"array","title":"Recipes"}},"additionalProperties":false,"type":"object","required":["graph_schema","expression_syntax","lifecycle","node_types","integration_actions","recipes"],"title":"WorkflowCapabilityManifest","description":"Top-level contract intended for API clients and AI agents."},"WorkflowDefinitionListResponse":{"properties":{"workflow_definitions":{"items":{"$ref":"#/components/schemas/WorkflowDefinitionResponse"},"type":"array","title":"Workflow Definitions"},"pagination":{"additionalProperties":true,"type":"object","title":"Pagination"}},"type":"object","required":["workflow_definitions","pagination"],"title":"WorkflowDefinitionListResponse"},"WorkflowDefinitionResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"org_id":{"type":"string","format":"uuid","title":"Org Id"},"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"type":"string","title":"Status"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes","default":[]},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges","default":[]},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"version":{"type":"integer","title":"Version","default":1},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"deleted":{"type":"boolean","title":"Deleted","default":false},"legacy":{"type":"boolean","title":"Legacy","default":false},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"},"active_version_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Active Version Id"},"draft_version_id":{"anyOf":[{"type":"string","format":"uuid"},{"type":"null"}],"title":"Draft Version Id"},"has_draft":{"type":"boolean","title":"Has Draft","default":false},"_created":{"type":"string","format":"date-time","title":"Created"},"_last_modified":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Modified"}},"type":"object","required":["id","org_id","name","status","_created"],"title":"WorkflowDefinitionResponse"},"WorkflowDefinitionSchemaError":{"properties":{"path":{"type":"string","title":"Path"},"code":{"type":"string","title":"Code"},"message":{"type":"string","title":"Message"}},"additionalProperties":false,"type":"object","required":["path","code","message"],"title":"WorkflowDefinitionSchemaError","description":"One schema failure with a stable machine-readable location and code."},"WorkflowDefinitionValidationRequest":{"properties":{"definition":{"anyOf":[{"$ref":"#/components/schemas/WorkflowImportEnvelope"},{"$ref":"#/components/schemas/JsonValue"}],"title":"Definition","description":"A genhealth.workflow_definition import envelope. Any JSON value is accepted here so schema mistakes can be returned as structured validation results."}},"additionalProperties":false,"type":"object","required":["definition"],"title":"WorkflowDefinitionValidationRequest","description":"Canonical envelope candidate to validate without creating a workflow."},"WorkflowDefinitionValidationResult":{"properties":{"success":{"type":"boolean","title":"Success","default":true},"schema_valid":{"type":"boolean","title":"Schema Valid"},"graph_valid":{"type":"boolean","title":"Graph Valid"},"policy_valid":{"type":"boolean","title":"Policy Valid"},"workflow_valid":{"type":"boolean","title":"Workflow Valid"},"viable":{"type":"boolean","title":"Viable"},"readiness":{"type":"string","enum":["blocked","needs_review","ready"],"title":"Readiness"},"runtime_verified":{"type":"boolean","const":false,"title":"Runtime Verified","default":false},"summary":{"$ref":"#/components/schemas/WorkflowDefinitionValidationSummary"},"schema_errors":{"items":{"$ref":"#/components/schemas/WorkflowDefinitionSchemaError"},"type":"array","title":"Schema Errors"},"findings":{"items":{"$ref":"#/components/schemas/WorkflowAuditFinding"},"type":"array","title":"Findings"},"runtime_notes":{"items":{"$ref":"#/components/schemas/WorkflowAuditRuntimeNote"},"type":"array","title":"Runtime Notes"}},"additionalProperties":false,"type":"object","required":["schema_valid","graph_valid","policy_valid","workflow_valid","viable","readiness","summary"],"title":"WorkflowDefinitionValidationResult","description":"Machine-readable outcome of validating an unpersisted definition."},"WorkflowDefinitionValidationSummary":{"properties":{"readiness":{"type":"string","enum":["blocked","needs_review","ready"],"title":"Readiness"},"schema_error_count":{"type":"integer","title":"Schema Error Count"},"finding_count":{"type":"integer","title":"Finding Count"},"blocking_count":{"type":"integer","title":"Blocking Count"},"warning_count":{"type":"integer","title":"Warning Count"},"runtime_note_count":{"type":"integer","title":"Runtime Note Count"},"production_confidence":{"type":"string","enum":["unverified_runtime","static_only"],"title":"Production Confidence"}},"additionalProperties":false,"type":"object","required":["readiness","schema_error_count","finding_count","blocking_count","warning_count","runtime_note_count","production_confidence"],"title":"WorkflowDefinitionValidationSummary","description":"Counts and readiness for one completed preflight validation."},"WorkflowDeveloperDefinitionCreate":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges"},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"}},"additionalProperties":false,"type":"object","required":["name"],"title":"WorkflowDeveloperDefinitionCreate","description":"Strict compact-create body for deterministic agent authoring."},"WorkflowDeveloperDefinitionUpdate":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"nodes":{"anyOf":[{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array"},{"type":"null"}],"title":"Nodes"},"edges":{"anyOf":[{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array"},{"type":"null"}],"title":"Edges"},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"}},"additionalProperties":false,"type":"object","title":"WorkflowDeveloperDefinitionUpdate","description":"Strict metadata/draft update body for deterministic agent authoring."},"WorkflowDeveloperRunTriggerRequest":{"properties":{"idempotency_key":{"type":"string","maxLength":256,"minLength":16,"title":"Idempotency Key","description":"Required opaque 16-256 character request identifier. Reuse it only for an exact retry of the same workflow version and trigger_data; generate a new UUID for a new logical run. Do not put PHI or credentials in this value.","writeOnly":true},"trigger_data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger Data","description":"Optional manual-run input object supplied to the workflow trigger."}},"additionalProperties":false,"type":"object","required":["idempotency_key"],"title":"WorkflowDeveloperRunTriggerRequest","description":"AI-oriented manual run request with a required replay-safe identifier."},"WorkflowEdgeSchema":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"},"source_node_id":{"type":"string","title":"Source Node Id"},"source_output":{"type":"string","title":"Source Output","default":"default"},"target_node_id":{"type":"string","title":"Target Node Id"},"target_input":{"type":"string","title":"Target Input","default":"default"}},"additionalProperties":false,"type":"object","required":["source_node_id","target_node_id"],"title":"WorkflowEdgeSchema"},"WorkflowExportBody":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges"}},"additionalProperties":false,"type":"object","required":["name","nodes","edges"],"title":"WorkflowExportBody"},"WorkflowExportEnvelope":{"properties":{"kind":{"type":"string","const":"genhealth.workflow_definition","title":"Kind"},"schema_version":{"type":"integer","const":1,"title":"Schema Version"},"workflow":{"$ref":"#/components/schemas/WorkflowExportBody"}},"additionalProperties":false,"type":"object","required":["kind","schema_version","workflow"],"title":"WorkflowExportEnvelope"},"WorkflowGraphReplaceRequest":{"properties":{"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","minItems":1,"title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges"}},"additionalProperties":false,"type":"object","required":["nodes"],"title":"WorkflowGraphReplaceRequest","description":"Complete graph replacement; omitted nodes are removed."},"WorkflowGraphResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Editable"},"node_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Node Count"},"edge_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Edge Count"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowGraphResponse"},"WorkflowImportBody":{"properties":{"name":{"type":"string","title":"Name"},"description":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"title":"Description"},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes"},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges"}},"additionalProperties":false,"type":"object","required":["name","nodes","edges"],"title":"WorkflowImportBody","description":"Upload shape with write-side limits that do not constrain exports."},"WorkflowImportEnvelope":{"properties":{"kind":{"type":"string","const":"genhealth.workflow_definition","title":"Kind"},"schema_version":{"type":"integer","const":1,"title":"Schema Version"},"workflow":{"$ref":"#/components/schemas/WorkflowImportBody"}},"additionalProperties":false,"type":"object","required":["kind","schema_version","workflow"],"title":"WorkflowImportEnvelope"},"WorkflowImportResponse":{"properties":{"workflow":{"$ref":"#/components/schemas/WorkflowDefinitionResponse"},"warnings":{"items":{"$ref":"#/components/schemas/WorkflowImportWarning"},"type":"array","title":"Warnings"}},"type":"object","required":["workflow"],"title":"WorkflowImportResponse"},"WorkflowImportWarning":{"properties":{"node_id":{"type":"string","title":"Node Id"},"code":{"type":"string","title":"Code"},"message":{"type":"string","title":"Message"}},"type":"object","required":["node_id","code","message"],"title":"WorkflowImportWarning"},"WorkflowIntegrationCatalogResponse":{"properties":{"integrations":{"items":{"$ref":"#/components/schemas/WorkflowIntegrationSummary"},"type":"array","title":"Integrations"},"integration_count":{"type":"integer","title":"Integration Count"},"action_count":{"type":"integer","title":"Action Count"}},"additionalProperties":false,"type":"object","required":["integrations","integration_count","action_count"],"title":"WorkflowIntegrationCatalogResponse"},"WorkflowIntegrationConnectionCatalogResponse":{"properties":{"connections":{"items":{"$ref":"#/components/schemas/WorkflowIntegrationConnectionStatus"},"type":"array","title":"Connections"},"connection_count":{"type":"integer","title":"Connection Count"}},"additionalProperties":false,"type":"object","required":["connections","connection_count"],"title":"WorkflowIntegrationConnectionCatalogResponse"},"WorkflowIntegrationConnectionStatus":{"properties":{"connection_type":{"type":"string","title":"Connection Type"},"status":{"type":"string","enum":["not_connected","connected_unvalidated","connected_validated"],"title":"Status"},"configured":{"type":"boolean","title":"Configured"},"validated":{"type":"boolean","title":"Validated"}},"additionalProperties":false,"type":"object","required":["connection_type","status","configured","validated"],"title":"WorkflowIntegrationConnectionStatus","description":"Credential-presence status without secret fields or validation errors."},"WorkflowIntegrationFieldOptionResponse":{"properties":{"value":{"type":"string","title":"Value"},"label":{"type":"string","title":"Label"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data"}},"type":"object","required":["value","label"],"title":"WorkflowIntegrationFieldOptionResponse","description":"One dynamic workflow integration field option."},"WorkflowIntegrationFieldOptionsResponse":{"properties":{"options":{"items":{"$ref":"#/components/schemas/WorkflowIntegrationFieldOptionResponse"},"type":"array","title":"Options"},"has_more":{"type":"boolean","title":"Has More","default":false}},"type":"object","required":["options"],"title":"WorkflowIntegrationFieldOptionsResponse","description":"Dynamic workflow integration field options response."},"WorkflowIntegrationSummary":{"properties":{"group":{"type":"string","title":"Group"},"action_count":{"type":"integer","title":"Action Count"},"connection_types":{"items":{"anyOf":[{"type":"string"},{"type":"boolean"}]},"type":"array","title":"Connection Types"}},"additionalProperties":false,"type":"object","required":["group","action_count","connection_types"],"title":"WorkflowIntegrationSummary"},"WorkflowMutationResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"node_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Id"},"node_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Name"},"inserted":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inserted"},"changed_fields":{"items":{"type":"string"},"type":"array","title":"Changed Fields"},"added_edge_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Added Edge Count"},"removed_edge_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Removed Edge Count"},"rewired_edge_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Rewired Edge Count"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowMutationResponse"},"WorkflowNodeCapability":{"properties":{"type":{"type":"string","title":"Type"},"version":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version"},"status":{"type":"string","enum":["supported","deprecated","internal_only","unavailable"],"title":"Status"},"category":{"type":"string","enum":["action","control","trigger","annotation"],"title":"Category"},"description":{"type":"string","title":"Description"},"config_schema":{"additionalProperties":true,"type":"object","title":"Config Schema"},"data_output_schema":{"additionalProperties":true,"type":"object","title":"Data Output Schema"},"routing_ports":{"additionalProperties":true,"type":"object","title":"Routing Ports"},"examples":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Examples"},"warnings":{"items":{"type":"string"},"type":"array","title":"Warnings"}},"additionalProperties":false,"type":"object","required":["type","version","status","category","description","config_schema","data_output_schema","routing_ports"],"title":"WorkflowNodeCapability","description":"Machine-readable contract for one workflow node type.","example":{"type":"integration","version":1,"status":"supported","category":"action","description":"Invoke a public action in an integration configured for the organization.","config_schema":{"type":"object","properties":{"handler":{"type":"string","description":"Exact handler returned by workflow action search."},"_group":{"type":"string","description":"Integration group returned by workflow action search."},"params":{"type":"object","additionalProperties":true}},"required":["handler","params"],"additionalProperties":true},"data_output_schema":{"type":"object","properties":{"default":{}},"additionalProperties":true},"routing_ports":{"static":["default"],"dynamic":false},"examples":[{"id":"find_patient","type":"integration","name":"Find patient","config":{"_group":"NikoHealth","handler":"exact_handler_from_search","params":{}}}],"warnings":["Input and output schemas vary by action; call workflow action search before constructing this node."]}},"WorkflowNodeContextResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"workflow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workflow Status"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"version_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Status"},"editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Editable"},"current_node":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Current Node"},"upstream_nodes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Upstream Nodes"},"downstream_nodes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Downstream Nodes"},"incoming_edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Incoming Edges"},"outgoing_edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Outgoing Edges"},"available_outputs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Available Outputs"},"required_inputs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Required Inputs"},"branch_outputs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Branch Outputs"},"outline_hints":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Outline Hints"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowNodeContextResponse"},"WorkflowNodeDetailsResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"workflow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workflow Status"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"version_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Status"},"editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Editable"},"node":{"anyOf":[{"$ref":"#/components/schemas/WorkflowNodeSchema"},{"type":"null"}]},"incoming_edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Incoming Edges"},"outgoing_edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Outgoing Edges"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowNodeDetailsResponse"},"WorkflowNodeInsertAfterRequest":{"properties":{"after_node_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"After Node Id","description":"Anchor node. Omit only when inserting the first node into an empty workflow."},"node":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"source_output":{"type":"string","title":"Source Output","default":"default"},"target_input":{"type":"string","title":"Target Input","default":"default"},"rewire_existing_targets":{"type":"boolean","title":"Rewire Existing Targets","default":true}},"additionalProperties":false,"type":"object","required":["node"],"title":"WorkflowNodeInsertAfterRequest"},"WorkflowNodeInsertBeforeRequest":{"properties":{"before_node_id":{"type":"string","title":"Before Node Id"},"node":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"source_output":{"type":"string","title":"Source Output","default":"default"},"target_input":{"type":"string","title":"Target Input","default":"default"},"rewire_existing_sources":{"type":"boolean","title":"Rewire Existing Sources","default":true}},"additionalProperties":false,"type":"object","required":["before_node_id","node"],"title":"WorkflowNodeInsertBeforeRequest"},"WorkflowNodeSchema":{"properties":{"id":{"type":"string","title":"Id"},"type":{"type":"string","title":"Type"},"name":{"type":"string","title":"Name"},"config":{"additionalProperties":true,"type":"object","title":"Config"},"position":{"anyOf":[{"prefixItems":[{"type":"integer"},{"type":"integer"}],"type":"array","maxItems":2,"minItems":2},{"type":"null"}],"title":"Position"},"error_strategy":{"type":"string","title":"Error Strategy","default":"fail"},"retry_config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Retry Config"},"default_value":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Default Value"}},"additionalProperties":false,"type":"object","required":["id","type","name"],"title":"WorkflowNodeSchema"},"WorkflowNodeUpdateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"node_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Type"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"position":{"anyOf":[{"items":{"type":"integer"},"type":"array","maxItems":2,"minItems":2},{"type":"null"}],"title":"Position"},"error_strategy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Strategy"},"retry_config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Retry Config"},"default_value":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Default Value"}},"additionalProperties":false,"type":"object","title":"WorkflowNodeUpdateRequest","description":"Patch one node. Config is a full replacement when supplied."},"WorkflowOutlineResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"workflow_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Workflow Status"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"version_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Status"},"editable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Editable"},"node_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Node Count"},"edge_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Edge Count"},"nodes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Nodes"},"edges":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Edges"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowOutlineResponse"},"WorkflowPublishRequest":{"properties":{"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Description"}},"type":"object","title":"WorkflowPublishRequest"},"WorkflowPublishResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"version_id":{"type":"string","format":"uuid","title":"Version Id"},"version_number":{"type":"integer","title":"Version Number"},"status":{"type":"string","title":"Status"}},"type":"object","required":["id","version_id","version_number","status"],"title":"WorkflowPublishResponse"},"WorkflowRunControlResponse":{"properties":{"run_id":{"type":"string","title":"Run Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["run_id","status"],"title":"WorkflowRunControlResponse"},"WorkflowRunNodeShapeResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"hint":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hint"},"outline_hints":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Outline Hints"},"run_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Run Id"},"node_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Node Id"},"in_loop":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"In Loop"},"executed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Executed"},"run_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Run Status"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"},"result":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Result"},"loop_chain":{"items":{"type":"string"},"type":"array","title":"Loop Chain"},"iterations":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Iterations"},"total_returned":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total Returned"},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Limit"},"truncated":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Truncated"},"iteration_path":{"items":{"type":"integer"},"type":"array","title":"Iteration Path"},"item_shapes":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Item Shapes"},"iteration_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Iteration Status"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowRunNodeShapeResponse"},"WorkflowRunTriggerResponse":{"properties":{"run_id":{"type":"string","title":"Run Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["run_id","status"],"title":"WorkflowRunTriggerResponse"},"WorkflowRunsIndexResponse":{"properties":{"success":{"type":"boolean","title":"Success"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"},"error_category":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Category"},"retryable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Retryable"},"definition_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition Id"},"total":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Total"},"returned":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Returned"},"runs":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Runs"}},"additionalProperties":true,"type":"object","required":["success"],"title":"WorkflowRunsIndexResponse"},"WorkflowVersionListResponse":{"properties":{"versions":{"items":{"$ref":"#/components/schemas/WorkflowVersionSummaryResponse"},"type":"array","title":"Versions"},"pagination":{"additionalProperties":true,"type":"object","title":"Pagination"}},"type":"object","required":["versions","pagination"],"title":"WorkflowVersionListResponse"},"WorkflowVersionResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"workflow_id":{"type":"string","format":"uuid","title":"Workflow Id"},"version_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version Number"},"status":{"type":"string","title":"Status"},"nodes":{"items":{"$ref":"#/components/schemas/WorkflowNodeSchema"},"type":"array","title":"Nodes","default":[]},"edges":{"items":{"$ref":"#/components/schemas/WorkflowEdgeSchema"},"type":"array","title":"Edges","default":[]},"trigger":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Trigger"},"config":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Config"},"route":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Route"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"published_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Published By"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"_created":{"type":"string","format":"date-time","title":"Created"},"_last_modified":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Modified"}},"type":"object","required":["id","workflow_id","status","_created"],"title":"WorkflowVersionResponse"},"WorkflowVersionSummaryResponse":{"properties":{"id":{"type":"string","format":"uuid","title":"Id"},"workflow_id":{"type":"string","format":"uuid","title":"Workflow Id"},"version_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version Number"},"status":{"type":"string","title":"Status"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"published_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Published By"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"_created":{"type":"string","format":"date-time","title":"Created"}},"type":"object","required":["id","workflow_id","status","_created"],"title":"WorkflowVersionSummaryResponse","description":"Lightweight version info for the list endpoint (no nodes/edges)."},"WorkflowWebhookEndpointResponse":{"properties":{"workflow_id":{"type":"string","title":"Workflow Id"},"version_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Id"},"provider":{"type":"string","title":"Provider"},"url":{"type":"string","title":"Url"},"draft":{"type":"boolean","title":"Draft"},"live":{"type":"boolean","title":"Live"}},"additionalProperties":false,"type":"object","required":["workflow_id","provider","url","draft","live"],"title":"WorkflowWebhookEndpointResponse","description":"Server-managed webhook URL; intentionally excluded from MCP tools."}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}}}