Versions in this module Expand all Collapse all v0 v0.36.0 Apr 10, 2026 v0.35.1 Apr 4, 2026 v0.35.0 Apr 2, 2026 v0.34.4 Mar 29, 2026 v0.34.3 Mar 15, 2026 v0.34.2 Mar 9, 2026 v0.34.1 Mar 8, 2026 v0.34.0 Feb 26, 2026 Changes in this version + var ErrActionMutualExclusion = errors.New("action cannot have both workflowId and stepId") + var ErrCircularDependency = errors.New("circular workflow dependency detected") + var ErrDuplicateStepId = errors.New("duplicate stepId within workflow") + var ErrDuplicateWorkflowId = errors.New("duplicate workflowId") + var ErrEmptySourceDescriptions = errors.New("sourceDescriptions must have at least one entry") + var ErrEmptySteps = errors.New("steps must have at least one entry") + var ErrEmptyWorkflows = errors.New("workflows must have at least one entry") + var ErrExecutorNotConfigured = errors.New("executor is not configured") + var ErrGotoRequiresTarget = errors.New("goto action requires workflowId or stepId") + var ErrInvalidArazzo = errors.New("invalid arazzo document") + var ErrInvalidExpression = errors.New("invalid runtime expression") + var ErrInvalidFailureType = errors.New("failure action type must be 'end', 'retry', or 'goto'") + var ErrInvalidParameterIn = errors.New("'in' must be path, query, header, or cookie") + var ErrInvalidSuccessType = errors.New("success action type must be 'end' or 'goto'") + var ErrMissingActionName = errors.New("missing required 'name'") + var ErrMissingActionType = errors.New("missing required 'type'") + var ErrMissingArazzoField = errors.New("missing required 'arazzo' field") + var ErrMissingCondition = errors.New("missing required 'condition'") + var ErrMissingInfo = errors.New("missing required 'info' field") + var ErrMissingParameterIn = errors.New("missing required 'in' for operation parameter") + var ErrMissingParameterName = errors.New("missing required 'name'") + var ErrMissingParameterValue = errors.New("missing required 'value'") + var ErrMissingSourceDescriptions = errors.New("missing required 'sourceDescriptions' field") + var ErrMissingStepId = errors.New("missing required 'stepId'") + var ErrMissingSteps = errors.New("missing required 'steps'") + var ErrMissingWorkflowId = errors.New("missing required 'workflowId'") + var ErrMissingWorkflows = errors.New("missing required 'workflows' field") + var ErrOperationSourceMapping = errors.New("operation source mapping failed") + var ErrSourceDescLoadFailed = errors.New("failed to load source description") + var ErrStepIdNotInWorkflow = errors.New("stepId must reference a step in the current workflow") + var ErrStepMutualExclusion = errors.New("step must have exactly one of operationId, operationPath, or workflowId") + var ErrUnknownExpressionPrefix = errors.New("unknown expression prefix") + var ErrUnresolvedComponent = errors.New("component reference not found") + var ErrUnresolvedOperationRef = errors.New("operation reference not found") + var ErrUnresolvedSourceDesc = errors.New("sourceDescription reference not found") + var ErrUnresolvedWorkflowRef = errors.New("workflowId references unknown workflow") + func ClearCriterionCaches() + func EvaluateCriterion(criterion *high.Criterion, exprCtx *expression.Context) (bool, error) + type ArazzoDocumentFactory func(sourceURL string, bytes []byte) (*high.Arazzo, error) + type Engine struct + func NewEngine(doc *high.Arazzo, executor Executor, sources []*ResolvedSource) *Engine + func NewEngineWithConfig(doc *high.Arazzo, executor Executor, sources []*ResolvedSource, ...) *Engine + func (e *Engine) ClearCaches() + func (e *Engine) RunAll(ctx context.Context, inputs map[string]map[string]any) (*RunResult, error) + func (e *Engine) RunWorkflow(ctx context.Context, workflowId string, inputs map[string]any) (*WorkflowResult, error) + type EngineConfig struct + RetainResponseBodies bool + type ExecutionRequest struct + ContentType string + Method string + OperationID string + OperationPath string + Parameters map[string]any + RequestBody any + Source *ResolvedSource + type ExecutionResponse struct + Body any + Headers map[string][]string + Method string + StatusCode int + URL string + type Executor interface + Execute func(ctx context.Context, req *ExecutionRequest) (*ExecutionResponse, error) + type OpenAPIDocumentFactory func(sourceURL string, bytes []byte) (*v3high.Document, error) + type ResolveConfig struct + AllowedHosts []string + AllowedSchemes []string + ArazzoFactory ArazzoDocumentFactory + BaseURL string + FSRoots []string + HTTPClient *http.Client + HTTPHandler func(url string) ([]byte, error) + MaxBodySize int64 + MaxSources int + OpenAPIFactory OpenAPIDocumentFactory + Timeout time.Duration + type ResolvedSource struct + ArazzoDocument *high.Arazzo + Name string + OpenAPIDocument *v3high.Document + Type string + URL string + func ResolveSources(doc *high.Arazzo, config *ResolveConfig) ([]*ResolvedSource, error) + type RunResult struct + Duration time.Duration + Success bool + Workflows []*WorkflowResult + type StepFailureError struct + Cause error + CriterionIndex int + Message string + StepId string + func (e *StepFailureError) Error() string + func (e *StepFailureError) Unwrap() error + type StepResult struct + Duration time.Duration + Error error + Outputs map[string]any + Retries int + StatusCode int + StepId string + Success bool + type ValidationError struct + Cause error + Column int + Line int + Path string + func (e *ValidationError) Error() string + func (e *ValidationError) Unwrap() error + type ValidationResult struct + Errors []*ValidationError + Warnings []*Warning + func Validate(doc *high.Arazzo) *ValidationResult + func (r *ValidationResult) Error() string + func (r *ValidationResult) HasErrors() bool + func (r *ValidationResult) HasWarnings() bool + func (r *ValidationResult) Unwrap() []error + type Warning struct + Column int + Line int + Message string + Path string + func (w *Warning) String() string + type WorkflowResult struct + Duration time.Duration + Error error + Inputs map[string]any + Outputs map[string]any + Steps []*StepResult + Success bool + WorkflowId string