// Package api provides primitives to interact with the openapi HTTP API.
//
// Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.1 DO NOT EDIT.
package api

import (
	"bytes"
	"compress/gzip"
	"context"
	"encoding/base64"
	"encoding/json"
	"errors"
	"fmt"
	"io"
	"net/http"
	"net/url"
	"path"
	"strings"
	"time"

	"github.com/getkin/kin-openapi/openapi3"
	"github.com/go-chi/chi/v5"
	"github.com/oapi-codegen/runtime"
	strictnethttp "github.com/oapi-codegen/runtime/strictmiddleware/nethttp"
	openapi_types "github.com/oapi-codegen/runtime/types"
)

const (
	ApiTokenScopes  = "apiToken.Scopes"
	BasicAuthScopes = "basicAuth.Scopes"
)

// Defines values for AgentBashPolicyDefaultBehavior.
const (
	AgentBashPolicyDefaultBehaviorAllow AgentBashPolicyDefaultBehavior = "allow"
	AgentBashPolicyDefaultBehaviorDeny  AgentBashPolicyDefaultBehavior = "deny"
)

// Defines values for AgentBashPolicyDenyBehavior.
const (
	AgentBashPolicyDenyBehaviorAskUser AgentBashPolicyDenyBehavior = "ask_user"
	AgentBashPolicyDenyBehaviorBlock   AgentBashPolicyDenyBehavior = "block"
)

// Defines values for AgentBashRuleAction.
const (
	AgentBashRuleActionAllow AgentBashRuleAction = "allow"
	AgentBashRuleActionDeny  AgentBashRuleAction = "deny"
)

// Defines values for AgentDelegateSnapshotStatus.
const (
	AgentDelegateSnapshotStatusCompleted AgentDelegateSnapshotStatus = "completed"
	AgentDelegateSnapshotStatusRunning   AgentDelegateSnapshotStatus = "running"
)

// Defines values for AgentMessageType.
const (
	AgentMessageTypeAssistant  AgentMessageType = "assistant"
	AgentMessageTypeError      AgentMessageType = "error"
	AgentMessageTypeUiAction   AgentMessageType = "ui_action"
	AgentMessageTypeUser       AgentMessageType = "user"
	AgentMessageTypeUserPrompt AgentMessageType = "user_prompt"
)

// Defines values for AgentTavilyWebToolsConfigSearchDepth.
const (
	AgentTavilyWebToolsConfigSearchDepthAdvanced  AgentTavilyWebToolsConfigSearchDepth = "advanced"
	AgentTavilyWebToolsConfigSearchDepthBasic     AgentTavilyWebToolsConfigSearchDepth = "basic"
	AgentTavilyWebToolsConfigSearchDepthFast      AgentTavilyWebToolsConfigSearchDepth = "fast"
	AgentTavilyWebToolsConfigSearchDepthUltraFast AgentTavilyWebToolsConfigSearchDepth = "ultra-fast"
)

// Defines values for AgentUserPromptPromptType.
const (
	AgentUserPromptPromptTypeCommandApproval AgentUserPromptPromptType = "command_approval"
	AgentUserPromptPromptTypeGeneral         AgentUserPromptPromptType = "general"
)

// Defines values for AgentWebToolsBackend.
const (
	AgentWebToolsBackendFirecrawl AgentWebToolsBackend = "firecrawl"
	AgentWebToolsBackendTavily    AgentWebToolsBackend = "tavily"
)

// Defines values for ArtifactNodeType.
const (
	ArtifactNodeTypeDirectory ArtifactNodeType = "directory"
	ArtifactNodeTypeFile      ArtifactNodeType = "file"
)

// Defines values for ArtifactPreviewKind.
const (
	ArtifactPreviewKindBinary   ArtifactPreviewKind = "binary"
	ArtifactPreviewKindImage    ArtifactPreviewKind = "image"
	ArtifactPreviewKindMarkdown ArtifactPreviewKind = "markdown"
	ArtifactPreviewKindText     ArtifactPreviewKind = "text"
)

// Defines values for ChatMessageRole.
const (
	ChatMessageRoleAssistant ChatMessageRole = "assistant"
	ChatMessageRoleSystem    ChatMessageRole = "system"
	ChatMessageRoleTool      ChatMessageRole = "tool"
	ChatMessageRoleUser      ChatMessageRole = "user"
)

// Defines values for CoordinatorInstanceStatus.
const (
	CoordinatorInstanceStatusActive   CoordinatorInstanceStatus = "active"
	CoordinatorInstanceStatusInactive CoordinatorInstanceStatus = "inactive"
	CoordinatorInstanceStatusUnknown  CoordinatorInstanceStatus = "unknown"
)

// Defines values for CreateModelConfigRequestProvider.
const (
	CreateModelConfigRequestProviderAnthropic   CreateModelConfigRequestProvider = "anthropic"
	CreateModelConfigRequestProviderGemini      CreateModelConfigRequestProvider = "gemini"
	CreateModelConfigRequestProviderLocal       CreateModelConfigRequestProvider = "local"
	CreateModelConfigRequestProviderOpenai      CreateModelConfigRequestProvider = "openai"
	CreateModelConfigRequestProviderOpenaiCodex CreateModelConfigRequestProvider = "openai-codex"
	CreateModelConfigRequestProviderOpencode    CreateModelConfigRequestProvider = "opencode"
	CreateModelConfigRequestProviderOpenrouter  CreateModelConfigRequestProvider = "openrouter"
	CreateModelConfigRequestProviderZai         CreateModelConfigRequestProvider = "zai"
)

// Defines values for CreateModelConfigRequestThinkingEffort.
const (
	CreateModelConfigRequestThinkingEffortHigh   CreateModelConfigRequestThinkingEffort = "high"
	CreateModelConfigRequestThinkingEffortLow    CreateModelConfigRequestThinkingEffort = "low"
	CreateModelConfigRequestThinkingEffortMedium CreateModelConfigRequestThinkingEffort = "medium"
	CreateModelConfigRequestThinkingEffortXhigh  CreateModelConfigRequestThinkingEffort = "xhigh"
)

// Defines values for CreateRemoteNodeRequestAuthType.
const (
	CreateRemoteNodeRequestAuthTypeBasic CreateRemoteNodeRequestAuthType = "basic"
	CreateRemoteNodeRequestAuthTypeNone  CreateRemoteNodeRequestAuthType = "none"
	CreateRemoteNodeRequestAuthTypeToken CreateRemoteNodeRequestAuthType = "token"
)

// Defines values for CreateSecretRequestProviderType.
const (
	CreateSecretRequestProviderTypeDaguManaged CreateSecretRequestProviderType = "dagu-managed"
)

// Defines values for DocTreeNodeResponseType.
const (
	DocTreeNodeResponseTypeDirectory DocTreeNodeResponseType = "directory"
	DocTreeNodeResponseTypeFile      DocTreeNodeResponseType = "file"
)

// Defines values for ErrorCode.
const (
	ErrorCodeAlreadyExists    ErrorCode = "already_exists"
	ErrorCodeAuthForbidden    ErrorCode = "auth.forbidden"
	ErrorCodeAuthTokenInvalid ErrorCode = "auth.token_invalid"
	ErrorCodeAuthUnauthorized ErrorCode = "auth.unauthorized"
	ErrorCodeBadGateway       ErrorCode = "bad_gateway"
	ErrorCodeBadRequest       ErrorCode = "bad_request"
	ErrorCodeForbidden        ErrorCode = "forbidden"
	ErrorCodeInternalError    ErrorCode = "internal_error"
	ErrorCodeMaxRunReached    ErrorCode = "max_run_reached"
	ErrorCodeNotFound         ErrorCode = "not_found"
	ErrorCodeNotRunning       ErrorCode = "not_running"
	ErrorCodeRemoteNodeError  ErrorCode = "remote_node_error"
	ErrorCodeTimeout          ErrorCode = "timeout"
	ErrorCodeUnauthorized     ErrorCode = "unauthorized"
)

// Defines values for HealthResponseStatus.
const (
	HealthResponseStatusHealthy   HealthResponseStatus = "healthy"
	HealthResponseStatusUnhealthy HealthResponseStatus = "unhealthy"
)

// Defines values for IncidentPagerDutyProviderInputEnvelopeType.
const (
	IncidentPagerDutyProviderInputEnvelopeTypePagerduty IncidentPagerDutyProviderInputEnvelopeType = "pagerduty"
)

// Defines values for IncidentPolicyScope.
const (
	IncidentPolicyScopeDag       IncidentPolicyScope = "dag"
	IncidentPolicyScopeGlobal    IncidentPolicyScope = "global"
	IncidentPolicyScopeWorkspace IncidentPolicyScope = "workspace"
)

// Defines values for IncidentProviderType.
const (
	IncidentProviderTypePagerduty                  IncidentProviderType = "pagerduty"
	IncidentProviderTypeSolarwindsIncidentResponse IncidentProviderType = "solarwinds_incident_response"
)

// Defines values for IncidentSeverity.
const (
	IncidentSeverityCritical IncidentSeverity = "critical"
	IncidentSeverityError    IncidentSeverity = "error"
	IncidentSeverityInfo     IncidentSeverity = "info"
	IncidentSeverityWarning  IncidentSeverity = "warning"
)

// Defines values for IncidentSolarWindsProviderInputEnvelopeType.
const (
	IncidentSolarWindsProviderInputEnvelopeTypeSolarwindsIncidentResponse IncidentSolarWindsProviderInputEnvelopeType = "solarwinds_incident_response"
)

// Defines values for ModelConfigResponseProvider.
const (
	ModelConfigResponseProviderAnthropic   ModelConfigResponseProvider = "anthropic"
	ModelConfigResponseProviderGemini      ModelConfigResponseProvider = "gemini"
	ModelConfigResponseProviderLocal       ModelConfigResponseProvider = "local"
	ModelConfigResponseProviderOpenai      ModelConfigResponseProvider = "openai"
	ModelConfigResponseProviderOpenaiCodex ModelConfigResponseProvider = "openai-codex"
	ModelConfigResponseProviderOpencode    ModelConfigResponseProvider = "opencode"
	ModelConfigResponseProviderOpenrouter  ModelConfigResponseProvider = "openrouter"
	ModelConfigResponseProviderZai         ModelConfigResponseProvider = "zai"
)

// Defines values for ModelConfigResponseThinkingEffort.
const (
	ModelConfigResponseThinkingEffortHigh   ModelConfigResponseThinkingEffort = "high"
	ModelConfigResponseThinkingEffortLow    ModelConfigResponseThinkingEffort = "low"
	ModelConfigResponseThinkingEffortMedium ModelConfigResponseThinkingEffort = "medium"
	ModelConfigResponseThinkingEffortXhigh  ModelConfigResponseThinkingEffort = "xhigh"
)

// Defines values for ModelPresetProvider.
const (
	ModelPresetProviderAnthropic   ModelPresetProvider = "anthropic"
	ModelPresetProviderGemini      ModelPresetProvider = "gemini"
	ModelPresetProviderLocal       ModelPresetProvider = "local"
	ModelPresetProviderOpenai      ModelPresetProvider = "openai"
	ModelPresetProviderOpenaiCodex ModelPresetProvider = "openai-codex"
	ModelPresetProviderOpencode    ModelPresetProvider = "opencode"
	ModelPresetProviderOpenrouter  ModelPresetProvider = "openrouter"
	ModelPresetProviderZai         ModelPresetProvider = "zai"
)

// Defines values for ModelPresetThinkingEffort.
const (
	ModelPresetThinkingEffortHigh   ModelPresetThinkingEffort = "high"
	ModelPresetThinkingEffortLow    ModelPresetThinkingEffort = "low"
	ModelPresetThinkingEffortMedium ModelPresetThinkingEffort = "medium"
	ModelPresetThinkingEffortXhigh  ModelPresetThinkingEffort = "xhigh"
)

// Defines values for NodeStatus.
const (
	NodeStatusAborted        NodeStatus = 3
	NodeStatusFailed         NodeStatus = 2
	NodeStatusNotStarted     NodeStatus = 0
	NodeStatusPartialSuccess NodeStatus = 6
	NodeStatusRejected       NodeStatus = 8
	NodeStatusRetrying       NodeStatus = 9
	NodeStatusRunning        NodeStatus = 1
	NodeStatusSkipped        NodeStatus = 5
	NodeStatusSuccess        NodeStatus = 4
	NodeStatusWaiting        NodeStatus = 7
)

// Defines values for NodeStatusLabel.
const (
	NodeStatusLabelAborted            NodeStatusLabel = "aborted"
	NodeStatusLabelFailed             NodeStatusLabel = "failed"
	NodeStatusLabelNotStarted         NodeStatusLabel = "not_started"
	NodeStatusLabelPartiallySucceeded NodeStatusLabel = "partially_succeeded"
	NodeStatusLabelRejected           NodeStatusLabel = "rejected"
	NodeStatusLabelRetrying           NodeStatusLabel = "retrying"
	NodeStatusLabelRunning            NodeStatusLabel = "running"
	NodeStatusLabelSkipped            NodeStatusLabel = "skipped"
	NodeStatusLabelSucceeded          NodeStatusLabel = "succeeded"
	NodeStatusLabelWaiting            NodeStatusLabel = "waiting"
)

// Defines values for NotificationEventType.
const (
	NotificationEventTypeDagRunAborted   NotificationEventType = "dag.run.aborted"
	NotificationEventTypeDagRunFailed    NotificationEventType = "dag.run.failed"
	NotificationEventTypeDagRunRejected  NotificationEventType = "dag.run.rejected"
	NotificationEventTypeDagRunSucceeded NotificationEventType = "dag.run.succeeded"
	NotificationEventTypeDagRunWaiting   NotificationEventType = "dag.run.waiting"
)

// Defines values for NotificationProviderType.
const (
	NotificationProviderTypeEmail    NotificationProviderType = "email"
	NotificationProviderTypeSlack    NotificationProviderType = "slack"
	NotificationProviderTypeTelegram NotificationProviderType = "telegram"
	NotificationProviderTypeWebhook  NotificationProviderType = "webhook"
)

// Defines values for NotificationRouteScope.
const (
	NotificationRouteScopeGlobal    NotificationRouteScope = "global"
	NotificationRouteScopeWorkspace NotificationRouteScope = "workspace"
)

// Defines values for ParamDefType.
const (
	ParamDefTypeBoolean ParamDefType = "boolean"
	ParamDefTypeInteger ParamDefType = "integer"
	ParamDefTypeNumber  ParamDefType = "number"
	ParamDefTypeString  ParamDefType = "string"
)

// Defines values for QueueType.
const (
	QueueTypeDagBased QueueType = "dag-based"
	QueueTypeGlobal   QueueType = "global"
)

// Defines values for RemoteNodeResponseAuthType.
const (
	RemoteNodeResponseAuthTypeBasic RemoteNodeResponseAuthType = "basic"
	RemoteNodeResponseAuthTypeNone  RemoteNodeResponseAuthType = "none"
	RemoteNodeResponseAuthTypeToken RemoteNodeResponseAuthType = "token"
)

// Defines values for RemoteNodeResponseSource.
const (
	RemoteNodeResponseSourceConfig RemoteNodeResponseSource = "config"
	RemoteNodeResponseSourceStore  RemoteNodeResponseSource = "store"
)

// Defines values for RepeatMode.
const (
	RepeatModeUntil RepeatMode = "until"
	RepeatModeWhile RepeatMode = "while"
)

// Defines values for ScheduleKind.
const (
	ScheduleKindAt   ScheduleKind = "at"
	ScheduleKindCron ScheduleKind = "cron"
)

// Defines values for SchedulerInstanceStatus.
const (
	SchedulerInstanceStatusActive   SchedulerInstanceStatus = "active"
	SchedulerInstanceStatusInactive SchedulerInstanceStatus = "inactive"
	SchedulerInstanceStatusUnknown  SchedulerInstanceStatus = "unknown"
)

// Defines values for SecretProviderType.
const (
	SecretProviderTypeAwsSecretsManager SecretProviderType = "aws-secrets-manager"
	SecretProviderTypeAzureKeyVault     SecretProviderType = "azure-key-vault"
	SecretProviderTypeDaguManaged       SecretProviderType = "dagu-managed"
	SecretProviderTypeGcpSecretManager  SecretProviderType = "gcp-secret-manager"
	SecretProviderTypeKubernetes        SecretProviderType = "kubernetes"
	SecretProviderTypeVault             SecretProviderType = "vault"
)

// Defines values for SecretStatus.
const (
	SecretStatusActive   SecretStatus = "active"
	SecretStatusDisabled SecretStatus = "disabled"
)

// Defines values for Status.
const (
	StatusAborted        Status = 3
	StatusFailed         Status = 2
	StatusNotStarted     Status = 0
	StatusPartialSuccess Status = 6
	StatusQueued         Status = 5
	StatusRejected       Status = 8
	StatusRunning        Status = 1
	StatusSuccess        Status = 4
	StatusWaiting        Status = 7
)

// Defines values for StatusLabel.
const (
	StatusLabelAborted            StatusLabel = "aborted"
	StatusLabelFailed             StatusLabel = "failed"
	StatusLabelNotStarted         StatusLabel = "not_started"
	StatusLabelPartiallySucceeded StatusLabel = "partially_succeeded"
	StatusLabelQueued             StatusLabel = "queued"
	StatusLabelRejected           StatusLabel = "rejected"
	StatusLabelRunning            StatusLabel = "running"
	StatusLabelSucceeded          StatusLabel = "succeeded"
	StatusLabelWaiting            StatusLabel = "waiting"
)

// Defines values for Stream.
const (
	StreamStderr Stream = "stderr"
	StreamStdout Stream = "stdout"
)

// Defines values for SyncAuthConfigType.
const (
	SyncAuthConfigTypeSsh   SyncAuthConfigType = "ssh"
	SyncAuthConfigTypeToken SyncAuthConfigType = "token"
)

// Defines values for SyncItemKind.
const (
	SyncItemKindConfig SyncItemKind = "config"
	SyncItemKindDag    SyncItemKind = "dag"
	SyncItemKindDoc    SyncItemKind = "doc"
	SyncItemKindMemory SyncItemKind = "memory"
	SyncItemKindSkill  SyncItemKind = "skill"
	SyncItemKindSoul   SyncItemKind = "soul"
)

// Defines values for SyncStatus.
const (
	SyncStatusConflict  SyncStatus = "conflict"
	SyncStatusMissing   SyncStatus = "missing"
	SyncStatusModified  SyncStatus = "modified"
	SyncStatusSynced    SyncStatus = "synced"
	SyncStatusUntracked SyncStatus = "untracked"
)

// Defines values for SyncSummary.
const (
	SyncSummaryConflict SyncSummary = "conflict"
	SyncSummaryError    SyncSummary = "error"
	SyncSummaryMissing  SyncSummary = "missing"
	SyncSummaryPending  SyncSummary = "pending"
	SyncSummarySynced   SyncSummary = "synced"
)

// Defines values for TriggerType.
const (
	TriggerTypeCatchup   TriggerType = "catchup"
	TriggerTypeManual    TriggerType = "manual"
	TriggerTypeRetry     TriggerType = "retry"
	TriggerTypeScheduler TriggerType = "scheduler"
	TriggerTypeSubdag    TriggerType = "subdag"
	TriggerTypeUnknown   TriggerType = "unknown"
	TriggerTypeWebhook   TriggerType = "webhook"
)

// Defines values for TunnelStatusResponseProvider.
const (
	TunnelStatusResponseProviderTailscale TunnelStatusResponseProvider = "tailscale"
)

// Defines values for TunnelStatusResponseStatus.
const (
	TunnelStatusResponseStatusConnected    TunnelStatusResponseStatus = "connected"
	TunnelStatusResponseStatusConnecting   TunnelStatusResponseStatus = "connecting"
	TunnelStatusResponseStatusDisabled     TunnelStatusResponseStatus = "disabled"
	TunnelStatusResponseStatusError        TunnelStatusResponseStatus = "error"
	TunnelStatusResponseStatusReconnecting TunnelStatusResponseStatus = "reconnecting"
)

// Defines values for UpdateModelConfigRequestProvider.
const (
	UpdateModelConfigRequestProviderAnthropic   UpdateModelConfigRequestProvider = "anthropic"
	UpdateModelConfigRequestProviderGemini      UpdateModelConfigRequestProvider = "gemini"
	UpdateModelConfigRequestProviderLocal       UpdateModelConfigRequestProvider = "local"
	UpdateModelConfigRequestProviderOpenai      UpdateModelConfigRequestProvider = "openai"
	UpdateModelConfigRequestProviderOpenaiCodex UpdateModelConfigRequestProvider = "openai-codex"
	UpdateModelConfigRequestProviderOpencode    UpdateModelConfigRequestProvider = "opencode"
	UpdateModelConfigRequestProviderOpenrouter  UpdateModelConfigRequestProvider = "openrouter"
	UpdateModelConfigRequestProviderZai         UpdateModelConfigRequestProvider = "zai"
)

// Defines values for UpdateModelConfigRequestThinkingEffort.
const (
	UpdateModelConfigRequestThinkingEffortHigh   UpdateModelConfigRequestThinkingEffort = "high"
	UpdateModelConfigRequestThinkingEffortLow    UpdateModelConfigRequestThinkingEffort = "low"
	UpdateModelConfigRequestThinkingEffortMedium UpdateModelConfigRequestThinkingEffort = "medium"
	UpdateModelConfigRequestThinkingEffortXhigh  UpdateModelConfigRequestThinkingEffort = "xhigh"
)

// Defines values for UpdateRemoteNodeRequestAuthType.
const (
	UpdateRemoteNodeRequestAuthTypeBasic UpdateRemoteNodeRequestAuthType = "basic"
	UpdateRemoteNodeRequestAuthTypeNone  UpdateRemoteNodeRequestAuthType = "none"
	UpdateRemoteNodeRequestAuthTypeToken UpdateRemoteNodeRequestAuthType = "token"
)

// Defines values for UserAuthProvider.
const (
	UserAuthProviderBuiltin UserAuthProvider = "builtin"
	UserAuthProviderOidc    UserAuthProvider = "oidc"
)

// Defines values for UserRole.
const (
	UserRoleAdmin     UserRole = "admin"
	UserRoleDeveloper UserRole = "developer"
	UserRoleManager   UserRole = "manager"
	UserRoleOperator  UserRole = "operator"
	UserRoleViewer    UserRole = "viewer"
)

// Defines values for WebhookAuthMode.
const (
	WebhookAuthModeHmacOnly     WebhookAuthMode = "hmac_only"
	WebhookAuthModeTokenAndHmac WebhookAuthMode = "token_and_hmac"
	WebhookAuthModeTokenOnly    WebhookAuthMode = "token_only"
)

// Defines values for WebhookHMACConfigureRequestAuthMode.
const (
	WebhookHMACConfigureRequestAuthModeHmacOnly     WebhookHMACConfigureRequestAuthMode = "hmac_only"
	WebhookHMACConfigureRequestAuthModeTokenAndHmac WebhookHMACConfigureRequestAuthMode = "token_and_hmac"
)

// Defines values for WebhookHMACEnforcementMode.
const (
	WebhookHMACEnforcementModeObserve WebhookHMACEnforcementMode = "observe"
	WebhookHMACEnforcementModeStrict  WebhookHMACEnforcementMode = "strict"
)

// Defines values for WorkerHealthStatus.
const (
	WorkerHealthStatusHealthy   WorkerHealthStatus = "healthy"
	WorkerHealthStatusUnhealthy WorkerHealthStatus = "unhealthy"
	WorkerHealthStatusWarning   WorkerHealthStatus = "warning"
)

// Defines values for AgentSessionPaginationMode.
const (
	AgentSessionPaginationModeCursor AgentSessionPaginationMode = "cursor"
	AgentSessionPaginationModeOffset AgentSessionPaginationMode = "offset"
)

// Defines values for EventLogPaginationMode.
const (
	EventLogPaginationModeCursor EventLogPaginationMode = "cursor"
	EventLogPaginationModeOffset EventLogPaginationMode = "offset"
)

// Defines values for ListAgentSessionsParamsPaginationMode.
const (
	ListAgentSessionsParamsPaginationModeCursor ListAgentSessionsParamsPaginationMode = "cursor"
	ListAgentSessionsParamsPaginationModeOffset ListAgentSessionsParamsPaginationMode = "offset"
)

// Defines values for ListDAGsParamsSort.
const (
	ListDAGsParamsSortName    ListDAGsParamsSort = "name"
	ListDAGsParamsSortNextRun ListDAGsParamsSort = "nextRun"
)

// Defines values for ListDAGsParamsOrder.
const (
	ListDAGsParamsOrderAsc  ListDAGsParamsOrder = "asc"
	ListDAGsParamsOrderDesc ListDAGsParamsOrder = "desc"
)

// Defines values for ListDocsParamsSort.
const (
	ListDocsParamsSortMtime ListDocsParamsSort = "mtime"
	ListDocsParamsSortName  ListDocsParamsSort = "name"
	ListDocsParamsSortType  ListDocsParamsSort = "type"
)

// Defines values for ListDocsParamsOrder.
const (
	ListDocsParamsOrderAsc  ListDocsParamsOrder = "asc"
	ListDocsParamsOrderDesc ListDocsParamsOrder = "desc"
)

// Defines values for ListEventLogsParamsPaginationMode.
const (
	ListEventLogsParamsPaginationModeCursor ListEventLogsParamsPaginationMode = "cursor"
	ListEventLogsParamsPaginationModeOffset ListEventLogsParamsPaginationMode = "offset"
)

// APIKey API key information
type APIKey struct {
	// CreatedAt Creation timestamp
	CreatedAt time.Time `json:"createdAt"`

	// CreatedBy Creator user ID
	CreatedBy string `json:"createdBy"`

	// Description Purpose description
	Description *string `json:"description,omitempty"`

	// Id Unique identifier
	Id string `json:"id"`

	// KeyPrefix First 8 characters for identification
	KeyPrefix string `json:"keyPrefix"`

	// LastUsedAt Last authentication timestamp
	LastUsedAt *time.Time `json:"lastUsedAt"`

	// Name Human-readable name
	Name string `json:"name"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role UserRole `json:"role"`

	// UpdatedAt Last update timestamp
	UpdatedAt time.Time `json:"updatedAt"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess WorkspaceAccess `json:"workspaceAccess"`
}

// APIKeyResponse API key response
type APIKeyResponse struct {
	// ApiKey API key information
	ApiKey APIKey `json:"apiKey"`
}

// APIKeysListResponse List of API keys
type APIKeysListResponse struct {
	ApiKeys []APIKey `json:"apiKeys"`
}

// AgentAuthProviderStatus Connection status for one subscription-backed agent auth provider
type AgentAuthProviderStatus struct {
	AccountId  *string    `json:"accountId,omitempty"`
	CanRefresh *bool      `json:"canRefresh,omitempty"`
	Connected  bool       `json:"connected"`
	ExpiresAt  *time.Time `json:"expiresAt,omitempty"`
	Id         string     `json:"id"`
	Name       string     `json:"name"`
}

// AgentBashPolicy Granular command policy for the bash tool
type AgentBashPolicy struct {
	// DefaultBehavior Behavior when no rule matches a command segment
	DefaultBehavior *AgentBashPolicyDefaultBehavior `json:"defaultBehavior,omitempty"`

	// DenyBehavior Behavior when a command segment is denied
	DenyBehavior *AgentBashPolicyDenyBehavior `json:"denyBehavior,omitempty"`
	Rules        *[]AgentBashRule             `json:"rules,omitempty"`
}

// AgentBashPolicyDefaultBehavior Behavior when no rule matches a command segment
type AgentBashPolicyDefaultBehavior string

// AgentBashPolicyDenyBehavior Behavior when a command segment is denied
type AgentBashPolicyDenyBehavior string

// AgentBashRule defines model for AgentBashRule.
type AgentBashRule struct {
	Action AgentBashRuleAction `json:"action"`

	// Enabled Rule enabled state (default: true when omitted)
	Enabled *bool   `json:"enabled,omitempty"`
	Name    *string `json:"name,omitempty"`

	// Pattern Regex pattern matched against each shell command segment
	Pattern string `json:"pattern"`
}

// AgentBashRuleAction defines model for AgentBashRule.Action.
type AgentBashRuleAction string

// AgentChatRequest Request to send a chat message to the agent
type AgentChatRequest struct {
	// DagContexts DAG references for context
	DagContexts *[]AgentDAGContext `json:"dagContexts,omitempty"`

	// Message User's input text
	Message string `json:"message"`

	// Model LLM model ID to use
	Model *string `json:"model,omitempty"`

	// SafeMode Enable approval prompts for dangerous commands
	SafeMode *bool `json:"safeMode,omitempty"`

	// SessionId Optional client-provided session ID (UUID v4) for idempotent creation. Only used by the create-session endpoint; ignored by the chat endpoint.
	SessionId *string `json:"sessionId,omitempty"`

	// SoulId Soul ID to use for this session (overrides default)
	SoulId *string `json:"soulId,omitempty"`
}

// AgentConfigResponse AI Agent configuration
type AgentConfigResponse struct {
	// DefaultModelId ID of the default model
	DefaultModelId *string `json:"defaultModelId,omitempty"`

	// Enabled Whether the AI agent is enabled
	Enabled *bool `json:"enabled,omitempty"`

	// SelectedSoulId ID of the currently selected soul
	SelectedSoulId *string `json:"selectedSoulId"`

	// ToolPolicy Global tool permission policy for AI agent sessions
	ToolPolicy *AgentToolPolicy `json:"toolPolicy,omitempty"`

	// WebSearch Provider-native web search configuration for agent sessions
	WebSearch *AgentWebSearchConfig `json:"webSearch,omitempty"`

	// WebTools First-class web_search and web_extract tool configuration
	WebTools *AgentWebToolsConfig `json:"webTools,omitempty"`
}

// AgentDAGContext DAG reference for context-aware agent responses
type AgentDAGContext struct {
	// DagFile DAG file path or name
	DagFile string `json:"dagFile"`

	// DagRunId Specific run ID of the DAG
	DagRunId *string `json:"dagRunId,omitempty"`
}

// AgentDAGMemoryResponse DAG-specific memory content
type AgentDAGMemoryResponse struct {
	Content string `json:"content"`

	// DagName Name of the DAG
	DagName DAGName `json:"dagName"`
}

// AgentDelegateSnapshot Snapshot of a delegate sub-agent's lifecycle state
type AgentDelegateSnapshot struct {
	Cost   *float64                    `json:"cost,omitempty"`
	Id     string                      `json:"id"`
	Status AgentDelegateSnapshotStatus `json:"status"`
	Task   string                      `json:"task"`
}

// AgentDelegateSnapshotStatus defines model for AgentDelegateSnapshot.Status.
type AgentDelegateSnapshotStatus string

// AgentFirecrawlWebToolsConfig Firecrawl web tool settings
type AgentFirecrawlWebToolsConfig struct {
	// ApiKey Firecrawl API key. Write-only; omitted from responses.
	ApiKey *string `json:"apiKey,omitempty"`

	// ApiKeyConfigured Whether a Firecrawl API key is stored
	ApiKeyConfigured *bool `json:"apiKeyConfigured,omitempty"`

	// BaseUrl Optional Firecrawl-compatible base URL
	BaseUrl *string `json:"baseUrl,omitempty"`

	// ClearApiKey Clear the stored Firecrawl API key when true
	ClearApiKey *bool `json:"clearApiKey,omitempty"`

	// MaxResults Maximum search results allowed per web_search call
	MaxResults *int `json:"maxResults,omitempty"`
}

// AgentMemoryResponse Agent memory overview
type AgentMemoryResponse struct {
	// DagMemories List of DAG names that have memory files
	DagMemories *[]DAGName `json:"dagMemories,omitempty"`

	// GlobalMemory Content of global MEMORY.md
	GlobalMemory *string `json:"globalMemory,omitempty"`

	// MemoryDir Root memory directory path
	MemoryDir *string `json:"memoryDir,omitempty"`
}

// AgentMessage A message in an agent session
type AgentMessage struct {
	Content     *string            `json:"content,omitempty"`
	Cost        *float64           `json:"cost,omitempty"`
	CreatedAt   time.Time          `json:"createdAt"`
	DelegateIds *[]string          `json:"delegateIds,omitempty"`
	Id          string             `json:"id"`
	SequenceId  int64              `json:"sequenceId"`
	SessionId   string             `json:"sessionId"`
	ToolCalls   *[]AgentToolCall   `json:"toolCalls,omitempty"`
	ToolResults *[]AgentToolResult `json:"toolResults,omitempty"`
	Type        AgentMessageType   `json:"type"`

	// UiAction UI action to be performed
	UiAction *AgentUIAction `json:"uiAction,omitempty"`

	// Usage Token usage statistics from LLM
	Usage *AgentTokenUsage `json:"usage,omitempty"`

	// UserPrompt Question from the agent requiring user response
	UserPrompt *AgentUserPrompt `json:"userPrompt,omitempty"`
}

// AgentMessageType defines model for AgentMessage.Type.
type AgentMessageType string

// AgentSession Agent chat session metadata
type AgentSession struct {
	CreatedAt       time.Time `json:"createdAt"`
	DagName         *string   `json:"dagName,omitempty"`
	DelegateTask    *string   `json:"delegateTask,omitempty"`
	Id              string    `json:"id"`
	ParentSessionId *string   `json:"parentSessionId,omitempty"`
	Title           *string   `json:"title,omitempty"`
	UpdatedAt       time.Time `json:"updatedAt"`
	UserId          *string   `json:"userId,omitempty"`
}

// AgentSessionDetailResponse Session details including messages and current state
type AgentSessionDetailResponse struct {
	Delegates *[]AgentDelegateSnapshot `json:"delegates,omitempty"`
	Messages  []AgentMessage           `json:"messages"`

	// Session Agent chat session metadata
	Session AgentSession `json:"session"`

	// SessionState Current processing state of an agent session
	SessionState AgentSessionState `json:"sessionState"`
}

// AgentSessionState Current processing state of an agent session
type AgentSessionState struct {
	// HasPendingPrompt Whether the agent is waiting for user input
	HasPendingPrompt *bool   `json:"hasPendingPrompt,omitempty"`
	Model            *string `json:"model,omitempty"`
	SessionId        string  `json:"sessionId"`

	// TotalCost Total accumulated cost in USD
	TotalCost float64 `json:"totalCost"`
	Working   bool    `json:"working"`
}

// AgentSessionWithState defines model for AgentSessionWithState.
type AgentSessionWithState struct {
	// HasPendingPrompt Whether the agent is waiting for user input
	HasPendingPrompt *bool   `json:"hasPendingPrompt,omitempty"`
	Model            *string `json:"model,omitempty"`

	// Session Agent chat session metadata
	Session   AgentSession `json:"session"`
	SessionId string       `json:"sessionId"`

	// TotalCost Total accumulated cost in USD
	TotalCost float64 `json:"totalCost"`
	Working   bool    `json:"working"`
}

// AgentStatusResponse Simple status response
type AgentStatusResponse struct {
	Status string `json:"status"`
}

// AgentTavilyWebToolsConfig Tavily web tool settings
type AgentTavilyWebToolsConfig struct {
	// ApiKey Tavily API key. Write-only; omitted from responses.
	ApiKey *string `json:"apiKey,omitempty"`

	// ApiKeyConfigured Whether a Tavily API key is stored
	ApiKeyConfigured *bool `json:"apiKeyConfigured,omitempty"`

	// BaseUrl Optional Tavily-compatible base URL
	BaseUrl *string `json:"baseUrl,omitempty"`

	// ClearApiKey Clear the stored Tavily API key when true
	ClearApiKey *bool `json:"clearApiKey,omitempty"`

	// MaxResults Maximum search results allowed per web_search call
	MaxResults *int `json:"maxResults,omitempty"`

	// SearchDepth Tavily search depth
	SearchDepth *AgentTavilyWebToolsConfigSearchDepth `json:"searchDepth,omitempty"`
}

// AgentTavilyWebToolsConfigSearchDepth Tavily search depth
type AgentTavilyWebToolsConfigSearchDepth string

// AgentTokenUsage Token usage statistics from LLM
type AgentTokenUsage struct {
	CompletionTokens *int `json:"completionTokens,omitempty"`
	PromptTokens     *int `json:"promptTokens,omitempty"`
	TotalTokens      *int `json:"totalTokens,omitempty"`
}

// AgentToolCall Tool call requested by the LLM
type AgentToolCall struct {
	// Function Function call details in a tool call
	Function AgentToolCallFunction `json:"function"`
	Id       string                `json:"id"`
	Type     string                `json:"type"`
}

// AgentToolCallFunction Function call details in a tool call
type AgentToolCallFunction struct {
	Arguments string `json:"arguments"`
	Name      string `json:"name"`
}

// AgentToolInfo Metadata for a registered agent tool
type AgentToolInfo struct {
	Description string `json:"description"`
	Label       string `json:"label"`
	Name        string `json:"name"`
}

// AgentToolPolicy Global tool permission policy for AI agent sessions
type AgentToolPolicy struct {
	// Bash Granular command policy for the bash tool
	Bash *AgentBashPolicy `json:"bash,omitempty"`

	// Tools Per-tool enable/disable map
	Tools *map[string]bool `json:"tools,omitempty"`
}

// AgentToolResult Result from a tool execution
type AgentToolResult struct {
	Content    string `json:"content"`
	IsError    *bool  `json:"isError,omitempty"`
	ToolCallId string `json:"toolCallId"`
}

// AgentUIAction UI action to be performed
type AgentUIAction struct {
	Path *string `json:"path,omitempty"`
	Type string  `json:"type"`
}

// AgentUserPrompt Question from the agent requiring user response
type AgentUserPrompt struct {
	AllowFreeText       bool                       `json:"allowFreeText"`
	Command             *string                    `json:"command,omitempty"`
	FreeTextPlaceholder *string                    `json:"freeTextPlaceholder,omitempty"`
	MultiSelect         bool                       `json:"multiSelect"`
	Options             *[]AgentUserPromptOption   `json:"options,omitempty"`
	PromptId            string                     `json:"promptId"`
	PromptType          *AgentUserPromptPromptType `json:"promptType,omitempty"`
	Question            string                     `json:"question"`
	WorkingDir          *string                    `json:"workingDir,omitempty"`
}

// AgentUserPromptPromptType defines model for AgentUserPrompt.PromptType.
type AgentUserPromptPromptType string

// AgentUserPromptOption Single option in a user prompt
type AgentUserPromptOption struct {
	Description *string `json:"description,omitempty"`
	Id          string  `json:"id"`
	Label       string  `json:"label"`
}

// AgentUserPromptResponse User's response to an agent prompt
type AgentUserPromptResponse struct {
	Cancelled         *bool     `json:"cancelled,omitempty"`
	FreeTextResponse  *string   `json:"freeTextResponse,omitempty"`
	PromptId          string    `json:"promptId"`
	SelectedOptionIds *[]string `json:"selectedOptionIds,omitempty"`
}

// AgentWebSearchConfig Provider-native web search configuration for agent sessions
type AgentWebSearchConfig struct {
	// Enabled Whether provider-native web search is enabled
	Enabled *bool `json:"enabled,omitempty"`

	// MaxUses Maximum number of search invocations per request
	MaxUses *int `json:"maxUses,omitempty"`
}

// AgentWebToolsBackend Backend provider for agent web tools
type AgentWebToolsBackend string

// AgentWebToolsConfig First-class web_search and web_extract tool configuration
type AgentWebToolsConfig struct {
	// Backend Backend provider for agent web tools
	Backend *AgentWebToolsBackend `json:"backend,omitempty"`

	// Enabled Whether provider-backed web tools are enabled
	Enabled *bool `json:"enabled,omitempty"`

	// Firecrawl Firecrawl web tool settings
	Firecrawl *AgentFirecrawlWebToolsConfig `json:"firecrawl,omitempty"`

	// Tavily Tavily web tool settings
	Tavily *AgentTavilyWebToolsConfig `json:"tavily,omitempty"`
}

// ApprovalConfig Configuration for a human approval gate on a step
type ApprovalConfig struct {
	// Input List of expected input field names from the approver
	Input *[]string `json:"input,omitempty"`

	// Prompt Message displayed to the approver
	Prompt *string `json:"prompt,omitempty"`

	// Required Subset of input fields that must be provided
	Required *[]string `json:"required,omitempty"`

	// RewindTo Optional step name to restart from when the approver pushes the step back. Must reference the step itself or an upstream dependency.
	RewindTo *string `json:"rewindTo,omitempty"`
}

// ApproveStepRequest Request body for approving a waiting step
type ApproveStepRequest struct {
	// Inputs Key-value parameters to provide. These will be available as environment variables in subsequent steps.
	Inputs *map[string]string `json:"inputs,omitempty"`
}

// ApproveStepResponse Response after approving a waiting step
type ApproveStepResponse struct {
	// DagRunId The DAG run ID
	DagRunId string `json:"dagRunId"`

	// Resumed Whether the DAG run was re-enqueued for execution
	Resumed bool `json:"resumed"`

	// StepName The approved step name
	StepName string `json:"stepName"`
}

// ArtifactNodeType Artifact tree node type
type ArtifactNodeType string

// ArtifactPreviewKind Preview mode for an artifact file
type ArtifactPreviewKind string

// ArtifactPreviewResponse Preview metadata and optional inline content for a DAG-run artifact file
type ArtifactPreviewResponse struct {
	// Content Inline preview content for markdown or text artifacts
	Content *string `json:"content,omitempty"`

	// Kind Preview mode for an artifact file
	Kind ArtifactPreviewKind `json:"kind"`

	// MimeType Detected MIME type for the artifact file
	MimeType string `json:"mimeType"`

	// Name Artifact file name
	Name string `json:"name"`

	// Path Relative artifact file path
	Path string `json:"path"`

	// Size Artifact file size in bytes
	Size int64 `json:"size"`

	// TooLarge Whether the artifact exceeds the inline preview size limit
	TooLarge bool `json:"tooLarge"`

	// Truncated Whether inline text content was truncated for preview
	Truncated bool `json:"truncated"`
}

// ArtifactTreeNode A single file or directory in a DAG-run artifact tree
type ArtifactTreeNode struct {
	// Children Nested artifact entries when this node is a directory
	Children *[]ArtifactTreeNode `json:"children,omitempty"`

	// Name Display name of the artifact entry
	Name string `json:"name"`

	// Path Relative path of the artifact entry within the artifact directory
	Path string `json:"path"`

	// Size Size of the artifact file in bytes
	Size *int64 `json:"size,omitempty"`

	// Type Artifact tree node type
	Type ArtifactNodeType `json:"type"`
}

// ArtifactTreeResponse Artifact tree for a DAG-run
type ArtifactTreeResponse struct {
	Items []ArtifactTreeNode `json:"items"`
}

// AuditEntry A single audit log entry
type AuditEntry struct {
	// Action The action that was performed (e.g., session_start, command, login)
	Action string `json:"action"`

	// Category Category of the audit event (e.g., terminal, user, dag)
	Category string `json:"category"`

	// Details JSON-encoded action-specific details
	Details *string `json:"details,omitempty"`

	// Id Unique identifier for this entry
	Id string `json:"id"`

	// IpAddress Client IP address if available
	IpAddress *string `json:"ipAddress,omitempty"`

	// Timestamp When the event occurred
	Timestamp time.Time `json:"timestamp"`

	// UserId ID of the user who performed the action
	UserId string `json:"userId"`

	// Username Username of the user who performed the action
	Username string `json:"username"`
}

// AuditLogsResponse Response containing audit log entries
type AuditLogsResponse struct {
	// Entries List of audit log entries
	Entries []AuditEntry `json:"entries"`

	// Total Total number of entries matching the filter (before pagination)
	Total int `json:"total"`
}

// ChangePasswordRequest Request body for changing password
type ChangePasswordRequest struct {
	// CurrentPassword Current password for verification
	CurrentPassword string `json:"currentPassword"`

	// NewPassword New password to set
	NewPassword string `json:"newPassword"`
}

// ChatMessage A single chat message in an LLM session
type ChatMessage struct {
	// Content Message content
	Content string `json:"content"`

	// Metadata Metadata about an LLM API call
	Metadata *ChatMessageMetadata `json:"metadata,omitempty"`

	// Role Message role in the session
	Role ChatMessageRole `json:"role"`

	// ToolCalls Tool calls made by the assistant (only for assistant messages)
	ToolCalls *[]ChatToolCall `json:"toolCalls,omitempty"`
}

// ChatMessageRole Message role in the session
type ChatMessageRole string

// ChatMessageMetadata Metadata about an LLM API call
type ChatMessageMetadata struct {
	// CompletionTokens Number of tokens in the completion
	CompletionTokens *int `json:"completionTokens,omitempty"`

	// Model Model identifier used
	Model *string `json:"model,omitempty"`

	// PromptTokens Number of tokens in the prompt
	PromptTokens *int `json:"promptTokens,omitempty"`

	// Provider LLM provider (openai, anthropic, gemini, etc.)
	Provider *string `json:"provider,omitempty"`

	// TotalTokens Total tokens (prompt + completion)
	TotalTokens *int `json:"totalTokens,omitempty"`
}

// ChatMessagesResponse Response containing chat messages for a step
type ChatMessagesResponse struct {
	// HasMore True if step is still running and more messages may arrive
	HasMore bool `json:"hasMore"`

	// Messages List of chat messages
	Messages []ChatMessage `json:"messages"`

	// StepStatus Numeric status code indicating current node state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Skipped"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	// 9: "Retrying"
	StepStatus NodeStatus `json:"stepStatus"`

	// StepStatusLabel Human-readable status description for the node
	StepStatusLabel NodeStatusLabel `json:"stepStatusLabel"`

	// ToolDefinitions Tool definitions that were available to the LLM
	ToolDefinitions *[]ToolDefinition `json:"toolDefinitions,omitempty"`
}

// ChatToolCall A tool call requested by the LLM
type ChatToolCall struct {
	// Arguments JSON string of tool arguments
	Arguments *string `json:"arguments,omitempty"`

	// Id Unique identifier for this tool call
	Id string `json:"id"`

	// Name Name of the tool being called
	Name string `json:"name"`
}

// CommandEntry A command with its arguments
type CommandEntry struct {
	// Args Arguments for the command
	Args *[]string `json:"args,omitempty"`

	// Command The command to execute
	Command string `json:"command"`
}

// CompleteAgentAuthProviderLoginRequest Complete a manual OAuth login flow
type CompleteAgentAuthProviderLoginRequest struct {
	Code        *string `json:"code,omitempty"`
	FlowId      string  `json:"flowId"`
	RedirectUrl *string `json:"redirectUrl,omitempty"`
	union       json.RawMessage
}

// CompleteAgentAuthProviderLoginRequest0 defines model for .
type CompleteAgentAuthProviderLoginRequest0 = interface{}

// CompleteAgentAuthProviderLoginRequest1 defines model for .
type CompleteAgentAuthProviderLoginRequest1 = interface{}

// CompleteAgentAuthProviderLoginResponse Updated provider status after login completion
type CompleteAgentAuthProviderLoginResponse struct {
	// Provider Connection status for one subscription-backed agent auth provider
	Provider AgentAuthProviderStatus `json:"provider"`
}

// Condition Precondition that must be satisfied before running a step or DAG-run
type Condition struct {
	// Condition Expression or check to evaluate. When `expected` is omitted, the value runs as a command check using the same variable expansion rules as shell `command` steps.
	Condition string `json:"condition"`

	// Error Error message if the condition is not met
	Error *string `json:"error,omitempty"`

	// Expected Expected result of the condition evaluation. When set, Dagu compares the evaluated string output instead of using command exit status.
	Expected *string `json:"expected,omitempty"`

	// Matched Whether the condition was met
	Matched *bool `json:"matched,omitempty"`

	// Negate If true, inverts the condition result (run when condition does NOT match)
	Negate *bool `json:"negate,omitempty"`
}

// CoordinatorInstance Coordinator instance status information
type CoordinatorInstance struct {
	// Host Hostname where coordinator is running
	Host string `json:"host"`

	// InstanceId Unique identifier of the coordinator instance
	InstanceId string `json:"instanceId"`

	// Port Port number the coordinator is listening on
	Port int `json:"port"`

	// StartedAt RFC3339 timestamp when coordinator started
	StartedAt string `json:"startedAt"`

	// Status Coordinator status
	Status CoordinatorInstanceStatus `json:"status"`
}

// CoordinatorInstanceStatus Coordinator status
type CoordinatorInstanceStatus string

// CoordinatorStatusResponse Response containing status of all coordinator instances
type CoordinatorStatusResponse struct {
	// Coordinators List of all registered coordinator instances
	Coordinators []CoordinatorInstance `json:"coordinators"`
}

// CreateAPIKeyRequest Create API key request
type CreateAPIKeyRequest struct {
	// Description Purpose description
	Description *string `json:"description,omitempty"`

	// Name Human-readable name
	Name string `json:"name"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role UserRole `json:"role"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess *WorkspaceAccess `json:"workspaceAccess,omitempty"`
}

// CreateAPIKeyResponse Create API key response
type CreateAPIKeyResponse struct {
	// ApiKey API key information
	ApiKey APIKey `json:"apiKey"`

	// Key Full key secret, only returned once
	Key string `json:"key"`
}

// CreateAgentSessionResponse Response after creating a new agent session
type CreateAgentSessionResponse struct {
	SessionId string `json:"sessionId"`
	Status    string `json:"status"`
}

// CreateDocRequest Request to create a new document
type CreateDocRequest struct {
	// Content Full file content including optional YAML frontmatter
	Content string `json:"content"`

	// Id Relative document path (without extension), e.g. runbooks/deploy-guide. Must not start with / or contain ..
	Id DocPath `json:"id"`
}

// CreateModelConfigRequest Request to create a new model configuration
type CreateModelConfigRequest struct {
	ApiKey        *string `json:"apiKey,omitempty"`
	BaseUrl       *string `json:"baseUrl,omitempty"`
	ContextWindow *int    `json:"contextWindow,omitempty"`
	Description   *string `json:"description,omitempty"`

	// Id Optional custom ID (auto-generated from name if omitted)
	Id               *string                                 `json:"id,omitempty"`
	InputCostPer1M   *float64                                `json:"inputCostPer1M,omitempty"`
	MaxOutputTokens  *int                                    `json:"maxOutputTokens,omitempty"`
	Model            string                                  `json:"model"`
	Name             string                                  `json:"name"`
	OutputCostPer1M  *float64                                `json:"outputCostPer1M,omitempty"`
	Provider         CreateModelConfigRequestProvider        `json:"provider"`
	SupportsThinking *bool                                   `json:"supportsThinking,omitempty"`
	ThinkingEffort   *CreateModelConfigRequestThinkingEffort `json:"thinkingEffort,omitempty"`
}

// CreateModelConfigRequestProvider defines model for CreateModelConfigRequest.Provider.
type CreateModelConfigRequestProvider string

// CreateModelConfigRequestThinkingEffort defines model for CreateModelConfigRequest.ThinkingEffort.
type CreateModelConfigRequestThinkingEffort string

// CreateRemoteNodeRequest defines model for CreateRemoteNodeRequest.
type CreateRemoteNodeRequest struct {
	// ApiBaseUrl Base URL of the remote Dagu instance API
	ApiBaseUrl string `json:"apiBaseUrl"`

	// AuthToken Bearer token for token auth
	AuthToken *string `json:"authToken,omitempty"`

	// AuthType Authentication mode
	AuthType *CreateRemoteNodeRequestAuthType `json:"authType,omitempty"`

	// BasicAuthPassword Password for basic auth
	BasicAuthPassword *string `json:"basicAuthPassword,omitempty"`

	// BasicAuthUsername Username for basic auth
	BasicAuthUsername *string `json:"basicAuthUsername,omitempty"`

	// Description Optional description
	Description *string `json:"description,omitempty"`

	// Name Display name for the remote node
	Name string `json:"name"`

	// SkipTlsVerify Skip TLS certificate verification
	SkipTlsVerify *bool `json:"skipTlsVerify,omitempty"`
}

// CreateRemoteNodeRequestAuthType Authentication mode
type CreateRemoteNodeRequestAuthType string

// CreateSecretRequest defines model for CreateSecretRequest.
type CreateSecretRequest struct {
	Description  *string                         `json:"description,omitempty"`
	ProviderType CreateSecretRequestProviderType `json:"providerType"`

	// Ref Secret ref used from DAG YAML, for example prod/db-password.
	Ref string `json:"ref"`

	// Value Initial Dagu-managed value. Write-only; never returned by the API.
	Value *string `json:"value,omitempty"`

	// Workspace Secret scope for management. Use global for workspace-less secrets or a workspace name. Omit for global.
	Workspace *string `json:"workspace,omitempty"`
}

// CreateSecretRequestProviderType defines model for CreateSecretRequest.ProviderType.
type CreateSecretRequestProviderType string

// CreateSoulRequest Request to create a new soul
type CreateSoulRequest struct {
	// Content Markdown body content (identity definition)
	Content     string  `json:"content"`
	Description *string `json:"description,omitempty"`

	// Id Optional custom ID (auto-generated from name if omitted)
	Id   *string `json:"id,omitempty"`
	Name string  `json:"name"`
}

// CreateUserRequest Request body for creating a new user
type CreateUserRequest struct {
	// Password User's password
	Password string `json:"password"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role UserRole `json:"role"`

	// Username Unique username
	Username string `json:"username"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess *WorkspaceAccess `json:"workspaceAccess,omitempty"`
}

// CreateWorkspaceRequest defines model for CreateWorkspaceRequest.
type CreateWorkspaceRequest struct {
	Description *string `json:"description,omitempty"`

	// Name Workspace name. The reserved names all and default are not allowed.
	Name WorkspaceName `json:"name"`
}

// DAG Core DAG configuration containing definition and metadata
type DAG struct {
	// DefaultParams Default parameter values in JSON format if not specified at DAG-run creation
	DefaultParams *string `json:"defaultParams,omitempty"`

	// Description Human-readable description of the DAG's purpose and behavior
	Description *string `json:"description,omitempty"`

	// Group Logical grouping of related DAGs for organizational purposes
	Group *string `json:"group,omitempty"`

	// Labels List of labels for categorizing and filtering DAGs
	Labels *[]string `json:"labels,omitempty"`

	// MaxActiveRuns DEPRECATED: This field is ignored for local (DAG-based) queues. For concurrency control, use global queues
	// Deprecated: For concurrency control, configure global queues in config.yaml instead
	MaxActiveRuns *int `json:"maxActiveRuns,omitempty"`

	// Name Logical name of the DAG
	Name string `json:"name"`

	// Params List of parameter names that can be passed to DAG-runs created from this DAG
	Params *[]string `json:"params,omitempty"`

	// Queue Name of the queue this DAG is assigned to. If not specified, the DAG name itself becomes the queue name
	Queue *string `json:"queue,omitempty"`

	// Resources Resource limits requested for a DAG run
	Resources *DAGResources `json:"resources,omitempty"`

	// RunConfig Configuration for controlling user interactions when starting DAG runs
	RunConfig *RunConfig `json:"runConfig,omitempty"`

	// Schedule List of scheduling expressions defining when DAG-runs should be created from this DAG
	Schedule *[]Schedule `json:"schedule,omitempty"`

	// Tags Deprecated alias for labels. List of labels for categorizing and filtering DAGs
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *[]string `json:"tags,omitempty"`

	// Workspace Workspace label value for the DAG. Omitted for default DAGs and invalid workspace labels.
	Workspace *string `json:"workspace,omitempty"`
}

// DAGArtifactsConfig Configuration for DAG run artifact storage
type DAGArtifactsConfig struct {
	// Dir Base directory for storing artifacts for this DAG when explicitly configured
	Dir *string `json:"dir,omitempty"`

	// Enabled Whether artifact storage is enabled for this DAG
	Enabled bool `json:"enabled"`
}

// DAGDetails Detailed DAG configuration information
type DAGDetails struct {
	// Artifacts Configuration for DAG run artifact storage
	Artifacts *DAGArtifactsConfig `json:"artifacts,omitempty"`

	// DefaultParams Default parameter values in JSON format if not specified at DAG-run creation
	DefaultParams *string `json:"defaultParams,omitempty"`

	// Delay Time in seconds to wait before starting a DAG-run
	Delay *int `json:"delay,omitempty"`

	// Description Human-readable description of the DAG's purpose and behavior
	Description *string `json:"description,omitempty"`

	// Env List of environment variables to set before executing a DAG-run
	Env *[]string `json:"env,omitempty"`

	// Group Logical grouping of related DAGs for organizational purposes
	Group *string `json:"group,omitempty"`

	// HandlerOn Configuration for event handlers in a DAG-run
	HandlerOn *HandlerOn `json:"handlerOn,omitempty"`

	// HistRetentionDays Number of days to retain historical logs
	HistRetentionDays *int `json:"histRetentionDays,omitempty"`

	// HistRetentionRuns Number of DAG runs to retain historical logs. Mutually exclusive with histRetentionDays.
	HistRetentionRuns *int `json:"histRetentionRuns,omitempty"`

	// Labels List of labels for categorizing and filtering DAGs
	Labels *[]string `json:"labels,omitempty"`

	// LogDir Directory path for storing log files
	LogDir *string `json:"logDir,omitempty"`

	// MaxActiveRuns DEPRECATED: This field is ignored for local (DAG-based) queues. For concurrency control, use global queues
	// Deprecated: For concurrency control, configure global queues in config.yaml instead
	MaxActiveRuns *int `json:"maxActiveRuns,omitempty"`

	// MaxActiveSteps Maximum number of concurrent steps allowed in a DAG run
	MaxActiveSteps *int `json:"maxActiveSteps,omitempty"`

	// Name Unique identifier for the DAG within its group
	Name string `json:"name"`

	// NextRun Scheduler-aware next planned run time. Pending overdue one-offs remain visible until consumed.
	NextRun *time.Time `json:"nextRun,omitempty"`

	// ParamDefs Ordered parameter definitions derived from DAG params for typed UI rendering and validation
	ParamDefs *[]ParamDef `json:"paramDefs,omitempty"`

	// ParamSchema Resolved JSON Schema for schema-backed DAG params when safe for direct UI form rendering
	ParamSchema *map[string]interface{} `json:"paramSchema,omitempty"`

	// Params List of parameter names that can be passed to DAG-runs created from this DAG
	Params *[]string `json:"params,omitempty"`

	// Preconditions Conditions that must be met before a DAG-run can start
	Preconditions *[]Condition `json:"preconditions,omitempty"`

	// Queue Name of the queue this DAG is assigned to. If not specified, the DAG name itself becomes the queue name
	Queue *string `json:"queue,omitempty"`

	// Resources Resource limits requested for a DAG run
	Resources *DAGResources `json:"resources,omitempty"`

	// RunConfig Configuration for controlling user interactions when starting DAG runs
	RunConfig *RunConfig `json:"runConfig,omitempty"`

	// Schedule List of scheduling expressions defining when DAG-runs should be created from this DAG
	Schedule *[]Schedule `json:"schedule,omitempty"`

	// Steps List of steps to execute in DAG-runs created from this DAG
	Steps *[]Step `json:"steps,omitempty"`

	// Tags Deprecated alias for labels. List of labels for categorizing and filtering DAGs
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *[]string `json:"tags,omitempty"`
}

// DAGEditorHints Editor-only metadata used to synthesize per-document schema hints
type DAGEditorHints struct {
	// InheritedCustomActions Custom actions inherited from base config and available to the current DAG
	InheritedCustomActions *[]InheritedCustomActionHint `json:"inheritedCustomActions,omitempty"`

	// InheritedLegacyDefinitions Deprecated legacy execution definitions inherited from base config and available to the current DAG
	InheritedLegacyDefinitions []InheritedLegacyDefinitionHint `json:"inheritedLegacyDefinitions"`
}

// DAGFile DAG file with its status information
type DAGFile struct {
	// Dag Core DAG configuration containing definition and metadata
	Dag DAG `json:"dag"`

	// Errors List of errors encountered during the request
	Errors []string `json:"errors"`

	// FileName File ID of the DAG file
	FileName string `json:"fileName"`

	// FilePath Absolute file path of the DAG file on disk
	FilePath *string `json:"filePath,omitempty"`

	// LatestDAGRun Current status of a DAG-run
	LatestDAGRun DAGRunSummary `json:"latestDAGRun"`

	// NextRun Scheduler-aware next planned run time. Pending overdue one-offs remain visible until consumed.
	NextRun *time.Time `json:"nextRun,omitempty"`

	// Suspended Whether the DAG is suspended
	Suspended bool `json:"suspended"`
}

// DAGFileName Name of the DAG file
type DAGFileName = string

// DAGGridItem Grid item for visualizing DAG-run execution history
type DAGGridItem struct {
	// History Status of the step ordered by time
	History []NodeStatus `json:"history"`

	// Name Name of the step
	Name string `json:"name"`
}

// DAGName Name of the DAG
type DAGName = string

// DAGNotificationSettings Server-side DAG notification settings
type DAGNotificationSettings struct {
	CreatedAt time.Time `json:"createdAt"`

	// DagName Name of the DAG these settings apply to
	DagName string `json:"dagName"`

	// Enabled Whether notification delivery is enabled for this DAG
	Enabled bool `json:"enabled"`

	// Events DAG run events that trigger notifications
	Events []NotificationEventType `json:"events"`

	// Id Stable settings ID
	Id string `json:"id"`

	// Subscriptions Notification channels subscribed by this DAG
	Subscriptions []NotificationSubscription `json:"subscriptions"`

	// Targets DAG-local notification targets kept for backward compatibility
	Targets   []NotificationTarget `json:"targets"`
	UpdatedAt time.Time            `json:"updatedAt"`

	// UpdatedBy User ID that last updated the settings
	UpdatedBy *string `json:"updatedBy,omitempty"`
}

// DAGResourceLimits CPU and memory limits requested for a DAG run
type DAGResourceLimits struct {
	// Cpu CPU limit as cores (for example, "2" or "0.5") or millicores (for example, "500m")
	Cpu *string `json:"cpu,omitempty"`

	// Memory Memory limit in bytes or with a unit suffix (for example, "512Mi", "1Gi", or "2G")
	Memory *string `json:"memory,omitempty"`
}

// DAGResources Resource limits requested for a DAG run
type DAGResources struct {
	// Limits CPU and memory limits requested for a DAG run
	Limits *DAGResourceLimits `json:"limits,omitempty"`
}

// DAGRunCreateId Unique identifier for a newly-created DAG-run. The special value 'latest' is not allowed.
type DAGRunCreateId = string

// DAGRunDetails defines model for DAGRunDetails.
type DAGRunDetails struct {
	// ArtifactsAvailable Whether artifact files are available for this DAG-run
	ArtifactsAvailable bool `json:"artifactsAvailable"`

	// AutoRetryCount Number of scheduler-issued DAG auto-retries already consumed for this DAG-run
	AutoRetryCount int `json:"autoRetryCount"`

	// AutoRetryLimit Configured DAG-level automatic retry limit captured for this DAG-run; null when DAG-level automatic retry is not configured
	AutoRetryLimit *int `json:"autoRetryLimit"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// FinishedAt RFC 3339 timestamp when the DAG-run finished
	FinishedAt string `json:"finishedAt"`

	// Labels List of labels for categorizing and filtering DAG runs
	Labels *[]string `json:"labels,omitempty"`

	// Log Path to the log file
	Log string `json:"log"`

	// Name Name of the DAG
	Name DAGName `json:"name"`

	// Nodes Status of individual steps within the DAG-run
	Nodes []Node `json:"nodes"`

	// OnAbort Status of an individual step within a DAG-run
	OnAbort *Node `json:"onAbort,omitempty"`

	// OnExit Status of an individual step within a DAG-run
	OnExit *Node `json:"onExit,omitempty"`

	// OnFailure Status of an individual step within a DAG-run
	OnFailure *Node `json:"onFailure,omitempty"`

	// OnSuccess Status of an individual step within a DAG-run
	OnSuccess *Node `json:"onSuccess,omitempty"`

	// Params Runtime parameters passed to the DAG-run in JSON format
	Params         *string `json:"params,omitempty"`
	ParentDAGRunId *string `json:"parentDAGRunId,omitempty"`

	// ParentDAGRunName Name of the parent DAG-run
	ParentDAGRunName *string `json:"parentDAGRunName,omitempty"`

	// Preconditions List of preconditions that must be met before the DAG-run can start
	Preconditions *[]Condition `json:"preconditions,omitempty"`

	// QueuedAt RFC 3339 timestamp when the DAG-run was queued
	QueuedAt     *string `json:"queuedAt,omitempty"`
	RootDAGRunId string  `json:"rootDAGRunId"`

	// RootDAGRunName Name of the root DAG-run
	RootDAGRunName string `json:"rootDAGRunName"`

	// ScheduleTime RFC 3339 timestamp of when the DAG-run was scheduled to run
	ScheduleTime *string `json:"scheduleTime,omitempty"`

	// SourceFileName Name of the DAG file
	SourceFileName *DAGFileName `json:"sourceFileName,omitempty"`

	// SpecFromFile Whether this DAG-run still has a usable source file on disk, so reschedule can load the current spec from that file instead of the stored historical YAML snapshot.
	SpecFromFile *bool `json:"specFromFile,omitempty"`

	// StartedAt RFC 3339 timestamp when the DAG-run started
	StartedAt string `json:"startedAt"`

	// Status Numeric status code indicating current DAG-run state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Queued"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	Status Status `json:"status"`

	// StatusLabel Human-readable status description for the DAG-run
	StatusLabel StatusLabel `json:"statusLabel"`

	// Tags Deprecated alias for labels. List of labels for categorizing and filtering DAG runs
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *[]string `json:"tags,omitempty"`

	// TriggerType How the DAG-run was initiated
	TriggerType *TriggerType `json:"triggerType,omitempty"`

	// WorkerId ID of the worker that executed this DAG-run ('local' for local execution)
	WorkerId *string `json:"workerId,omitempty"`

	// Workspace Workspace label value for the DAG-run. Omitted for default DAG-runs and invalid workspace labels.
	Workspace *string `json:"workspace,omitempty"`
}

// DAGRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
type DAGRunId = string

// DAGRunOutputs Collected outputs from step executions in a DAG-run, including execution metadata. Outputs are populated from string-form output, stdout.outputs, and outputs.write. If the DAG-run completed but no outputs were captured, the outputs object will be empty and metadata fields may be empty strings.
type DAGRunOutputs struct {
	// Metadata Execution context metadata for the outputs
	Metadata OutputsMetadata `json:"metadata"`

	// Outputs Collected step outputs as key-value pairs. String-form output names are converted from UPPER_CASE to camelCase; stdout.outputs and outputs.write keys are preserved. Values are strings in this API response. Empty object if no outputs were captured.
	Outputs map[string]string `json:"outputs"`
}

// DAGRunSummary Current status of a DAG-run
type DAGRunSummary struct {
	// ArtifactsAvailable Whether artifact files are available for this DAG-run
	ArtifactsAvailable bool `json:"artifactsAvailable"`

	// AutoRetryCount Number of scheduler-issued DAG auto-retries already consumed for this DAG-run
	AutoRetryCount int `json:"autoRetryCount"`

	// AutoRetryLimit Configured DAG-level automatic retry limit captured for this DAG-run; null when DAG-level automatic retry is not configured
	AutoRetryLimit *int `json:"autoRetryLimit"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// FinishedAt RFC 3339 timestamp when the DAG-run finished
	FinishedAt string `json:"finishedAt"`

	// Labels List of labels for categorizing and filtering DAG runs
	Labels *[]string `json:"labels,omitempty"`

	// Name Name of the DAG
	Name DAGName `json:"name"`

	// Params Runtime parameters passed to the DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// QueuedAt RFC 3339 timestamp when the DAG-run was queued
	QueuedAt *string `json:"queuedAt,omitempty"`

	// ScheduleTime RFC 3339 timestamp of when the DAG-run was scheduled to run
	ScheduleTime *string `json:"scheduleTime,omitempty"`

	// StartedAt RFC 3339 timestamp when the DAG-run started
	StartedAt string `json:"startedAt"`

	// Status Numeric status code indicating current DAG-run state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Queued"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	Status Status `json:"status"`

	// StatusLabel Human-readable status description for the DAG-run
	StatusLabel StatusLabel `json:"statusLabel"`

	// Tags Deprecated alias for labels. List of labels for categorizing and filtering DAG runs
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *[]string `json:"tags,omitempty"`

	// TriggerType How the DAG-run was initiated
	TriggerType *TriggerType `json:"triggerType,omitempty"`

	// WorkerId ID of the worker that executed this DAG-run ('local' for local execution)
	WorkerId *string `json:"workerId,omitempty"`

	// Workspace Workspace label value for the DAG-run. Omitted for default DAG-runs and invalid workspace labels.
	Workspace *string `json:"workspace,omitempty"`
}

// DAGRunsPageResponse Forward-only paginated DAG-run list response
type DAGRunsPageResponse struct {
	// DagRuns List of DAG-runs with their status and metadata
	DagRuns []DAGRunSummary `json:"dagRuns"`

	// NextCursor Opaque cursor for loading the next page of older DAG-runs
	NextCursor *string `json:"nextCursor,omitempty"`
}

// DAGSearchFeedResponse Cursor-based DAG search results
type DAGSearchFeedResponse struct {
	HasMore    bool                `json:"hasMore"`
	NextCursor *string             `json:"nextCursor,omitempty"`
	Results    []DAGSearchPageItem `json:"results"`
}

// DAGSearchPageItem Lightweight cursor-based search result item for a DAG
type DAGSearchPageItem struct {
	// FileName DAG file name without extension
	FileName string `json:"fileName"`

	// HasMoreMatches Whether additional snippets are available beyond the preview
	HasMoreMatches bool `json:"hasMoreMatches"`

	// Matches Preview snippets for the result
	Matches []SearchMatchItem `json:"matches"`

	// Name Display label for the DAG result; file-backed search currently mirrors fileName
	Name string `json:"name"`

	// NextMatchesCursor Opaque cursor for loading more snippets for this DAG result
	NextMatchesCursor *string `json:"nextMatchesCursor,omitempty"`

	// Workspace Workspace label value for the matching DAG. Omitted for default DAGs and invalid workspace labels.
	Workspace *string `json:"workspace,omitempty"`
}

// DocDeleteBatchFailedItem defines model for DocDeleteBatchFailedItem.
type DocDeleteBatchFailedItem struct {
	Error string `json:"error"`
	Path  string `json:"path"`
}

// DocDeleteBatchRequest Request to delete multiple documents or directories
type DocDeleteBatchRequest struct {
	// Paths Document or directory paths to delete (max 100)
	Paths []DocPath `json:"paths"`
}

// DocDeleteBatchResponse defines model for DocDeleteBatchResponse.
type DocDeleteBatchResponse struct {
	// Deleted Successfully deleted paths
	Deleted []string `json:"deleted"`

	// Failed Paths that failed to delete with error details
	Failed []DocDeleteBatchFailedItem `json:"failed"`

	// Message Human-readable summary
	Message string `json:"message"`
}

// DocListResponse Paginated document list (tree or flat)
type DocListResponse struct {
	Items      *[]DocMetadataResponse `json:"items,omitempty"`
	Pagination Pagination             `json:"pagination"`
	Tree       *[]DocTreeNodeResponse `json:"tree,omitempty"`
}

// DocMetadataResponse Lightweight document metadata
type DocMetadataResponse struct {
	// Description Short document description from YAML frontmatter
	Description string `json:"description"`
	Id          string `json:"id"`

	// ModifiedAt Last modification time of the document file
	ModifiedAt *time.Time `json:"modifiedAt,omitempty"`
	Title      string     `json:"title"`

	// Workspace Workspace that owns this document. Omitted for default documents.
	Workspace *string `json:"workspace,omitempty"`
}

// DocPath Relative document path (without extension), e.g. runbooks/deploy-guide. Must not start with / or contain ..
type DocPath = string

// DocResponse Full document with content
type DocResponse struct {
	// Content Full file content including YAML frontmatter
	Content string `json:"content"`

	// CreatedAt RFC3339 timestamp when the document was created
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// Description Short document description from YAML frontmatter
	Description string `json:"description"`

	// FilePath Absolute file path of the document on disk
	FilePath *string `json:"filePath,omitempty"`
	Id       string  `json:"id"`
	Title    string  `json:"title"`

	// UpdatedAt RFC3339 timestamp when the document was last updated
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// Workspace Workspace that owns this document. Omitted for default documents.
	Workspace *string `json:"workspace,omitempty"`
}

// DocSearchFeedResponse Cursor-based document search results
type DocSearchFeedResponse struct {
	HasMore    bool                `json:"hasMore"`
	NextCursor *string             `json:"nextCursor,omitempty"`
	Results    []DocSearchPageItem `json:"results"`
}

// DocSearchPageItem Lightweight cursor-based search result item for a document
type DocSearchPageItem struct {
	// Description Short document description from YAML frontmatter
	Description string `json:"description"`

	// HasMoreMatches Whether additional snippets are available beyond the preview
	HasMoreMatches bool   `json:"hasMoreMatches"`
	Id             string `json:"id"`

	// Matches Preview snippets for the result
	Matches []SearchMatchItem `json:"matches"`

	// NextMatchesCursor Opaque cursor for loading more snippets for this document result
	NextMatchesCursor *string `json:"nextMatchesCursor,omitempty"`
	Title             string  `json:"title"`

	// Workspace Workspace that owns this document. Omitted for default documents.
	Workspace *string `json:"workspace,omitempty"`
}

// DocSearchResponse Search results
type DocSearchResponse struct {
	Results []DocSearchResultItem `json:"results"`
}

// DocSearchResultItem A search result for a single document
type DocSearchResultItem struct {
	// Description Short document description from YAML frontmatter
	Description string             `json:"description"`
	Id          string             `json:"id"`
	Matches     *[]SearchMatchItem `json:"matches,omitempty"`
	Title       string             `json:"title"`

	// Workspace Workspace that owns this document. Omitted for default documents.
	Workspace *string `json:"workspace,omitempty"`
}

// DocTreeNodeResponse A file or directory node in the doc tree
type DocTreeNodeResponse struct {
	Children *[]DocTreeNodeResponse `json:"children,omitempty"`
	Id       string                 `json:"id"`

	// ModifiedAt Last modification time. For files: file mtime. For directories: most recent descendant mtime.
	ModifiedAt *time.Time              `json:"modifiedAt,omitempty"`
	Name       string                  `json:"name"`
	Title      *string                 `json:"title,omitempty"`
	Type       DocTreeNodeResponseType `json:"type"`

	// Workspace Workspace that owns this node. Omitted for default nodes.
	Workspace *string `json:"workspace,omitempty"`
}

// DocTreeNodeResponseType defines model for DocTreeNodeResponse.Type.
type DocTreeNodeResponseType string

// Error Generic error response object
type Error struct {
	// Code Error code indicating the type of error
	Code ErrorCode `json:"code"`

	// Details Additional error details
	Details *map[string]interface{} `json:"details,omitempty"`

	// Message Short error message
	Message string `json:"message"`
}

// ErrorCode Error code indicating the type of error
type ErrorCode string

// EventLogEntry A single centralized operational event log entry
type EventLogEntry struct {
	// AttemptId Attempt ID for DAG-run events
	AttemptId *string `json:"attemptId,omitempty"`

	// DagName DAG name for DAG-run events
	DagName *string `json:"dagName,omitempty"`

	// DagRunId DAG run ID for DAG-run events
	DagRunId *string `json:"dagRunId,omitempty"`

	// Data Small event-specific payload
	Data *map[string]interface{} `json:"data,omitempty"`

	// Id Unique identifier for this event
	Id string `json:"id"`

	// Kind High-level event kind (e.g., dag_run, llm_usage)
	Kind string `json:"kind"`

	// Model Model name associated with the event
	Model *string `json:"model,omitempty"`

	// OccurredAt When the event occurred
	OccurredAt time.Time `json:"occurredAt"`

	// RecordedAt When the event was recorded by the producer
	RecordedAt time.Time `json:"recordedAt"`

	// SchemaVersion Schema version of the event envelope
	SchemaVersion int `json:"schemaVersion"`

	// SessionId Session ID for LLM usage events
	SessionId *string `json:"sessionId,omitempty"`

	// SourceInstance Specific producer instance identifier
	SourceInstance *string `json:"sourceInstance,omitempty"`

	// SourceService Service that produced the event
	SourceService string `json:"sourceService"`

	// Status Status associated with the event when applicable
	Status *string `json:"status,omitempty"`

	// Type Specific event type (e.g., dag.run.failed)
	Type string `json:"type"`

	// UserId User ID associated with the event
	UserId *string `json:"userId,omitempty"`
}

// EventLogsResponse Response containing centralized event log entries
type EventLogsResponse struct {
	// Entries List of event log entries
	Entries []EventLogEntry `json:"entries"`

	// NextCursor Opaque cursor for loading the next page of older entries when using cursor pagination
	NextCursor *string `json:"nextCursor,omitempty"`

	// Total Total number of entries matching the filter when using compatibility offset pagination
	Total *int `json:"total,omitempty"`
}

// HandlerOn Configuration for event handlers in a DAG-run
type HandlerOn struct {
	// Abort Individual task definition that performs a specific operation in a DAG-run
	Abort *Step `json:"abort,omitempty"`

	// Exit Individual task definition that performs a specific operation in a DAG-run
	Exit *Step `json:"exit,omitempty"`

	// Failure Individual task definition that performs a specific operation in a DAG-run
	Failure *Step `json:"failure,omitempty"`

	// Success Individual task definition that performs a specific operation in a DAG-run
	Success *Step `json:"success,omitempty"`
}

// HealthResponse Response object for the health check endpoint
type HealthResponse struct {
	// Status Overall health status of the server
	Status HealthResponseStatus `json:"status"`

	// Timestamp Current server time
	Timestamp string `json:"timestamp"`

	// Uptime Server uptime in seconds
	Uptime int `json:"uptime"`

	// Version Current version of the server
	Version string `json:"version"`
}

// HealthResponseStatus Overall health status of the server
type HealthResponseStatus string

// IncidentPagerDutyProvider Public PagerDuty provider details
type IncidentPagerDutyProvider struct {
	// RoutingKeyConfigured Whether a PagerDuty routing key is configured
	RoutingKeyConfigured bool `json:"routingKeyConfigured"`

	// RoutingKeyPreview Redacted routing key preview
	RoutingKeyPreview *string `json:"routingKeyPreview,omitempty"`
}

// IncidentPagerDutyProviderInput PagerDuty Events API v2 provider input. The routing key is encrypted at rest.
type IncidentPagerDutyProviderInput struct {
	// ClearRoutingKey Clear the stored routing key.
	ClearRoutingKey *bool `json:"clearRoutingKey,omitempty"`

	// RoutingKey PagerDuty Events API v2 routing key. Omit on updates to preserve the existing key.
	RoutingKey *string `json:"routingKey,omitempty"`
}

// IncidentPagerDutyProviderInputEnvelope PagerDuty incident provider input
type IncidentPagerDutyProviderInputEnvelope struct {
	// Enabled Whether this provider can receive incident events
	Enabled bool `json:"enabled"`

	// Name Human-readable provider name
	Name string `json:"name"`

	// PagerDuty PagerDuty Events API v2 provider input. The routing key is encrypted at rest.
	PagerDuty IncidentPagerDutyProviderInput             `json:"pagerDuty"`
	Type      IncidentPagerDutyProviderInputEnvelopeType `json:"type"`
}

// IncidentPagerDutyProviderInputEnvelopeType defines model for IncidentPagerDutyProviderInputEnvelope.Type.
type IncidentPagerDutyProviderInputEnvelopeType string

// IncidentPolicy Incident route
type IncidentPolicy struct {
	// DedupKeyTemplate Deprecated and ignored. Dagu generates stable provider incident keys.
	DedupKeyTemplate string `json:"dedupKeyTemplate"`

	// DescriptionTemplate Template for the provider incident description/details
	DescriptionTemplate string `json:"descriptionTemplate"`

	// Enabled Whether this route is enabled
	Enabled bool `json:"enabled"`

	// Id Stable route ID
	Id string `json:"id"`

	// MessageTemplate Template for the provider incident summary/message
	MessageTemplate string `json:"messageTemplate"`

	// ProviderId Incident provider ID
	ProviderId string `json:"providerId"`

	// ResolveOnRecovery Deprecated. Dagu resolves saved open incidents on recovery.
	ResolveOnRecovery bool `json:"resolveOnRecovery"`

	// Severity Incident severity
	Severity IncidentSeverity `json:"severity"`
}

// IncidentPolicyInput Incident route input. A route opens an incident on final DAG failure and Dagu resolves the saved open incident on later success.
type IncidentPolicyInput struct {
	// DedupKeyTemplate Deprecated and ignored. Dagu generates stable provider incident keys.
	DedupKeyTemplate *string `json:"dedupKeyTemplate,omitempty"`

	// DescriptionTemplate Template for the provider incident description/details.
	DescriptionTemplate *string `json:"descriptionTemplate,omitempty"`

	// Enabled Whether this route is enabled. Normal incident routing sends true when the route exists.
	Enabled bool `json:"enabled"`

	// Id Stable route ID. Omit when adding a route.
	Id *string `json:"id,omitempty"`

	// MessageTemplate Template for the provider incident summary/message.
	MessageTemplate *string `json:"messageTemplate,omitempty"`

	// ProviderId Incident provider ID
	ProviderId string `json:"providerId"`

	// ResolveOnRecovery Deprecated. Dagu resolves saved open incidents on recovery.
	ResolveOnRecovery *bool `json:"resolveOnRecovery,omitempty"`

	// Severity Incident severity
	Severity IncidentSeverity `json:"severity"`
}

// IncidentPolicyScope Incident routing scope
type IncidentPolicyScope string

// IncidentPolicySet Incident routing for a global, workspace, or DAG scope
type IncidentPolicySet struct {
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// DagName DAG name for DAG-scoped routing
	DagName *string `json:"dagName,omitempty"`

	// Enabled Whether this scope can open new incidents
	Enabled bool `json:"enabled"`

	// Id Stable routing ID, present after routing is saved
	Id *string `json:"id,omitempty"`

	// InheritParent For workspace and DAG routing, true means inherit the parent scope instead of using local routes
	InheritParent bool             `json:"inheritParent"`
	Policies      []IncidentPolicy `json:"policies"`

	// Scope Incident routing scope
	Scope     IncidentPolicyScope `json:"scope"`
	UpdatedAt *time.Time          `json:"updatedAt,omitempty"`

	// UpdatedBy User ID that last updated routing
	UpdatedBy *string `json:"updatedBy,omitempty"`

	// Workspace Workspace name for workspace-scoped routing
	Workspace *string `json:"workspace,omitempty"`
}

// IncidentPolicySetInput Replacement incident routing for a global, workspace, or DAG scope
type IncidentPolicySetInput struct {
	// Enabled Whether this scope can open new incidents
	Enabled bool `json:"enabled"`

	// InheritParent For workspace and DAG routing, true means inherit the parent scope instead of using local routes. Ignored for global routing.
	InheritParent bool                  `json:"inheritParent"`
	Policies      []IncidentPolicyInput `json:"policies"`
}

// IncidentPolicySetListResponse Incident routing scopes
type IncidentPolicySetListResponse struct {
	PolicySets []IncidentPolicySet `json:"policySets"`
}

// IncidentProvider Incident provider. Secrets are never returned.
type IncidentProvider struct {
	CreatedAt time.Time `json:"createdAt"`

	// Enabled Whether this provider can receive incident events
	Enabled bool `json:"enabled"`

	// Id Stable provider ID
	Id string `json:"id"`

	// Name Human-readable provider name
	Name string `json:"name"`

	// PagerDuty Public PagerDuty provider details
	PagerDuty *IncidentPagerDutyProvider `json:"pagerDuty,omitempty"`

	// SolarWinds Public SolarWinds Incident Response provider details
	SolarWinds *IncidentSolarWindsProvider `json:"solarWinds,omitempty"`

	// Type Incident provider type
	Type      IncidentProviderType `json:"type"`
	UpdatedAt time.Time            `json:"updatedAt"`

	// UpdatedBy User ID that last updated the provider
	UpdatedBy *string `json:"updatedBy,omitempty"`
}

// IncidentProviderInput Incident provider input
type IncidentProviderInput struct {
	union json.RawMessage
}

// IncidentProviderListResponse Incident providers
type IncidentProviderListResponse struct {
	Providers []IncidentProvider `json:"providers"`
}

// IncidentProviderType Incident provider type
type IncidentProviderType string

// IncidentSeverity Incident severity
type IncidentSeverity string

// IncidentSolarWindsProvider Public SolarWinds Incident Response provider details
type IncidentSolarWindsProvider struct {
	// AllowInsecureHttp Whether this provider allows plain HTTP webhook URLs
	AllowInsecureHttp *bool `json:"allowInsecureHttp,omitempty"`

	// AllowPrivateNetwork Whether this provider allows loopback or private network webhook targets
	AllowPrivateNetwork *bool `json:"allowPrivateNetwork,omitempty"`

	// WebhookUrlConfigured Whether an incoming webhook URL is configured
	WebhookUrlConfigured bool `json:"webhookUrlConfigured"`

	// WebhookUrlPreview Redacted webhook URL preview
	WebhookUrlPreview *string `json:"webhookUrlPreview,omitempty"`
}

// IncidentSolarWindsProviderInput SolarWinds Incident Response incoming webhook provider input. The webhook URL is encrypted at rest.
type IncidentSolarWindsProviderInput struct {
	// AllowInsecureHttp Allow plain HTTP webhook URLs. Disabled by default.
	AllowInsecureHttp *bool `json:"allowInsecureHttp,omitempty"`

	// AllowPrivateNetwork Allow loopback or private network webhook targets. Disabled by default.
	AllowPrivateNetwork *bool `json:"allowPrivateNetwork,omitempty"`

	// ClearWebhookUrl Clear the stored webhook URL.
	ClearWebhookUrl *bool `json:"clearWebhookUrl,omitempty"`

	// WebhookUrl Incoming webhook URL. Omit on updates to preserve the existing URL.
	WebhookUrl *string `json:"webhookUrl,omitempty"`
}

// IncidentSolarWindsProviderInputEnvelope SolarWinds Incident Response provider input
type IncidentSolarWindsProviderInputEnvelope struct {
	// Enabled Whether this provider can receive incident events
	Enabled bool `json:"enabled"`

	// Name Human-readable provider name
	Name string `json:"name"`

	// SolarWinds SolarWinds Incident Response incoming webhook provider input. The webhook URL is encrypted at rest.
	SolarWinds IncidentSolarWindsProviderInput             `json:"solarWinds"`
	Type       IncidentSolarWindsProviderInputEnvelopeType `json:"type"`
}

// IncidentSolarWindsProviderInputEnvelopeType defines model for IncidentSolarWindsProviderInputEnvelope.Type.
type IncidentSolarWindsProviderInputEnvelopeType string

// InheritedCustomActionHint Resolved editor hint for an inherited custom action
type InheritedCustomActionHint struct {
	// Description Optional custom action description
	Description *string `json:"description,omitempty"`

	// InputSchema Resolved JSON Schema object used to validate and document with input
	InputSchema map[string]interface{} `json:"inputSchema"`

	// Name Custom action name
	Name string `json:"name"`

	// OutputSchema Resolved JSON Schema object used to validate stdout JSON output
	OutputSchema *map[string]interface{} `json:"outputSchema,omitempty"`
}

// InheritedLegacyDefinitionHint Resolved editor hint for an inherited deprecated legacy execution definition
type InheritedLegacyDefinitionHint struct {
	// Description Optional deprecated legacy execution definition description
	Description *string `json:"description,omitempty"`

	// InputSchema Resolved JSON Schema object used to validate and document with input
	InputSchema map[string]interface{} `json:"inputSchema"`

	// Name Deprecated legacy execution definition name
	Name string `json:"name"`

	// OutputSchema Resolved JSON Schema object used to validate stdout JSON output
	OutputSchema *map[string]interface{} `json:"outputSchema,omitempty"`

	// TargetType Builtin executor type that the deprecated legacy execution definition expands to
	TargetType string `json:"targetType"`
}

// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
type Labels = []string

// ListAgentAuthProvidersResponse List of subscription-backed auth providers
type ListAgentAuthProvidersResponse struct {
	Providers []AgentAuthProviderStatus `json:"providers"`
}

// ListAgentSessionsResponse Paginated list of agent sessions
type ListAgentSessionsResponse struct {
	// NextCursor Opaque cursor for loading the next page of older sessions
	NextCursor *string                 `json:"nextCursor,omitempty"`
	Pagination Pagination              `json:"pagination"`
	Sessions   []AgentSessionWithState `json:"sessions"`
}

// ListAgentToolsResponse List of agent tool metadata
type ListAgentToolsResponse struct {
	Tools []AgentToolInfo `json:"tools"`
}

// ListLabelResponse Response object for listing all labels
type ListLabelResponse struct {
	// Errors List of errors encountered during the request
	Errors []string `json:"errors"`

	// Labels List of unique labels
	Labels []string `json:"labels"`
}

// ListModelPresetsResponse List of model presets
type ListModelPresetsResponse struct {
	Presets []ModelPreset `json:"presets"`
}

// ListModelsResponse List of model configurations
type ListModelsResponse struct {
	DefaultModelId *string               `json:"defaultModelId,omitempty"`
	Models         []ModelConfigResponse `json:"models"`
}

// ListSoulsResponse List of souls
type ListSoulsResponse struct {
	Pagination Pagination     `json:"pagination"`
	Souls      []SoulResponse `json:"souls"`
}

// ListTagResponse Deprecated response object for listing all labels
type ListTagResponse struct {
	// Errors List of errors encountered during the request
	Errors []string `json:"errors"`

	// Tags List of unique labels
	Tags []string `json:"tags"`
}

// LocalDag defines model for LocalDag.
type LocalDag struct {
	// Dag Detailed DAG configuration information
	Dag *DAGDetails `json:"dag,omitempty"`

	// Errors List of errors encountered while processing the local DAG
	Errors []string `json:"errors"`

	// Name Name of the local DAG
	Name string `json:"name"`
}

// Log Log information for the execution
type Log struct {
	// Content Log content
	Content string `json:"content"`

	// HasMore Whether there are more lines available
	HasMore *bool `json:"hasMore,omitempty"`

	// IsEstimate Whether the line count is an estimate
	IsEstimate *bool `json:"isEstimate,omitempty"`

	// LineCount Number of lines returned
	LineCount *int `json:"lineCount,omitempty"`

	// TotalLines Total number of lines in the log file
	TotalLines *int `json:"totalLines,omitempty"`
}

// LoginRequest Request body for user login
type LoginRequest struct {
	// Password User's password
	Password string `json:"password"`

	// Username User's username
	Username string `json:"username"`
}

// LoginResponse Response containing authentication token
type LoginResponse struct {
	// ExpiresAt Token expiration timestamp
	ExpiresAt time.Time `json:"expiresAt"`

	// Token JWT authentication token
	Token string `json:"token"`

	// User User information
	User User `json:"user"`
}

// MetricPoint defines model for MetricPoint.
type MetricPoint struct {
	// Timestamp Unix timestamp
	Timestamp int64   `json:"timestamp"`
	Value     float64 `json:"value"`
}

// ModelConfigResponse Model configuration
type ModelConfigResponse struct {
	ApiKeyConfigured *bool                              `json:"apiKeyConfigured,omitempty"`
	BaseUrl          *string                            `json:"baseUrl,omitempty"`
	ContextWindow    *int                               `json:"contextWindow,omitempty"`
	Description      *string                            `json:"description,omitempty"`
	Id               string                             `json:"id"`
	InputCostPer1M   *float64                           `json:"inputCostPer1M,omitempty"`
	MaxOutputTokens  *int                               `json:"maxOutputTokens,omitempty"`
	Model            string                             `json:"model"`
	Name             string                             `json:"name"`
	OutputCostPer1M  *float64                           `json:"outputCostPer1M,omitempty"`
	Provider         ModelConfigResponseProvider        `json:"provider"`
	SupportsThinking *bool                              `json:"supportsThinking,omitempty"`
	ThinkingEffort   *ModelConfigResponseThinkingEffort `json:"thinkingEffort,omitempty"`
}

// ModelConfigResponseProvider defines model for ModelConfigResponse.Provider.
type ModelConfigResponseProvider string

// ModelConfigResponseThinkingEffort defines model for ModelConfigResponse.ThinkingEffort.
type ModelConfigResponseThinkingEffort string

// ModelPreset Hardcoded model preset with metadata
type ModelPreset struct {
	ContextWindow    *int                       `json:"contextWindow,omitempty"`
	Description      *string                    `json:"description,omitempty"`
	InputCostPer1M   *float64                   `json:"inputCostPer1M,omitempty"`
	MaxOutputTokens  *int                       `json:"maxOutputTokens,omitempty"`
	Model            string                     `json:"model"`
	Name             string                     `json:"name"`
	OutputCostPer1M  *float64                   `json:"outputCostPer1M,omitempty"`
	Provider         ModelPresetProvider        `json:"provider"`
	SupportsThinking *bool                      `json:"supportsThinking,omitempty"`
	ThinkingEffort   *ModelPresetThinkingEffort `json:"thinkingEffort,omitempty"`
}

// ModelPresetProvider defines model for ModelPreset.Provider.
type ModelPresetProvider string

// ModelPresetThinkingEffort defines model for ModelPreset.ThinkingEffort.
type ModelPresetThinkingEffort string

// Node Status of an individual step within a DAG-run
type Node struct {
	// ApprovalInputs Key-value inputs provided during approval
	ApprovalInputs *map[string]string `json:"approvalInputs,omitempty"`

	// ApprovalIteration Number of times this step has been pushed back for re-execution
	ApprovalIteration *int `json:"approvalIteration,omitempty"`

	// ApprovedAt RFC3339 timestamp when the step was approved
	ApprovedAt *string `json:"approvedAt,omitempty"`

	// ApprovedBy Username of who approved the step
	ApprovedBy *string `json:"approvedBy,omitempty"`

	// DoneCount Number of successful completions for repeating steps
	DoneCount int `json:"doneCount"`

	// Error Error message if the step failed
	Error *string `json:"error,omitempty"`

	// FinishedAt RFC3339 timestamp when the step finished
	FinishedAt string `json:"finishedAt"`

	// PushBackHistory Chronological push-back history for this step
	PushBackHistory *[]PushBackHistoryEntry `json:"pushBackHistory,omitempty"`

	// PushBackInputs Key-value inputs from the last push-back, injected as environment variables during re-execution
	PushBackInputs *map[string]string `json:"pushBackInputs,omitempty"`

	// RejectedAt RFC3339 timestamp when the step was rejected
	RejectedAt *string `json:"rejectedAt,omitempty"`

	// RejectedBy Username of who rejected the step
	RejectedBy *string `json:"rejectedBy,omitempty"`

	// RejectionReason Optional reason for rejection
	RejectionReason *string `json:"rejectionReason,omitempty"`

	// RetryCount Number of retry attempts made for this step
	RetryCount int `json:"retryCount"`

	// StartedAt RFC3339 timestamp when the step started
	StartedAt string `json:"startedAt"`

	// Status Numeric status code indicating current node state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Skipped"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	// 9: "Retrying"
	Status NodeStatus `json:"status"`

	// StatusLabel Human-readable status description for the node
	StatusLabel NodeStatusLabel `json:"statusLabel"`

	// Stderr Path to the standard error log file for this step
	Stderr string `json:"stderr"`

	// Stdout Path to the standard output log file for this step
	Stdout string `json:"stdout"`

	// Step Individual task definition that performs a specific operation in a DAG-run
	Step Step `json:"step"`

	// SubRuns List of sub DAG-runs associated with this step
	SubRuns *[]SubDAGRun `json:"subRuns,omitempty"`

	// SubRunsRepeated List of repeated sub DAG-runs when using repeatPolicy
	SubRunsRepeated *[]SubDAGRun `json:"subRunsRepeated,omitempty"`
}

// NodeStatus Numeric status code indicating current node state:
// 0: "Not started"
// 1: "Running"
// 2: "Failed"
// 3: "Aborted"
// 4: "Success"
// 5: "Skipped"
// 6: "Partial Success"
// 7: "Waiting for approval"
// 8: "Rejected"
// 9: "Retrying"
type NodeStatus int

// NodeStatusLabel Human-readable status description for the node
type NodeStatusLabel string

// NotificationChannel Notification channel. Secrets are never returned.
type NotificationChannel struct {
	CreatedAt time.Time `json:"createdAt"`

	// Email Email notification target. SMTP transport is configured in workspace notification settings.
	Email *NotificationEmailTarget `json:"email,omitempty"`

	// Enabled Whether this channel can receive notifications
	Enabled bool `json:"enabled"`

	// Id Stable channel ID
	Id string `json:"id"`

	// Name Human-readable channel name
	Name string `json:"name"`

	// Slack Public Slack target details
	Slack *NotificationSlackTarget `json:"slack,omitempty"`

	// Telegram Public Telegram target details
	Telegram *NotificationTelegramTarget `json:"telegram,omitempty"`

	// Type Notification delivery provider
	Type      NotificationProviderType `json:"type"`
	UpdatedAt time.Time                `json:"updatedAt"`

	// UpdatedBy User ID that last updated the channel
	UpdatedBy *string `json:"updatedBy,omitempty"`

	// Webhook Public outbound webhook target details
	Webhook *NotificationWebhookTarget `json:"webhook,omitempty"`
}

// NotificationChannelInput Notification channel input
type NotificationChannelInput struct {
	// Email Email notification target. SMTP transport is configured in workspace notification settings.
	Email *NotificationEmailTarget `json:"email,omitempty"`

	// Enabled Whether this channel can receive notifications
	Enabled bool `json:"enabled"`

	// Name Human-readable channel name
	Name string `json:"name"`

	// Slack Slack incoming webhook target input. Values are encrypted at rest.
	Slack *NotificationSlackTargetInput `json:"slack,omitempty"`

	// Telegram Telegram Bot API target input. Bot token is encrypted at rest.
	Telegram *NotificationTelegramTargetInput `json:"telegram,omitempty"`

	// Type Notification delivery provider
	Type NotificationProviderType `json:"type"`

	// Webhook Outbound webhook target input. Values are encrypted at rest.
	Webhook *NotificationWebhookTargetInput `json:"webhook,omitempty"`
}

// NotificationChannelListResponse Notification channels
type NotificationChannelListResponse struct {
	Channels []NotificationChannel `json:"channels"`
}

// NotificationEmailTarget Email notification target. SMTP transport is configured in workspace notification settings.
type NotificationEmailTarget struct {
	// AttachLogs Attach DAG and step logs when available
	AttachLogs *bool `json:"attachLogs,omitempty"`

	// Bcc BCC recipients
	Bcc *[]string `json:"bcc,omitempty"`

	// BodyTemplate Optional email body template. When omitted, Dagu sends the default notification body.
	BodyTemplate *string `json:"bodyTemplate,omitempty"`

	// Cc CC recipients
	Cc *[]string `json:"cc,omitempty"`

	// From Sender address. Defaults to the workspace SMTP sender.
	From *string `json:"from,omitempty"`

	// SubjectPrefix Subject prefix. Defaults to [DAGU].
	SubjectPrefix *string `json:"subjectPrefix,omitempty"`

	// SubjectTemplate Optional email subject template. When set, it replaces the generated subject.
	SubjectTemplate *string `json:"subjectTemplate,omitempty"`

	// To Primary recipients
	To []string `json:"to"`
}

// NotificationEventType DAG run event that can trigger server-side notifications
type NotificationEventType string

// NotificationProviderType Notification delivery provider
type NotificationProviderType string

// NotificationRoute Route from notification events to a notification channel
type NotificationRoute struct {
	// ChannelId Notification channel ID
	ChannelId string `json:"channelId"`

	// Enabled Whether this route receives notifications
	Enabled bool `json:"enabled"`

	// Events Events delivered by this route. Empty is treated as operational defaults for backward compatibility.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable route ID
	Id string `json:"id"`
}

// NotificationRouteInput Route from notification events to a notification channel
type NotificationRouteInput struct {
	// ChannelId Notification channel ID
	ChannelId string `json:"channelId"`

	// Enabled Whether this route receives notifications
	Enabled bool `json:"enabled"`

	// Events Events delivered by this route. Omit only for backward compatibility; new clients should send an explicit event list.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable route ID. Omit when adding a route.
	Id *string `json:"id,omitempty"`
}

// NotificationRouteScope Notification route scope
type NotificationRouteScope string

// NotificationRouteSet Notification routes for a global or workspace scope
type NotificationRouteSet struct {
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// Enabled Whether this route set can deliver notifications
	Enabled bool `json:"enabled"`

	// Id Stable route set ID, present after the route set is saved
	Id *string `json:"id,omitempty"`

	// InheritGlobal For workspace route sets, true means inherit Global instead of using workspace routes
	InheritGlobal bool                `json:"inheritGlobal"`
	Routes        []NotificationRoute `json:"routes"`

	// Scope Notification route scope
	Scope     NotificationRouteScope `json:"scope"`
	UpdatedAt *time.Time             `json:"updatedAt,omitempty"`

	// UpdatedBy User ID that last updated the route set
	UpdatedBy *string `json:"updatedBy,omitempty"`

	// Workspace Workspace name for workspace-scoped route sets
	Workspace *string `json:"workspace,omitempty"`
}

// NotificationRouteSetInput Replacement route set for a global or workspace notification scope
type NotificationRouteSetInput struct {
	// Enabled Whether this route set can deliver notifications
	Enabled bool `json:"enabled"`

	// InheritGlobal For workspace route sets, true means inherit Global instead of using workspace routes. Ignored for global route sets.
	InheritGlobal bool                     `json:"inheritGlobal"`
	Routes        []NotificationRouteInput `json:"routes"`
}

// NotificationRouteSetListResponse Notification route sets
type NotificationRouteSetListResponse struct {
	RouteSets []NotificationRouteSet `json:"routeSets"`
}

// NotificationSMTPSettings Public workspace SMTP transport settings. The SMTP password is never returned.
type NotificationSMTPSettings struct {
	// From Default sender address for notification email channels
	From *string `json:"from,omitempty"`

	// Host SMTP server host
	Host *string `json:"host,omitempty"`

	// PasswordConfigured Whether an SMTP password is configured
	PasswordConfigured bool `json:"passwordConfigured"`

	// Port SMTP server port
	Port *string `json:"port,omitempty"`

	// Username SMTP username
	Username *string `json:"username,omitempty"`
}

// NotificationSMTPSettingsInput Workspace SMTP transport input for notification email delivery. Values are encrypted at rest where applicable.
type NotificationSMTPSettingsInput struct {
	// ClearPassword Clear the stored SMTP password.
	ClearPassword *bool `json:"clearPassword,omitempty"`

	// From Default sender address for notification email channels
	From *string `json:"from,omitempty"`

	// Host SMTP server host
	Host *string `json:"host,omitempty"`

	// Password SMTP password. Omit on updates to preserve the existing password.
	Password *string `json:"password,omitempty"`

	// Port SMTP server port
	Port *string `json:"port,omitempty"`

	// Username SMTP username
	Username *string `json:"username,omitempty"`
}

// NotificationSlackTarget Public Slack target details
type NotificationSlackTarget struct {
	// MessageTemplate Optional Slack message template. When omitted, Dagu sends the default notification text.
	MessageTemplate *string `json:"messageTemplate,omitempty"`

	// WebhookUrlConfigured Whether a Slack incoming webhook URL is configured
	WebhookUrlConfigured bool `json:"webhookUrlConfigured"`

	// WebhookUrlPreview Redacted Slack webhook URL preview
	WebhookUrlPreview *string `json:"webhookUrlPreview,omitempty"`
}

// NotificationSlackTargetInput Slack incoming webhook target input. Values are encrypted at rest.
type NotificationSlackTargetInput struct {
	// MessageTemplate Optional Slack message template. When omitted, Dagu sends the default notification text.
	MessageTemplate *string `json:"messageTemplate,omitempty"`

	// WebhookUrl Slack incoming webhook URL. Omit on updates to preserve the existing URL.
	WebhookUrl *string `json:"webhookUrl,omitempty"`
}

// NotificationSubscription DAG subscription to a notification channel
type NotificationSubscription struct {
	// ChannelId Notification channel ID
	ChannelId string `json:"channelId"`

	// Enabled Whether this DAG subscription receives notifications
	Enabled bool `json:"enabled"`

	// Events Subscription-level event filter. Empty means the subscription inherits DAG-level events.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable subscription ID
	Id string `json:"id"`
}

// NotificationSubscriptionInput DAG subscription to a notification channel
type NotificationSubscriptionInput struct {
	// ChannelId Notification channel ID
	ChannelId string `json:"channelId"`

	// Enabled Whether this DAG subscription receives notifications
	Enabled bool `json:"enabled"`

	// Events Optional subscription-level event filter. When omitted or empty, the subscription inherits DAG-level events.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable subscription ID. Omit when creating a new subscription.
	Id *string `json:"id,omitempty"`
}

// NotificationTarget Public notification target details. Secrets are never returned.
type NotificationTarget struct {
	// Email Email notification target. SMTP transport is configured in workspace notification settings.
	Email *NotificationEmailTarget `json:"email,omitempty"`

	// Enabled Whether this target receives notifications
	Enabled bool `json:"enabled"`

	// Events Target-level event filter. Empty means the target inherits DAG-level events.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable target ID
	Id string `json:"id"`

	// Name Human-readable target name
	Name *string `json:"name,omitempty"`

	// Slack Public Slack target details
	Slack *NotificationSlackTarget `json:"slack,omitempty"`

	// Telegram Public Telegram target details
	Telegram *NotificationTelegramTarget `json:"telegram,omitempty"`

	// Type Notification delivery provider
	Type NotificationProviderType `json:"type"`

	// Webhook Public outbound webhook target details
	Webhook *NotificationWebhookTarget `json:"webhook,omitempty"`
}

// NotificationTargetInput Notification target input
type NotificationTargetInput struct {
	// Email Email notification target. SMTP transport is configured in workspace notification settings.
	Email *NotificationEmailTarget `json:"email,omitempty"`

	// Enabled Whether this target receives notifications
	Enabled bool `json:"enabled"`

	// Events Optional target-level event filter. When omitted or empty, the target inherits DAG-level events.
	Events *[]NotificationEventType `json:"events,omitempty"`

	// Id Stable target ID. Omit when creating a new target.
	Id *string `json:"id,omitempty"`

	// Name Human-readable target name
	Name *string `json:"name,omitempty"`

	// Slack Slack incoming webhook target input. Values are encrypted at rest.
	Slack *NotificationSlackTargetInput `json:"slack,omitempty"`

	// Telegram Telegram Bot API target input. Bot token is encrypted at rest.
	Telegram *NotificationTelegramTargetInput `json:"telegram,omitempty"`

	// Type Notification delivery provider
	Type NotificationProviderType `json:"type"`

	// Webhook Outbound webhook target input. Values are encrypted at rest.
	Webhook *NotificationWebhookTargetInput `json:"webhook,omitempty"`
}

// NotificationTelegramTarget Public Telegram target details
type NotificationTelegramTarget struct {
	// BotTokenConfigured Whether a Telegram bot token is configured
	BotTokenConfigured bool `json:"botTokenConfigured"`

	// BotTokenPreview Redacted Telegram bot token preview
	BotTokenPreview *string `json:"botTokenPreview,omitempty"`

	// ChatId Telegram chat ID
	ChatId *string `json:"chatId,omitempty"`

	// MessageTemplate Optional Telegram message template. When omitted, Dagu sends the default notification text.
	MessageTemplate *string `json:"messageTemplate,omitempty"`
}

// NotificationTelegramTargetInput Telegram Bot API target input. Bot token is encrypted at rest.
type NotificationTelegramTargetInput struct {
	// BotToken Telegram bot token. Omit on updates to preserve the existing token.
	BotToken *string `json:"botToken,omitempty"`

	// ChatId Telegram chat ID
	ChatId *string `json:"chatId,omitempty"`

	// MessageTemplate Optional Telegram message template. When omitted, Dagu sends the default notification text.
	MessageTemplate *string `json:"messageTemplate,omitempty"`
}

// NotificationWebhookTarget Public outbound webhook target details
type NotificationWebhookTarget struct {
	// AllowInsecureHttp Whether this target allows plain HTTP webhook URLs
	AllowInsecureHttp *bool `json:"allowInsecureHttp,omitempty"`

	// AllowPrivateNetwork Whether this target allows loopback or private network webhook targets
	AllowPrivateNetwork *bool `json:"allowPrivateNetwork,omitempty"`

	// Headers Header names with redacted values
	Headers *map[string]string `json:"headers,omitempty"`

	// HmacSecretConfigured Whether an HMAC secret is configured
	HmacSecretConfigured bool `json:"hmacSecretConfigured"`

	// MessageTemplate Optional rendered message added to the webhook JSON payload as message.
	MessageTemplate *string `json:"messageTemplate,omitempty"`

	// UrlConfigured Whether a webhook URL is configured
	UrlConfigured bool `json:"urlConfigured"`

	// UrlPreview Redacted URL preview
	UrlPreview *string `json:"urlPreview,omitempty"`
}

// NotificationWebhookTargetInput Outbound webhook target input. Values are encrypted at rest.
type NotificationWebhookTargetInput struct {
	// AllowInsecureHttp Allow plain HTTP webhook URLs. Disabled by default.
	AllowInsecureHttp *bool `json:"allowInsecureHttp,omitempty"`

	// AllowPrivateNetwork Allow loopback or private network webhook targets. Disabled by default.
	AllowPrivateNetwork *bool `json:"allowPrivateNetwork,omitempty"`

	// ClearHeaders Clear all stored webhook headers.
	ClearHeaders *bool `json:"clearHeaders,omitempty"`

	// ClearHmacSecret Clear the stored HMAC secret.
	ClearHmacSecret *bool `json:"clearHmacSecret,omitempty"`

	// Headers Additional request headers. Values are encrypted at rest. When provided, this replaces the stored header set.
	Headers *map[string]string `json:"headers,omitempty"`

	// HmacSecret Optional HMAC secret for X-Dagu-Signature. Omit on updates to preserve the existing secret.
	HmacSecret *string `json:"hmacSecret,omitempty"`

	// MessageTemplate Optional rendered message added to the webhook JSON payload as message.
	MessageTemplate *string `json:"messageTemplate,omitempty"`

	// Url HTTP or HTTPS endpoint to POST notification payloads to. Omit on updates to preserve the existing URL.
	Url *string `json:"url,omitempty"`
}

// NotificationWorkspaceSettings Workspace-level notification settings
type NotificationWorkspaceSettings struct {
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// Smtp Public workspace SMTP transport settings. The SMTP password is never returned.
	Smtp      *NotificationSMTPSettings `json:"smtp,omitempty"`
	UpdatedAt *time.Time                `json:"updatedAt,omitempty"`

	// UpdatedBy User ID that last updated the workspace notification settings
	UpdatedBy *string `json:"updatedBy,omitempty"`
}

// NotificationWorkspaceSettingsInput Workspace-level notification settings input
type NotificationWorkspaceSettingsInput struct {
	Smtp *NotificationSMTPSettingsInput `json:"smtp"`
}

// OutputsMetadata Execution context metadata for the outputs
type OutputsMetadata struct {
	// AttemptId Attempt identifier within the run
	AttemptId string `json:"attemptId"`

	// CompletedAt RFC3339 timestamp when execution completed
	CompletedAt time.Time `json:"completedAt"`

	// DagName Name of the DAG
	DagName DAGName `json:"dagName"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// Params JSON-serialized parameters passed to the DAG
	Params *string `json:"params,omitempty"`

	// Status Human-readable status description for the DAG-run
	Status StatusLabel `json:"status"`
}

// Pagination defines model for Pagination.
type Pagination struct {
	// CurrentPage current page number
	CurrentPage int `json:"currentPage"`

	// NextPage next page number
	NextPage int `json:"nextPage"`

	// PrevPage previous page number
	PrevPage int `json:"prevPage"`

	// TotalPages total number of pages
	TotalPages int `json:"totalPages"`

	// TotalRecords total number of records
	TotalRecords int `json:"totalRecords"`
}

// ParamDef Typed metadata for a single DAG parameter
type ParamDef struct {
	// Default Scalar parameter value
	Default     *ParamScalar   `json:"default,omitempty"`
	Description *string        `json:"description,omitempty"`
	Enum        *[]ParamScalar `json:"enum,omitempty"`
	MaxLength   *int           `json:"maxLength,omitempty"`
	Maximum     *float64       `json:"maximum,omitempty"`
	MinLength   *int           `json:"minLength,omitempty"`
	Minimum     *float64       `json:"minimum,omitempty"`

	// Name Parameter name. Omitted for positional parameters.
	Name     *string `json:"name,omitempty"`
	Pattern  *string `json:"pattern,omitempty"`
	Required *bool   `json:"required,omitempty"`

	// Type Parameter type
	Type ParamDefType `json:"type"`
}

// ParamDefType Parameter type
type ParamDefType string

// ParamScalar Scalar parameter value
type ParamScalar struct {
	union json.RawMessage
}

// ParamScalar0 defines model for .
type ParamScalar0 = string

// ParamScalar1 defines model for .
type ParamScalar1 = int

// ParamScalar2 defines model for .
type ParamScalar2 = float64

// ParamScalar3 defines model for .
type ParamScalar3 = bool

// PushBackHistoryEntry One push-back event recorded for an approval step
type PushBackHistoryEntry struct {
	// At RFC3339 timestamp when the push-back was recorded
	At *time.Time `json:"at,omitempty"`

	// By Authenticated user who pushed the step back
	By *string `json:"by,omitempty"`

	// Inputs Inputs provided for this push-back event
	Inputs *map[string]string `json:"inputs,omitempty"`

	// Iteration Push-back iteration number
	Iteration int `json:"iteration"`
}

// PushBackStepRequest Request body for pushing back a waiting step for re-execution with feedback
type PushBackStepRequest struct {
	// Inputs Key-value parameters to provide as feedback. These will be injected as environment variables when the step re-executes.
	Inputs *map[string]string `json:"inputs,omitempty"`
}

// PushBackStepResponse Response after pushing back a waiting step
type PushBackStepResponse struct {
	// ApprovalIteration The current approval iteration count after push-back
	ApprovalIteration int `json:"approvalIteration"`

	// DagRunId The DAG run ID
	DagRunId string `json:"dagRunId"`

	// Resumed Whether the DAG run was re-enqueued for execution
	Resumed bool `json:"resumed"`

	// StepName The pushed-back step name
	StepName string `json:"stepName"`

	// SubDAGRunId The sub-DAG run ID, present only for sub-DAG push-back operations
	SubDAGRunId *string `json:"subDAGRunId,omitempty"`
}

// Queue A queue/process group with summary statistics
type Queue struct {
	// MaxConcurrency Maximum number of concurrent runs allowed. For 'global' queues, this is the configured maxConcurrency. For 'dag-based' queues, this is always 1 (FIFO execution)
	MaxConcurrency *int `json:"maxConcurrency,omitempty"`

	// Name Name of the queue (global queue name or DAG name if no queue specified)
	Name string `json:"name"`

	// QueuedCount Number of queued DAG-runs waiting to execute
	QueuedCount int `json:"queuedCount"`

	// Running List of currently running DAG-runs (bounded by maxConcurrency)
	Running []DAGRunSummary `json:"running"`

	// RunningCount Number of currently running DAG-runs
	RunningCount int `json:"runningCount"`

	// Type Type of queue - 'global' if explicitly defined, 'dag-based' if using DAG name
	Type QueueType `json:"type"`
}

// QueueType Type of queue - 'global' if explicitly defined, 'dag-based' if using DAG name
type QueueType string

// QueuedDAGRunsPageResponse Forward-only paginated queued DAG-run response
type QueuedDAGRunsPageResponse struct {
	// Items List of queued DAG-run summaries
	Items []DAGRunSummary `json:"items"`

	// NextCursor Opaque cursor for loading the next page of queued DAG-runs
	NextCursor *string `json:"nextCursor,omitempty"`
}

// QueuesResponse Response containing all queues with their active DAG-runs
type QueuesResponse struct {
	// Queues List of all queues with their running and queued DAG-runs
	Queues []Queue `json:"queues"`

	// Summary Summary statistics across all queues
	Summary QueuesSummary `json:"summary"`
}

// QueuesSummary Summary statistics across all queues
type QueuesSummary struct {
	// TotalCapacity Sum of all queue maxConcurrency values
	TotalCapacity int `json:"totalCapacity"`

	// TotalQueued Total DAG-runs waiting in queues
	TotalQueued int `json:"totalQueued"`

	// TotalQueues Total number of active queues
	TotalQueues int `json:"totalQueues"`

	// TotalRunning Total DAG-runs currently executing
	TotalRunning int `json:"totalRunning"`

	// UtilizationPercentage System-wide utilization (totalRunning / totalCapacity * 100)
	UtilizationPercentage float32 `json:"utilizationPercentage"`
}

// RejectStepRequest Request body for rejecting a waiting step
type RejectStepRequest struct {
	// Reason Optional reason for rejecting the step
	Reason *string `json:"reason,omitempty"`
}

// RejectStepResponse Response after rejecting a waiting step
type RejectStepResponse struct {
	// DagRunId The DAG run ID
	DagRunId string `json:"dagRunId"`

	// StepName The rejected step name
	StepName string `json:"stepName"`
}

// RemoteNodeListResponse defines model for RemoteNodeListResponse.
type RemoteNodeListResponse struct {
	RemoteNodes []RemoteNodeResponse `json:"remoteNodes"`
}

// RemoteNodeResponse defines model for RemoteNodeResponse.
type RemoteNodeResponse struct {
	ApiBaseUrl  string                     `json:"apiBaseUrl"`
	AuthType    RemoteNodeResponseAuthType `json:"authType"`
	CreatedAt   *time.Time                 `json:"createdAt,omitempty"`
	Description *string                    `json:"description,omitempty"`

	// HasCredentials Whether credentials are configured (values are never returned)
	HasCredentials *bool  `json:"hasCredentials,omitempty"`
	Id             string `json:"id"`
	Name           string `json:"name"`
	SkipTlsVerify  *bool  `json:"skipTlsVerify,omitempty"`

	// Source Where this node is defined
	Source    RemoteNodeResponseSource `json:"source"`
	UpdatedAt *time.Time               `json:"updatedAt,omitempty"`
}

// RemoteNodeResponseAuthType defines model for RemoteNodeResponse.AuthType.
type RemoteNodeResponseAuthType string

// RemoteNodeResponseSource Where this node is defined
type RemoteNodeResponseSource string

// RenameDocRequest Request to rename/move a document or directory
type RenameDocRequest struct {
	// NewPath Relative document path (without extension), e.g. runbooks/deploy-guide. Must not start with / or contain ..
	NewPath DocPath `json:"newPath"`
}

// RepeatMode Repeat execution mode for steps
type RepeatMode string

// RepeatPolicy Configuration for step repeat behavior
type RepeatPolicy struct {
	Backoff *RepeatPolicy_Backoff `json:"backoff,omitempty"`

	// Condition Precondition that must be satisfied before running a step or DAG-run
	Condition *Condition `json:"condition,omitempty"`

	// ExitCode List of exit codes that trigger repeat behavior
	ExitCode *[]int `json:"exitCode,omitempty"`

	// Interval Time in seconds to wait between repeat attempts
	Interval *int `json:"interval,omitempty"`

	// Limit Maximum number of times to repeat the step
	Limit *int `json:"limit,omitempty"`

	// MaxIntervalSec Maximum interval in seconds (caps exponential growth)
	MaxIntervalSec *int `json:"maxIntervalSec,omitempty"`

	// Repeat Repeat execution mode for steps
	Repeat *RepeatMode `json:"repeat,omitempty"`
}

// RepeatPolicyBackoff0 When true, uses default multiplier of 2.0
type RepeatPolicyBackoff0 = bool

// RepeatPolicyBackoff1 Custom exponential backoff multiplier
type RepeatPolicyBackoff1 = float32

// RepeatPolicy_Backoff defines model for RepeatPolicy.Backoff.
type RepeatPolicy_Backoff struct {
	union json.RawMessage
}

// ResetPasswordRequest Request body for admin password reset
type ResetPasswordRequest struct {
	// NewPassword New password to set for the user
	NewPassword string `json:"newPassword"`
}

// ResourceHistory defines model for ResourceHistory.
type ResourceHistory struct {
	Cpu  *[]MetricPoint `json:"cpu,omitempty"`
	Disk *[]MetricPoint `json:"disk,omitempty"`

	// DiskTotalBytes Total disk space in bytes
	DiskTotalBytes *int64 `json:"diskTotalBytes,omitempty"`

	// DiskUsedBytes Used disk space in bytes
	DiskUsedBytes *int64         `json:"diskUsedBytes,omitempty"`
	Load          *[]MetricPoint `json:"load,omitempty"`
	Memory        *[]MetricPoint `json:"memory,omitempty"`

	// MemoryTotalBytes Total physical memory in bytes
	MemoryTotalBytes *int64 `json:"memoryTotalBytes,omitempty"`

	// MemoryUsedBytes Used physical memory in bytes
	MemoryUsedBytes *int64 `json:"memoryUsedBytes,omitempty"`
}

// RunConfig Configuration for controlling user interactions when starting DAG runs
type RunConfig struct {
	// DisableParamEdit Disable parameter editing when starting the DAG
	DisableParamEdit bool `json:"disableParamEdit"`

	// DisableRunIdEdit Disable custom run ID specification
	DisableRunIdEdit bool `json:"disableRunIdEdit"`
}

// RunningTask Information about a task currently being executed
type RunningTask struct {
	// DagName Name of the DAG
	DagName DAGName `json:"dagName"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// ParentDagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	ParentDagRunId *DAGRunId `json:"parentDagRunId,omitempty"`

	// ParentDagRunName Name of the DAG
	ParentDagRunName *DAGName `json:"parentDagRunName,omitempty"`

	// RootDagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	RootDagRunId *DAGRunId `json:"rootDagRunId,omitempty"`

	// RootDagRunName Name of the DAG
	RootDagRunName *DAGName `json:"rootDagRunName,omitempty"`

	// StartedAt RFC3339 timestamp when the task started
	StartedAt string `json:"startedAt"`
}

// Schedule Schedule configuration for DAG-run creation
type Schedule struct {
	// At RFC 3339 timestamp with explicit offset for one-off schedules
	At *time.Time `json:"at,omitempty"`

	// Expression Cron expression for recurring schedules
	Expression string `json:"expression,omitempty"`

	// Kind Schedule type. When omitted alongside expression, the schedule is treated as cron for backward compatibility.
	Kind *ScheduleKind `json:"kind,omitempty"`
}

// ScheduleKind Schedule type. When omitted alongside expression, the schedule is treated as cron for backward compatibility.
type ScheduleKind string

// SchedulerInstance Scheduler instance status information
type SchedulerInstance struct {
	// Host Hostname where scheduler is running
	Host string `json:"host"`

	// InstanceId Unique identifier of the scheduler instance
	InstanceId string `json:"instanceId"`

	// StartedAt RFC3339 timestamp when scheduler started
	StartedAt string `json:"startedAt"`

	// Status Scheduler status (active = holds lock and scheduling)
	Status SchedulerInstanceStatus `json:"status"`
}

// SchedulerInstanceStatus Scheduler status (active = holds lock and scheduling)
type SchedulerInstanceStatus string

// SchedulerStatusResponse Response containing status of all scheduler instances
type SchedulerStatusResponse struct {
	// Schedulers List of all registered scheduler instances
	Schedulers []SchedulerInstance `json:"schedulers"`
}

// SearchMatchItem Details of a search match within a search result
type SearchMatchItem struct {
	// Line Matching line content
	Line string `json:"line"`

	// LineNumber Line number where match was found
	LineNumber int `json:"lineNumber"`

	// StartLine Start line for context
	StartLine int `json:"startLine"`
}

// SearchMatchesResponse Cursor-based search match snippets
type SearchMatchesResponse struct {
	HasMore    bool              `json:"hasMore"`
	Matches    []SearchMatchItem `json:"matches"`
	NextCursor *string           `json:"nextCursor,omitempty"`
}

// SearchResultItem Individual search result item for a DAG
type SearchResultItem struct {
	// Dag Core DAG configuration containing definition and metadata
	Dag DAG `json:"dag"`

	// Matches Details of where matches were found
	Matches []SearchMatchItem `json:"matches"`

	// Name Name of the matching DAG
	Name string `json:"name"`
}

// SecretListResponse defines model for SecretListResponse.
type SecretListResponse struct {
	Secrets []SecretResponse `json:"secrets"`
	Total   int              `json:"total"`
}

// SecretProviderType defines model for SecretProviderType.
type SecretProviderType string

// SecretResponse defines model for SecretResponse.
type SecretResponse struct {
	CreatedAt              time.Time          `json:"createdAt"`
	CurrentVersion         int                `json:"currentVersion"`
	Description            *string            `json:"description,omitempty"`
	HasValue               bool               `json:"hasValue"`
	Id                     string             `json:"id"`
	LastCheckedAt          *time.Time         `json:"lastCheckedAt,omitempty"`
	LastResolvedAt         *time.Time         `json:"lastResolvedAt,omitempty"`
	LastRotatedAt          *time.Time         `json:"lastRotatedAt,omitempty"`
	ProviderConnectionId   *string            `json:"providerConnectionId,omitempty"`
	ProviderRef            *string            `json:"providerRef,omitempty"`
	ProviderRefFingerprint *string            `json:"providerRefFingerprint,omitempty"`
	ProviderType           SecretProviderType `json:"providerType"`

	// Ref Secret ref used from DAG YAML, for example prod/db-password.
	Ref       string       `json:"ref"`
	Status    SecretStatus `json:"status"`
	UpdatedAt time.Time    `json:"updatedAt"`

	// Workspace global for workspace-less secrets, otherwise the workspace name.
	Workspace string `json:"workspace"`
}

// SecretStatus defines model for SecretStatus.
type SecretStatus string

// SetDefaultModelRequest Request to set the default model
type SetDefaultModelRequest struct {
	// ModelId Model ID to set as default
	ModelId string `json:"modelId"`
}

// SetDefaultModelResponse Response after setting the default model
type SetDefaultModelResponse struct {
	DefaultModelId *string `json:"defaultModelId,omitempty"`
}

// SetupRequest Request body for initial admin account setup
type SetupRequest struct {
	// Password Admin password
	Password string `json:"password"`

	// Username Admin username
	Username string `json:"username"`
}

// SoulResponse Soul (agent personality) configuration
type SoulResponse struct {
	// Content Markdown body content (identity definition)
	Content     *string `json:"content,omitempty"`
	Description *string `json:"description,omitempty"`
	Id          string  `json:"id"`
	Name        string  `json:"name"`
}

// StartAgentAuthProviderLoginResponse Manual OAuth login flow information
type StartAgentAuthProviderLoginResponse struct {
	AuthUrl      string  `json:"authUrl"`
	FlowId       string  `json:"flowId"`
	Instructions *string `json:"instructions,omitempty"`
}

// Status Numeric status code indicating current DAG-run state:
// 0: "Not started"
// 1: "Running"
// 2: "Failed"
// 3: "Aborted"
// 4: "Success"
// 5: "Queued"
// 6: "Partial Success"
// 7: "Waiting for approval"
// 8: "Rejected"
type Status int

// StatusLabel Human-readable status description for the DAG-run
type StatusLabel string

// Step Individual task definition that performs a specific operation in a DAG-run
type Step struct {
	// Approval Configuration for a human approval gate on a step
	Approval *ApprovalConfig `json:"approval,omitempty"`

	// Call The name of the DAG to execute as a sub DAG-run
	Call *string `json:"call,omitempty"`

	// Commands List of commands to execute sequentially
	Commands *[]CommandEntry `json:"commands,omitempty"`

	// Depends List of step names that must complete before this step can start
	Depends *[]string `json:"depends,omitempty"`

	// Description Human-readable description of what the step does
	Description *string `json:"description,omitempty"`

	// Dir Working directory for executing the step's command
	Dir *string `json:"dir,omitempty"`

	// ExecutorConfig Executor configuration for this step
	ExecutorConfig *struct {
		// Config Executor-specific configuration
		Config *map[string]interface{} `json:"config,omitempty"`

		// Type Type of executor (e.g., 'wait', 'http', 'docker', 'command')
		Type *string `json:"type,omitempty"`
	} `json:"executorConfig,omitempty"`

	// Id Optional short identifier for the step. Can be used in variable references like ${id.stdout} to access step properties. Must be unique within the DAG if specified
	Id *string `json:"id,omitempty"`

	// MailOnError Whether to send email notifications on step failure
	MailOnError *bool `json:"mailOnError,omitempty"`

	// Name Unique identifier for the step within the DAG-run
	Name string `json:"name"`

	// Output Variable name to store the step's output
	Output *string `json:"output,omitempty"`

	// Parallel Configuration for parallel execution of the step
	Parallel *struct {
		// Items Array of items to process in parallel. Can be a static array or a reference to a variable containing an array
		Items *Step_Parallel_Items `json:"items,omitempty"`

		// MaxConcurrent Maximum number of parallel executions. Default is 10 if not specified
		MaxConcurrent *int `json:"maxConcurrent,omitempty"`
	} `json:"parallel,omitempty"`

	// Params Parameters to pass to the sub DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Preconditions Conditions that must be met before the step can start
	Preconditions *[]Condition `json:"preconditions,omitempty"`

	// RepeatPolicy Configuration for step repeat behavior
	RepeatPolicy *RepeatPolicy `json:"repeatPolicy,omitempty"`

	// Router Router configuration for switch/case routing
	Router *struct {
		Routes []struct {
			// Pattern Match pattern (exact or 're:regex')
			Pattern string `json:"pattern"`

			// Targets Step names to route to
			Targets []string `json:"targets"`
		} `json:"routes"`

		// Value Expression to evaluate (e.g., '${STATUS}')
		Value string `json:"value"`
	} `json:"router,omitempty"`

	// Script Script content if the step executes a script file
	Script *string `json:"script,omitempty"`

	// Stderr File path for capturing standard error
	Stderr *string `json:"stderr,omitempty"`

	// Stdout File path for capturing standard output
	Stdout *string `json:"stdout,omitempty"`

	// TimeoutSec Maximum execution time for the step in seconds. If set, this timeout takes precedence over the DAG-level timeout for this step.
	TimeoutSec *int `json:"timeoutSec,omitempty"`
}

// StepParallelItems0 defines model for .
type StepParallelItems0 = []string

// StepParallelItems1 defines model for .
type StepParallelItems1 = string

// Step_Parallel_Items Array of items to process in parallel. Can be a static array or a reference to a variable containing an array
type Step_Parallel_Items struct {
	union json.RawMessage
}

// Stream defines model for Stream.
type Stream string

// SubDAGRun Metadata for a sub DAG-run
type SubDAGRun struct {
	// DagName Name of the executed sub-DAG. For chat tool calls, this is the tool DAG name.
	DagName *string `json:"dagName,omitempty"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// Params Parameters passed to the sub DAG-run in JSON format
	Params *string `json:"params,omitempty"`
}

// SubDAGRunDetail Detailed information for a sub DAG-run including timing and status
type SubDAGRunDetail struct {
	// DagName Name of the executed sub-DAG. For chat tool calls, this is the tool DAG name.
	DagName *string `json:"dagName,omitempty"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// FinishedAt RFC 3339 timestamp when the sub DAG-run finished
	FinishedAt *string `json:"finishedAt,omitempty"`

	// Params Parameters passed to the sub DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// StartedAt RFC 3339 timestamp when the sub DAG-run started
	StartedAt string `json:"startedAt"`

	// Status Numeric status code indicating current DAG-run state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Queued"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	Status Status `json:"status"`

	// StatusLabel Human-readable status description for the DAG-run
	StatusLabel StatusLabel `json:"statusLabel"`
}

// SuccessResponse Generic success response
type SuccessResponse struct {
	// Message Success message
	Message string `json:"message"`
}

// SyncAuthConfig Git authentication configuration
type SyncAuthConfig struct {
	// SshKeyPath Path to SSH private key
	SshKeyPath *string `json:"sshKeyPath,omitempty"`

	// Token Personal access token (write-only)
	Token *string            `json:"token,omitempty"`
	Type  SyncAuthConfigType `json:"type"`
}

// SyncAuthConfigType defines model for SyncAuthConfig.Type.
type SyncAuthConfigType string

// SyncAutoSyncConfig Auto-sync configuration
type SyncAutoSyncConfig struct {
	Enabled bool `json:"enabled"`

	// Interval Sync interval in seconds
	Interval  int  `json:"interval"`
	OnStartup bool `json:"onStartup"`
}

// SyncCommitConfig Commit configuration
type SyncCommitConfig struct {
	AuthorEmail *string `json:"authorEmail,omitempty"`
	AuthorName  *string `json:"authorName,omitempty"`
}

// SyncConfigResponse Git sync configuration
type SyncConfigResponse struct {
	// Auth Git authentication configuration
	Auth *SyncAuthConfig `json:"auth,omitempty"`

	// AutoSync Auto-sync configuration
	AutoSync *SyncAutoSyncConfig `json:"autoSync,omitempty"`
	Branch   *string             `json:"branch,omitempty"`

	// Commit Commit configuration
	Commit      *SyncCommitConfig `json:"commit,omitempty"`
	Enabled     bool              `json:"enabled"`
	Path        *string           `json:"path,omitempty"`
	PushEnabled *bool             `json:"pushEnabled,omitempty"`
	Repository  *string           `json:"repository,omitempty"`
}

// SyncConfigUpdateRequest Request to update Git sync configuration
type SyncConfigUpdateRequest struct {
	// Auth Git authentication configuration
	Auth *SyncAuthConfig `json:"auth,omitempty"`

	// AutoSync Auto-sync configuration
	AutoSync *SyncAutoSyncConfig `json:"autoSync,omitempty"`
	Branch   *string             `json:"branch,omitempty"`

	// Commit Commit configuration
	Commit      *SyncCommitConfig `json:"commit,omitempty"`
	Enabled     *bool             `json:"enabled,omitempty"`
	Path        *string           `json:"path,omitempty"`
	PushEnabled *bool             `json:"pushEnabled,omitempty"`
	Repository  *string           `json:"repository,omitempty"`
}

// SyncConflictResponse Response when a conflict is detected
type SyncConflictResponse struct {
	ItemId        string  `json:"itemId"`
	Message       string  `json:"message"`
	RemoteAuthor  *string `json:"remoteAuthor,omitempty"`
	RemoteCommit  *string `json:"remoteCommit,omitempty"`
	RemoteMessage *string `json:"remoteMessage,omitempty"`
}

// SyncConnectionTestResponse Result of connection test
type SyncConnectionTestResponse struct {
	Error   *string `json:"error,omitempty"`
	Message *string `json:"message,omitempty"`
	Success bool    `json:"success"`
}

// SyncDeleteBatchRequest Request to delete selected items
type SyncDeleteBatchRequest struct {
	// Force Force delete items with local modifications or conflicts
	Force *bool `json:"force,omitempty"`

	// ItemIds Item IDs to delete
	ItemIds []string `json:"itemIds"`

	// Message Commit message for the deletion
	Message *string `json:"message,omitempty"`
}

// SyncError Error during sync operation
type SyncError struct {
	ItemId  *string `json:"itemId,omitempty"`
	Message string  `json:"message"`
}

// SyncItem Sync state for a single item
type SyncItem struct {
	// BaseCommit Commit hash when last synced
	BaseCommit *string `json:"baseCommit,omitempty"`

	// ConflictDetectedAt When the conflict was detected
	ConflictDetectedAt *time.Time `json:"conflictDetectedAt,omitempty"`

	// DisplayName Display-friendly item name
	DisplayName string `json:"displayName"`

	// FilePath Relative file path with extension
	FilePath string `json:"filePath"`

	// ItemId Stable item identifier (file path without extension)
	ItemId string `json:"itemId"`

	// Kind Type of sync item
	Kind SyncItemKind `json:"kind"`

	// LastSyncedAt When the DAG was last synced
	LastSyncedAt *time.Time `json:"lastSyncedAt,omitempty"`

	// LastSyncedHash Content hash when last synced
	LastSyncedHash *string `json:"lastSyncedHash,omitempty"`

	// LocalHash Current local content hash
	LocalHash *string `json:"localHash,omitempty"`

	// MissingAt When the file was first detected as missing
	MissingAt *time.Time `json:"missingAt,omitempty"`

	// ModifiedAt When the DAG was last modified locally
	ModifiedAt *time.Time `json:"modifiedAt,omitempty"`

	// PreviousStatus Sync status of a DAG
	PreviousStatus *SyncStatus `json:"previousStatus,omitempty"`

	// RemoteAuthor Author of the remote commit (for conflicts)
	RemoteAuthor *string `json:"remoteAuthor,omitempty"`

	// RemoteCommit Remote commit hash (for conflicts)
	RemoteCommit *string `json:"remoteCommit,omitempty"`

	// RemoteMessage Message of the remote commit (for conflicts)
	RemoteMessage *string `json:"remoteMessage,omitempty"`

	// Status Sync status of a DAG
	Status SyncStatus `json:"status"`
}

// SyncItemDiffResponse Diff between local and remote versions of a sync item
type SyncItemDiffResponse struct {
	// FilePath Relative file path with extension
	FilePath string `json:"filePath"`

	// ItemId The item identifier
	ItemId string `json:"itemId"`

	// LocalContent Current local file content
	LocalContent string `json:"localContent"`

	// RemoteAuthor Author of the remote commit
	RemoteAuthor *string `json:"remoteAuthor,omitempty"`

	// RemoteCommit Commit hash being compared against
	RemoteCommit *string `json:"remoteCommit,omitempty"`

	// RemoteContent Content from remote repository
	RemoteContent *string `json:"remoteContent,omitempty"`

	// RemoteMessage Commit message of the remote version
	RemoteMessage *string `json:"remoteMessage,omitempty"`

	// Status Sync status of a DAG
	Status SyncStatus `json:"status"`
}

// SyncItemKind Type of sync item
type SyncItemKind string

// SyncPublishAllRequest Request to publish selected items
type SyncPublishAllRequest struct {
	// ItemIds Item IDs to publish. If omitted, all modified or untracked items are published.
	ItemIds *[]string `json:"itemIds,omitempty"`

	// Message Commit message
	Message *string `json:"message,omitempty"`
}

// SyncPublishRequest Request to publish a DAG
type SyncPublishRequest struct {
	// Force Force publish even with conflicts
	Force *bool `json:"force,omitempty"`

	// Message Commit message
	Message *string `json:"message,omitempty"`
}

// SyncResultResponse Result of a sync operation
type SyncResultResponse struct {
	// Conflicts DAG IDs with conflicts
	Conflicts *[]string    `json:"conflicts,omitempty"`
	Errors    *[]SyncError `json:"errors,omitempty"`
	Message   *string      `json:"message,omitempty"`

	// Modified DAG IDs that were modified
	Modified *[]string `json:"modified,omitempty"`
	Success  bool      `json:"success"`

	// Synced DAG IDs that were synced
	Synced    *[]string `json:"synced,omitempty"`
	Timestamp time.Time `json:"timestamp"`
}

// SyncStatus Sync status of a DAG
type SyncStatus string

// SyncStatusCounts Counts of DAGs in each sync status
type SyncStatusCounts struct {
	Conflict  int `json:"conflict"`
	Missing   int `json:"missing"`
	Modified  int `json:"modified"`
	Synced    int `json:"synced"`
	Untracked int `json:"untracked"`
}

// SyncStatusResponse Overall Git sync status
type SyncStatusResponse struct {
	// Branch Branch being synced
	Branch *string `json:"branch,omitempty"`

	// Counts Counts of DAGs in each sync status
	Counts SyncStatusCounts `json:"counts"`

	// Enabled Whether Git sync is enabled
	Enabled bool `json:"enabled"`

	// Items Sync state for each item
	Items []SyncItem `json:"items"`

	// LastError Error message from last failed sync
	LastError *string `json:"lastError,omitempty"`

	// LastSyncAt When the last sync occurred
	LastSyncAt *time.Time `json:"lastSyncAt,omitempty"`

	// LastSyncCommit Commit hash of last sync
	LastSyncCommit *string `json:"lastSyncCommit,omitempty"`

	// LastSyncStatus Status of last sync (success/error)
	LastSyncStatus *string `json:"lastSyncStatus,omitempty"`

	// Repository Repository URL
	Repository *string `json:"repository,omitempty"`

	// Summary Summary status for the sync badge
	Summary SyncSummary `json:"summary"`
}

// SyncSummary Summary status for the sync badge
type SyncSummary string

// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
type Tags = []string

// TestDAGNotificationRequest Request to send a test notification
type TestDAGNotificationRequest struct {
	// EventType DAG run event that can trigger server-side notifications
	EventType *NotificationEventType `json:"eventType,omitempty"`

	// TargetId Optional DAG-local target ID, subscription ID, or channel ID. When omitted, every enabled target and subscription is tested.
	TargetId *string `json:"targetId,omitempty"`
}

// TestDAGNotificationResponse Result of test notification delivery
type TestDAGNotificationResponse struct {
	Results []TestDAGNotificationResult `json:"results"`
}

// TestDAGNotificationResult Delivery result for one notification target
type TestDAGNotificationResult struct {
	Delivered bool    `json:"delivered"`
	Error     *string `json:"error,omitempty"`

	// Provider Notification delivery provider
	Provider   NotificationProviderType `json:"provider"`
	TargetId   string                   `json:"targetId"`
	TargetName string                   `json:"targetName"`
}

// TestIncidentProviderResponse Result of test incident delivery
type TestIncidentProviderResponse struct {
	// Result Delivery result for one incident provider
	Result TestIncidentProviderResult `json:"result"`
}

// TestIncidentProviderResult Delivery result for one incident provider
type TestIncidentProviderResult struct {
	Delivered    bool    `json:"delivered"`
	Error        *string `json:"error,omitempty"`
	ProviderId   string  `json:"providerId"`
	ProviderName string  `json:"providerName"`

	// ProviderType Incident provider type
	ProviderType IncidentProviderType `json:"providerType"`
}

// TestRemoteNodeConnectionResponse defines model for TestRemoteNodeConnectionResponse.
type TestRemoteNodeConnectionResponse struct {
	Error   *string `json:"error,omitempty"`
	Message *string `json:"message,omitempty"`
	Success bool    `json:"success"`
}

// TimeoutError defines model for TimeoutError.
type TimeoutError struct {
	// Code Error code indicating the type of error
	Code     ErrorCode `json:"code"`
	DagRunId string    `json:"dagRunId"`

	// Details Additional error details
	Details *map[string]interface{} `json:"details,omitempty"`

	// Message Short error message
	Message string `json:"message"`
}

// ToolDefinition A tool definition that was available to the LLM
type ToolDefinition struct {
	// Description Description of what the tool does
	Description *string `json:"description,omitempty"`

	// Name Name of the tool
	Name string `json:"name"`

	// Parameters JSON Schema describing the tool's parameters
	Parameters *map[string]interface{} `json:"parameters,omitempty"`
}

// TriggerType How the DAG-run was initiated
type TriggerType string

// TunnelStatusResponse Response containing tunnel service status
type TunnelStatusResponse struct {
	// Enabled Whether tunneling is enabled in configuration
	Enabled bool `json:"enabled"`

	// Error Error message if tunnel failed
	Error *string `json:"error,omitempty"`

	// IsPublic Whether the tunnel provides public internet access
	IsPublic *bool `json:"isPublic,omitempty"`

	// Mode Tunnel mode (e.g., 'direct' or 'funnel' for Tailscale)
	Mode *string `json:"mode,omitempty"`

	// Provider The tunnel provider in use
	Provider *TunnelStatusResponseProvider `json:"provider,omitempty"`

	// PublicUrl The public URL provided by the tunnel
	PublicUrl *string `json:"publicUrl,omitempty"`

	// StartedAt RFC3339 timestamp when tunnel connected
	StartedAt *time.Time `json:"startedAt,omitempty"`

	// Status Current status of the tunnel
	Status TunnelStatusResponseStatus `json:"status"`
}

// TunnelStatusResponseProvider The tunnel provider in use
type TunnelStatusResponseProvider string

// TunnelStatusResponseStatus Current status of the tunnel
type TunnelStatusResponseStatus string

// UnixTimestamp Unix timestamp in seconds
type UnixTimestamp = int64

// UpdateAPIKeyRequest Update API key request
type UpdateAPIKeyRequest struct {
	// Description New description
	Description *string `json:"description,omitempty"`

	// Name New name
	Name *string `json:"name,omitempty"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role *UserRole `json:"role,omitempty"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess *WorkspaceAccess `json:"workspaceAccess,omitempty"`
}

// UpdateAgentConfigRequest Request to update AI agent configuration
type UpdateAgentConfigRequest struct {
	// DefaultModelId ID of the default model
	DefaultModelId *string `json:"defaultModelId,omitempty"`

	// Enabled Whether the AI agent is enabled
	Enabled *bool `json:"enabled,omitempty"`

	// SelectedSoulId ID of the soul to select
	SelectedSoulId *string `json:"selectedSoulId"`

	// ToolPolicy Global tool permission policy for AI agent sessions
	ToolPolicy *AgentToolPolicy `json:"toolPolicy,omitempty"`

	// WebSearch Provider-native web search configuration for agent sessions
	WebSearch *AgentWebSearchConfig `json:"webSearch,omitempty"`

	// WebTools First-class web_search and web_extract tool configuration
	WebTools *AgentWebToolsConfig `json:"webTools,omitempty"`
}

// UpdateAgentMemoryRequest Request to update memory content
type UpdateAgentMemoryRequest struct {
	// Content New memory content (markdown)
	Content string `json:"content"`
}

// UpdateDAGNotificationsRequest Request to replace DAG notification settings
type UpdateDAGNotificationsRequest struct {
	// Enabled Whether notification delivery is enabled for this DAG
	Enabled       bool                             `json:"enabled"`
	Events        []NotificationEventType          `json:"events"`
	Subscriptions *[]NotificationSubscriptionInput `json:"subscriptions,omitempty"`
	Targets       []NotificationTargetInput        `json:"targets"`
}

// UpdateDocRequest Request to update document content
type UpdateDocRequest struct {
	// Content Full file content including optional YAML frontmatter
	Content string `json:"content"`
}

// UpdateModelConfigRequest Request to update a model configuration
type UpdateModelConfigRequest struct {
	ApiKey           *string                                 `json:"apiKey,omitempty"`
	BaseUrl          *string                                 `json:"baseUrl,omitempty"`
	ContextWindow    *int                                    `json:"contextWindow,omitempty"`
	Description      *string                                 `json:"description,omitempty"`
	InputCostPer1M   *float64                                `json:"inputCostPer1M,omitempty"`
	MaxOutputTokens  *int                                    `json:"maxOutputTokens,omitempty"`
	Model            *string                                 `json:"model,omitempty"`
	Name             *string                                 `json:"name,omitempty"`
	OutputCostPer1M  *float64                                `json:"outputCostPer1M,omitempty"`
	Provider         *UpdateModelConfigRequestProvider       `json:"provider,omitempty"`
	SupportsThinking *bool                                   `json:"supportsThinking,omitempty"`
	ThinkingEffort   *UpdateModelConfigRequestThinkingEffort `json:"thinkingEffort,omitempty"`
}

// UpdateModelConfigRequestProvider defines model for UpdateModelConfigRequest.Provider.
type UpdateModelConfigRequestProvider string

// UpdateModelConfigRequestThinkingEffort defines model for UpdateModelConfigRequest.ThinkingEffort.
type UpdateModelConfigRequestThinkingEffort string

// UpdateRemoteNodeRequest defines model for UpdateRemoteNodeRequest.
type UpdateRemoteNodeRequest struct {
	ApiBaseUrl        *string                          `json:"apiBaseUrl,omitempty"`
	AuthToken         *string                          `json:"authToken,omitempty"`
	AuthType          *UpdateRemoteNodeRequestAuthType `json:"authType,omitempty"`
	BasicAuthPassword *string                          `json:"basicAuthPassword,omitempty"`
	BasicAuthUsername *string                          `json:"basicAuthUsername,omitempty"`
	Description       *string                          `json:"description,omitempty"`
	Name              *string                          `json:"name,omitempty"`
	SkipTlsVerify     *bool                            `json:"skipTlsVerify,omitempty"`
}

// UpdateRemoteNodeRequestAuthType defines model for UpdateRemoteNodeRequest.AuthType.
type UpdateRemoteNodeRequestAuthType string

// UpdateSecretRequest defines model for UpdateSecretRequest.
type UpdateSecretRequest struct {
	Description          *string `json:"description,omitempty"`
	ProviderConnectionId *string `json:"providerConnectionId,omitempty"`
	ProviderRef          *string `json:"providerRef,omitempty"`
}

// UpdateSoulRequest Request to update a soul (partial update)
type UpdateSoulRequest struct {
	// Content Markdown body content (identity definition)
	Content     *string `json:"content,omitempty"`
	Description *string `json:"description,omitempty"`
	Name        *string `json:"name,omitempty"`
}

// UpdateUserRequest Request body for updating a user
type UpdateUserRequest struct {
	// IsDisabled Whether to disable the user account
	IsDisabled *bool `json:"isDisabled,omitempty"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role *UserRole `json:"role,omitempty"`

	// Username New username (must be unique)
	Username *string `json:"username,omitempty"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess *WorkspaceAccess `json:"workspaceAccess,omitempty"`
}

// UpdateWorkspaceRequest defines model for UpdateWorkspaceRequest.
type UpdateWorkspaceRequest struct {
	Description *string `json:"description,omitempty"`

	// Name Workspace name. The reserved names all and default are not allowed.
	Name *WorkspaceName `json:"name,omitempty"`
}

// User User information
type User struct {
	// AuthProvider Authentication provider (builtin or oidc)
	AuthProvider *UserAuthProvider `json:"authProvider,omitempty"`

	// CreatedAt Account creation timestamp
	CreatedAt time.Time `json:"createdAt"`

	// Id Unique user identifier
	Id string `json:"id"`

	// IsDisabled Whether the user account is disabled
	IsDisabled *bool `json:"isDisabled,omitempty"`

	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role UserRole `json:"role"`

	// UpdatedAt Last update timestamp
	UpdatedAt time.Time `json:"updatedAt"`

	// Username User's username
	Username string `json:"username"`

	// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
	WorkspaceAccess WorkspaceAccess `json:"workspaceAccess"`
}

// UserAuthProvider Authentication provider (builtin or oidc)
type UserAuthProvider string

// UserResponse Response containing user information
type UserResponse struct {
	// User User information
	User User `json:"user"`
}

// UserRole User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
type UserRole string

// UsersListResponse Response containing list of users
type UsersListResponse struct {
	Users []User `json:"users"`
}

// WebhookAuthMode Authentication mode for a webhook trigger endpoint
type WebhookAuthMode string

// WebhookCreateResponse Response when creating or regenerating a webhook (includes full token)
type WebhookCreateResponse struct {
	// Token Full webhook token (only shown once, store securely!)
	Token string `json:"token"`

	// Webhook Webhook configuration details (token not included)
	Webhook WebhookDetails `json:"webhook"`
}

// WebhookDetails Webhook configuration details (token not included)
type WebhookDetails struct {
	// AuthMode Authentication mode for a webhook trigger endpoint
	AuthMode WebhookAuthMode `json:"authMode"`

	// CreatedAt When the webhook was created
	CreatedAt time.Time `json:"createdAt"`

	// CreatedBy User ID who created the webhook
	CreatedBy *string `json:"createdBy,omitempty"`

	// DagName Name of the DAG this webhook triggers
	DagName string `json:"dagName"`

	// Enabled Whether the webhook is active
	Enabled bool `json:"enabled"`

	// Hmac Public webhook HMAC configuration details
	Hmac WebhookHMACDetails `json:"hmac"`

	// Id Unique identifier for the webhook
	Id openapi_types.UUID `json:"id"`

	// LastUsedAt When the webhook was last triggered
	LastUsedAt *time.Time `json:"lastUsedAt,omitempty"`

	// TokenPrefix First 8 characters of the token for identification
	TokenPrefix string `json:"tokenPrefix"`

	// UpdatedAt When the webhook was last modified
	UpdatedAt time.Time `json:"updatedAt"`
}

// WebhookHMACConfigureRequest Request to configure webhook HMAC auth mode and enforcement.
// If enforcementMode is omitted when enabling HMAC, it defaults to strict.
// If omitted when configuring an existing webhook, the current enforcement
// mode is preserved for token_and_hmac, while hmac_only always uses strict.
// Clients should omit enforcementMode when authMode is hmac_only; the
// server enforces strict mode and rejects observe.
type WebhookHMACConfigureRequest struct {
	AuthMode WebhookHMACConfigureRequestAuthMode `json:"authMode"`

	// EnforcementMode How HMAC validation is enforced when HMAC is enabled
	EnforcementMode *WebhookHMACEnforcementMode `json:"enforcementMode,omitempty"`
}

// WebhookHMACConfigureRequestAuthMode defines model for WebhookHMACConfigureRequest.AuthMode.
type WebhookHMACConfigureRequestAuthMode string

// WebhookHMACDetails Public webhook HMAC configuration details
type WebhookHMACDetails struct {
	// Algorithm Fixed HMAC algorithm for v1
	Algorithm *string `json:"algorithm,omitempty"`

	// Enabled Whether HMAC authentication is currently enabled
	Enabled bool `json:"enabled"`

	// EnforcementMode How HMAC validation is enforced when HMAC is enabled
	EnforcementMode *WebhookHMACEnforcementMode `json:"enforcementMode,omitempty"`

	// Format Expected signature header value format
	Format *string `json:"format,omitempty"`

	// HeaderName Header containing the HMAC signature
	HeaderName *string `json:"headerName,omitempty"`

	// SecretConfigured Whether an HMAC secret is configured for the webhook
	SecretConfigured bool `json:"secretConfigured"`

	// UpdatedAt When the HMAC secret was last generated
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

// WebhookHMACEnforcementMode How HMAC validation is enforced when HMAC is enabled
type WebhookHMACEnforcementMode string

// WebhookHMACSecretResponse Response when enabling or regenerating webhook HMAC (includes full secret)
type WebhookHMACSecretResponse struct {
	// HmacSecret Full HMAC secret (only shown once, store securely!)
	HmacSecret string `json:"hmacSecret"`

	// Webhook Webhook configuration details (token not included)
	Webhook WebhookDetails `json:"webhook"`
}

// WebhookListResponse List of all webhooks
type WebhookListResponse struct {
	Webhooks []WebhookDetails `json:"webhooks"`
}

// WebhookRequest Request body for webhook trigger endpoint
type WebhookRequest struct {
	DagRunId *string `json:"dagRunId,omitempty"`

	// Payload Arbitrary JSON payload to pass to the DAG as WEBHOOK_PAYLOAD
	Payload *map[string]interface{} `json:"payload,omitempty"`
}

// WebhookResponse Response from webhook trigger endpoint
type WebhookResponse struct {
	// DagName Name of the triggered DAG
	DagName string `json:"dagName"`

	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`
}

// WebhookToggleRequest Request to toggle webhook enabled state
type WebhookToggleRequest struct {
	// Enabled Whether to enable or disable the webhook
	Enabled bool `json:"enabled"`
}

// Worker Information about a distributed worker
type Worker struct {
	// BusyPollers Number of pollers currently executing tasks
	BusyPollers int `json:"busyPollers"`

	// HealthStatus Health status of the worker based on heartbeat recency
	HealthStatus WorkerHealthStatus `json:"healthStatus"`

	// Id Unique identifier for the worker
	Id string `json:"id"`

	// Labels Key-value pairs of labels assigned to the worker
	Labels map[string]string `json:"labels"`

	// LastHeartbeatAt RFC3339 timestamp of the last heartbeat received from this worker
	LastHeartbeatAt string `json:"lastHeartbeatAt"`

	// RunningTasks List of tasks currently being executed by this worker
	RunningTasks []RunningTask `json:"runningTasks"`

	// TotalPollers Total number of pollers configured for this worker
	TotalPollers int `json:"totalPollers"`
}

// WorkerHealthStatus Health status of the worker based on heartbeat recency
type WorkerHealthStatus string

// WorkersListResponse Response object for listing distributed workers
type WorkersListResponse struct {
	// Errors List of errors encountered during the request
	Errors []string `json:"errors"`

	// Workers List of distributed workers
	Workers []Worker `json:"workers"`
}

// WorkspaceAccess Workspace access policy. all=true grants the top-level role in every workspace. all=false requires explicit workspace grants and a top-level viewer role.
type WorkspaceAccess struct {
	// All Whether this identity can access all workspaces
	All bool `json:"all"`

	// Grants Workspace-specific grants used when all=false
	Grants []WorkspaceGrant `json:"grants"`
}

// WorkspaceGrant Role granted for a specific workspace
type WorkspaceGrant struct {
	// Role User role determining access permissions. admin: full access including user management, manager: DAG CRUD and execution with audit log access, developer: DAG CRUD and execution, operator: DAG execution only, viewer: read-only
	Role UserRole `json:"role"`

	// Workspace Workspace name. The reserved names all and default are not allowed.
	Workspace WorkspaceName `json:"workspace"`
}

// WorkspaceListResponse defines model for WorkspaceListResponse.
type WorkspaceListResponse struct {
	Workspaces []WorkspaceResponse `json:"workspaces"`
}

// WorkspaceName Workspace name. The reserved names all and default are not allowed.
type WorkspaceName = string

// WorkspaceResponse defines model for WorkspaceResponse.
type WorkspaceResponse struct {
	CreatedAt   *time.Time `json:"createdAt,omitempty"`
	Description *string    `json:"description,omitempty"`
	Id          string     `json:"id"`

	// Name Workspace name. The reserved names all and default are not allowed.
	Name      WorkspaceName `json:"name"`
	UpdatedAt *time.Time    `json:"updatedAt,omitempty"`
}

// WriteSecretVersionRequest defines model for WriteSecretVersionRequest.
type WriteSecretVersionRequest struct {
	Value *string `json:"value,omitempty"`
}

// APIKeyId defines model for APIKeyId.
type APIKeyId = string

// AgentSessionCursor defines model for AgentSessionCursor.
type AgentSessionCursor = string

// AgentSessionId defines model for AgentSessionId.
type AgentSessionId = string

// AgentSessionPaginationMode defines model for AgentSessionPaginationMode.
type AgentSessionPaginationMode string

// ArtifactPath defines model for ArtifactPath.
type ArtifactPath = string

// ArtifactRecursive defines model for ArtifactRecursive.
type ArtifactRecursive = bool

// AuditLogLimit defines model for AuditLogLimit.
type AuditLogLimit = int

// DAGRunConcreteId defines model for DAGRunConcreteId.
type DAGRunConcreteId = string

// DAGRunIdSearch Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
type DAGRunIdSearch = DAGRunId

// DAGRunListCursor defines model for DAGRunListCursor.
type DAGRunListCursor = string

// DAGRunListLimit defines model for DAGRunListLimit.
type DAGRunListLimit = int

// DAGRunName defines model for DAGRunName.
type DAGRunName = string

// DateTimeFrom Unix timestamp in seconds
type DateTimeFrom = UnixTimestamp

// DateTimeTo Unix timestamp in seconds
type DateTimeTo = UnixTimestamp

// EventLogCursor defines model for EventLogCursor.
type EventLogCursor = string

// EventLogLimit defines model for EventLogLimit.
type EventLogLimit = int

// EventLogPaginationMode defines model for EventLogPaginationMode.
type EventLogPaginationMode string

// Head defines model for Head.
type Head = int

// Limit defines model for Limit.
type Limit = int

// LogEndTime defines model for LogEndTime.
type LogEndTime = time.Time

// LogOffset defines model for LogOffset.
type LogOffset = int

// LogStartTime defines model for LogStartTime.
type LogStartTime = time.Time

// Offset defines model for Offset.
type Offset = int

// Page defines model for Page.
type Page = int

// PerPage defines model for PerPage.
type PerPage = int

// QueueListCursor defines model for QueueListCursor.
type QueueListCursor = string

// QueueListLimit defines model for QueueListLimit.
type QueueListLimit = int

// RemoteNode defines model for RemoteNode.
type RemoteNode = string

// RemoteNodeId defines model for RemoteNodeId.
type RemoteNodeId = string

// SearchCursor defines model for SearchCursor.
type SearchCursor = string

// SearchLimit defines model for SearchLimit.
type SearchLimit = int

// SearchMatchLimit defines model for SearchMatchLimit.
type SearchMatchLimit = int

// SoulId defines model for SoulId.
type SoulId = string

// StatusList defines model for StatusList.
type StatusList = []Status

// StepName defines model for StepName.
type StepName = string

// Tail defines model for Tail.
type Tail = int

// UserId defines model for UserId.
type UserId = string

// Workspace defines model for Workspace.
type Workspace = string

// ListAgentSessionsParams defines parameters for ListAgentSessions.
type ListAgentSessionsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// PaginationMode Pagination mode. Use `cursor` for the agent session sidebar infinite-loading flow; omit or use `offset` for compatibility pagination.
	PaginationMode *ListAgentSessionsParamsPaginationMode `form:"paginationMode,omitempty" json:"paginationMode,omitempty"`

	// Cursor Opaque cursor for loading the next page of older agent sessions
	Cursor *AgentSessionCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Page page number of items to fetch (default is 1)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// PerPage number of items per page (default is 30, max is 100)
	PerPage *PerPage `form:"perPage,omitempty" json:"perPage,omitempty"`
}

// ListAgentSessionsParamsPaginationMode defines parameters for ListAgentSessions.
type ListAgentSessionsParamsPaginationMode string

// CreateAgentSessionParams defines parameters for CreateAgentSession.
type CreateAgentSessionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAgentSessionParams defines parameters for GetAgentSession.
type GetAgentSessionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CancelAgentSessionParams defines parameters for CancelAgentSession.
type CancelAgentSessionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ChatAgentSessionParams defines parameters for ChatAgentSession.
type ChatAgentSessionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RespondAgentSessionParams defines parameters for RespondAgentSession.
type RespondAgentSessionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListAuditLogsParams defines parameters for ListAuditLogs.
type ListAuditLogsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Category Filter by audit category (e.g., terminal, user, dag)
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// UserId Filter by user ID
	UserId *string `form:"userId,omitempty" json:"userId,omitempty"`

	// StartTime Filter entries after this time (ISO 8601 format)
	StartTime *LogStartTime `form:"startTime,omitempty" json:"startTime,omitempty"`

	// EndTime Filter entries before this time (ISO 8601 format)
	EndTime *LogEndTime `form:"endTime,omitempty" json:"endTime,omitempty"`

	// Limit Maximum number of entries to return (default 100)
	Limit *AuditLogLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of entries to skip (for pagination)
	Offset *LogOffset `form:"offset,omitempty" json:"offset,omitempty"`
}

// SetupParams defines parameters for Setup.
type SetupParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListDAGRunsParams defines parameters for ListDAGRuns.
type ListDAGRunsParams struct {
	// Status status of the DAG-run. Repeat the parameter to match multiple statuses.
	Status *StatusList `form:"status,omitempty" json:"status,omitempty"`

	// FromDate start datetime for filtering DAG-runs in ISO 8601 format with timezone
	FromDate *DateTimeFrom `form:"fromDate,omitempty" json:"fromDate,omitempty"`

	// ToDate end datetime for filtering DAG-runs in ISO 8601 format with timezone
	ToDate *DateTimeTo `form:"toDate,omitempty" json:"toDate,omitempty"`

	// DagRunId ID of the DAG-run or 'latest' to get the most recent DAG-run
	DagRunId *DAGRunIdSearch `form:"dagRunId,omitempty" json:"dagRunId,omitempty"`

	// Limit Maximum number of DAG-runs to return (default 100)
	Limit *DAGRunListLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor for loading the next page of older DAG-runs
	Cursor *DAGRunListCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Name Filter DAG-runs by name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Labels Filter DAG-runs by DAG labels (comma-separated). Returns runs from DAGs that have ALL specified labels. Mutually exclusive with `tags`; the server returns HTTP 400 if both are set.
	Labels *string `form:"labels,omitempty" json:"labels,omitempty"`

	// Tags Deprecated alias for `labels`; mutually exclusive with `labels`. Filter DAG-runs by DAG labels (comma-separated).
	Tags *string `form:"tags,omitempty" json:"tags,omitempty"`
}

// ExecuteDAGRunFromSpecJSONBody defines parameters for ExecuteDAGRunFromSpec.
type ExecuteDAGRunFromSpecJSONBody struct {
	DagRunId *string `json:"dagRunId,omitempty"`

	// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
	Labels *Labels `json:"labels,omitempty"`

	// Name Optional name to use when the spec omits a name
	Name *string `json:"name,omitempty"`

	// Params Parameters to pass to the DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Singleton If true, prevent starting if a DAG with the same name is already running (returns 409)
	Singleton *bool `json:"singleton,omitempty"`

	// Spec DAG specification in YAML format
	Spec string `json:"spec"`

	// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *Tags `json:"tags,omitempty"`
}

// ExecuteDAGRunFromSpecParams defines parameters for ExecuteDAGRunFromSpec.
type ExecuteDAGRunFromSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// EnqueueDAGRunFromSpecJSONBody defines parameters for EnqueueDAGRunFromSpec.
type EnqueueDAGRunFromSpecJSONBody struct {
	DagRunId *string `json:"dagRunId,omitempty"`

	// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
	Labels *Labels `json:"labels,omitempty"`

	// Name Optional name to use when the spec omits a name
	Name *string `json:"name,omitempty"`

	// Params Parameters to persist with the queued DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Queue Override the queue to use for this DAG-run
	Queue *string `json:"queue,omitempty"`

	// Singleton If true, prevent enqueuing if DAG is already running or queued (returns 409 conflict)
	Singleton *bool `json:"singleton,omitempty"`

	// Spec DAG specification in YAML format
	Spec string `json:"spec"`

	// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *Tags `json:"tags,omitempty"`
}

// EnqueueDAGRunFromSpecParams defines parameters for EnqueueDAGRunFromSpec.
type EnqueueDAGRunFromSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListDAGRunsByNameParams defines parameters for ListDAGRunsByName.
type ListDAGRunsByNameParams struct {
	// Status status of the DAG-run. Repeat the parameter to match multiple statuses.
	Status *StatusList `form:"status,omitempty" json:"status,omitempty"`

	// FromDate start datetime for filtering DAG-runs in ISO 8601 format with timezone
	FromDate *DateTimeFrom `form:"fromDate,omitempty" json:"fromDate,omitempty"`

	// ToDate end datetime for filtering DAG-runs in ISO 8601 format with timezone
	ToDate *DateTimeTo `form:"toDate,omitempty" json:"toDate,omitempty"`

	// DagRunId ID of the DAG-run or 'latest' to get the most recent DAG-run
	DagRunId *DAGRunIdSearch `form:"dagRunId,omitempty" json:"dagRunId,omitempty"`

	// Limit Maximum number of DAG-runs to return (default 100)
	Limit *DAGRunListLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor for loading the next page of older DAG-runs
	Cursor *DAGRunListCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`
}

// DeleteDAGRunParams defines parameters for DeleteDAGRun.
type DeleteDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunDetailsParams defines parameters for GetDAGRunDetails.
type GetDAGRunDetailsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunArtifactsParams defines parameters for GetDAGRunArtifacts.
type GetDAGRunArtifactsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Recursive Whether to recursively expand nested artifact directories
	Recursive *ArtifactRecursive `form:"recursive,omitempty" json:"recursive,omitempty"`
}

// DownloadDAGRunArtifactParams defines parameters for DownloadDAGRunArtifact.
type DownloadDAGRunArtifactParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Path Relative artifact file path within the DAG-run artifact directory. Must not start with '/' or '\' or contain '..'.
	Path ArtifactPath `form:"path" json:"path"`
}

// GetDAGRunArtifactPreviewParams defines parameters for GetDAGRunArtifactPreview.
type GetDAGRunArtifactPreviewParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Path Relative artifact file path within the DAG-run artifact directory. Must not start with '/' or '\' or contain '..'.
	Path ArtifactPath `form:"path" json:"path"`
}

// DequeueDAGRunParams defines parameters for DequeueDAGRun.
type DequeueDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// EditRetryDAGRunJSONBody defines parameters for EditRetryDAGRun.
type EditRetryDAGRunJSONBody struct {
	// DagName Optional DAG name override for the edited retry run.
	DagName  *string `json:"dagName,omitempty"`
	DagRunId *string `json:"dagRunId,omitempty"`

	// SkipSteps Steps to mark skipped while preserving their previous output variables.
	SkipSteps *[]string `json:"skipSteps,omitempty"`

	// Spec Edited DAG specification in YAML format.
	Spec string `json:"spec"`
}

// EditRetryDAGRunParams defines parameters for EditRetryDAGRun.
type EditRetryDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// PreviewEditRetryDAGRunJSONBody defines parameters for PreviewEditRetryDAGRun.
type PreviewEditRetryDAGRunJSONBody struct {
	// DagName Optional DAG name override for the edited retry run.
	DagName *string `json:"dagName,omitempty"`

	// Spec Edited DAG specification in YAML format.
	Spec string `json:"spec"`
}

// PreviewEditRetryDAGRunParams defines parameters for PreviewEditRetryDAGRun.
type PreviewEditRetryDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunLogParams defines parameters for GetDAGRunLog.
type GetDAGRunLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Tail Number of lines to return from the end of the file
	Tail *Tail `form:"tail,omitempty" json:"tail,omitempty"`

	// Head Number of lines to return from the beginning of the file
	Head *Head `form:"head,omitempty" json:"head,omitempty"`

	// Offset Line number to start reading from (1-based)
	Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"`

	// Limit Maximum number of lines to return
	Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"`
}

// DownloadDAGRunLogParams defines parameters for DownloadDAGRunLog.
type DownloadDAGRunLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunOutputsParams defines parameters for GetDAGRunOutputs.
type GetDAGRunOutputsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RescheduleDAGRunJSONBody defines parameters for RescheduleDAGRun.
type RescheduleDAGRunJSONBody struct {
	// DagName Optional DAG name override for the new run.
	DagName  *string `json:"dagName,omitempty"`
	DagRunId *string `json:"dagRunId,omitempty"`

	// UseCurrentDagFile When true, reschedule from the current contents of the original DAG file instead of the stored historical YAML snapshot.
	UseCurrentDagFile *bool `json:"useCurrentDagFile,omitempty"`
}

// RescheduleDAGRunParams defines parameters for RescheduleDAGRun.
type RescheduleDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RetryDAGRunJSONBody defines parameters for RetryDAGRun.
type RetryDAGRunJSONBody struct {
	DagRunId string `json:"dagRunId"`

	// StepName Optional. If provided, only this step will be retried.
	StepName *string `json:"stepName,omitempty"`
}

// RetryDAGRunParams defines parameters for RetryDAGRun.
type RetryDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunSpecParams defines parameters for GetDAGRunSpec.
type GetDAGRunSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ApproveDAGRunStepParams defines parameters for ApproveDAGRunStep.
type ApproveDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGRunStepLogParams defines parameters for GetDAGRunStepLog.
type GetDAGRunStepLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Tail Number of lines to return from the end of the file
	Tail *Tail `form:"tail,omitempty" json:"tail,omitempty"`

	// Head Number of lines to return from the beginning of the file
	Head *Head `form:"head,omitempty" json:"head,omitempty"`

	// Offset Line number to start reading from (1-based)
	Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"`

	// Limit Maximum number of lines to return
	Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"`

	// Stream Whether to return stdout or stderr logs
	Stream *Stream `form:"stream,omitempty" json:"stream,omitempty"`
}

// DownloadDAGRunStepLogParams defines parameters for DownloadDAGRunStepLog.
type DownloadDAGRunStepLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Stream Whether to return stdout or stderr logs
	Stream *Stream `form:"stream,omitempty" json:"stream,omitempty"`
}

// GetDAGRunStepMessagesParams defines parameters for GetDAGRunStepMessages.
type GetDAGRunStepMessagesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// PushBackDAGRunStepParams defines parameters for PushBackDAGRunStep.
type PushBackDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RejectDAGRunStepParams defines parameters for RejectDAGRunStep.
type RejectDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateDAGRunStepStatusJSONBody defines parameters for UpdateDAGRunStepStatus.
type UpdateDAGRunStepStatusJSONBody struct {
	// Status Numeric status code indicating current node state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Skipped"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	// 9: "Retrying"
	Status NodeStatus `json:"status"`
}

// UpdateDAGRunStepStatusParams defines parameters for UpdateDAGRunStepStatus.
type UpdateDAGRunStepStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// TerminateDAGRunParams defines parameters for TerminateDAGRun.
type TerminateDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSubDAGRunsParams defines parameters for GetSubDAGRuns.
type GetSubDAGRunsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// ParentSubDAGRunId Optional parent sub DAG run ID. When provided, returns sub-runs of this specific sub DAG run instead of the root DAG run. Used for multi-level nested DAGs.
	ParentSubDAGRunId *string `form:"parentSubDAGRunId,omitempty" json:"parentSubDAGRunId,omitempty"`
}

// GetSubDAGRunDetailsParams defines parameters for GetSubDAGRunDetails.
type GetSubDAGRunDetailsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSubDAGRunArtifactsParams defines parameters for GetSubDAGRunArtifacts.
type GetSubDAGRunArtifactsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Recursive Whether to recursively expand nested artifact directories
	Recursive *ArtifactRecursive `form:"recursive,omitempty" json:"recursive,omitempty"`
}

// DownloadSubDAGRunArtifactParams defines parameters for DownloadSubDAGRunArtifact.
type DownloadSubDAGRunArtifactParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Path Relative artifact file path within the DAG-run artifact directory. Must not start with '/' or '\' or contain '..'.
	Path ArtifactPath `form:"path" json:"path"`
}

// GetSubDAGRunArtifactPreviewParams defines parameters for GetSubDAGRunArtifactPreview.
type GetSubDAGRunArtifactPreviewParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Path Relative artifact file path within the DAG-run artifact directory. Must not start with '/' or '\' or contain '..'.
	Path ArtifactPath `form:"path" json:"path"`
}

// GetSubDAGRunLogParams defines parameters for GetSubDAGRunLog.
type GetSubDAGRunLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Tail Number of lines to return from the end of the file
	Tail *Tail `form:"tail,omitempty" json:"tail,omitempty"`

	// Head Number of lines to return from the beginning of the file
	Head *Head `form:"head,omitempty" json:"head,omitempty"`

	// Offset Line number to start reading from (1-based)
	Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"`

	// Limit Maximum number of lines to return
	Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"`
}

// DownloadSubDAGRunLogParams defines parameters for DownloadSubDAGRunLog.
type DownloadSubDAGRunLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSubDAGRunSpecParams defines parameters for GetSubDAGRunSpec.
type GetSubDAGRunSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ApproveSubDAGRunStepParams defines parameters for ApproveSubDAGRunStep.
type ApproveSubDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSubDAGRunStepLogParams defines parameters for GetSubDAGRunStepLog.
type GetSubDAGRunStepLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Tail Number of lines to return from the end of the file
	Tail *Tail `form:"tail,omitempty" json:"tail,omitempty"`

	// Head Number of lines to return from the beginning of the file
	Head *Head `form:"head,omitempty" json:"head,omitempty"`

	// Offset Line number to start reading from (1-based)
	Offset *Offset `form:"offset,omitempty" json:"offset,omitempty"`

	// Limit Maximum number of lines to return
	Limit *Limit `form:"limit,omitempty" json:"limit,omitempty"`

	// Stream Whether to return stdout or stderr logs
	Stream *Stream `form:"stream,omitempty" json:"stream,omitempty"`
}

// DownloadSubDAGRunStepLogParams defines parameters for DownloadSubDAGRunStepLog.
type DownloadSubDAGRunStepLogParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Stream Whether to return stdout or stderr logs
	Stream *Stream `form:"stream,omitempty" json:"stream,omitempty"`
}

// GetSubDAGRunStepMessagesParams defines parameters for GetSubDAGRunStepMessages.
type GetSubDAGRunStepMessagesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// PushBackSubDAGRunStepParams defines parameters for PushBackSubDAGRunStep.
type PushBackSubDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RejectSubDAGRunStepParams defines parameters for RejectSubDAGRunStep.
type RejectSubDAGRunStepParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateSubDAGRunStepStatusJSONBody defines parameters for UpdateSubDAGRunStepStatus.
type UpdateSubDAGRunStepStatusJSONBody struct {
	// Status Numeric status code indicating current node state:
	// 0: "Not started"
	// 1: "Running"
	// 2: "Failed"
	// 3: "Aborted"
	// 4: "Success"
	// 5: "Skipped"
	// 6: "Partial Success"
	// 7: "Waiting for approval"
	// 8: "Rejected"
	// 9: "Retrying"
	Status NodeStatus `json:"status"`
}

// UpdateSubDAGRunStepStatusParams defines parameters for UpdateSubDAGRunStepStatus.
type UpdateSubDAGRunStepStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListDAGsParams defines parameters for ListDAGs.
type ListDAGsParams struct {
	// Page page number of items to fetch (default is 1)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// PerPage number of items per page (default is 30, max is 100)
	PerPage *PerPage `form:"perPage,omitempty" json:"perPage,omitempty"`

	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Name Filter DAGs by name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Labels Filter DAGs by labels (comma-separated). Returns DAGs that have ALL specified labels. Mutually exclusive with `tags`; the server returns HTTP 400 if both are set.
	Labels *string `form:"labels,omitempty" json:"labels,omitempty"`

	// Tags Deprecated alias for `labels`; mutually exclusive with `labels`. Filter DAGs by labels (comma-separated).
	Tags *string `form:"tags,omitempty" json:"tags,omitempty"`

	// Sort Field to sort by:
	// - `name`: Sort alphabetically by DAG name (case-insensitive)
	// - `nextRun`: Sort by next scheduled run time. DAGs with earlier next run times appear first in ascending order. DAGs without schedules appear last.
	Sort *ListDAGsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Order Sort order (ascending or descending)
	Order *ListDAGsParamsOrder `form:"order,omitempty" json:"order,omitempty"`
}

// ListDAGsParamsSort defines parameters for ListDAGs.
type ListDAGsParamsSort string

// ListDAGsParamsOrder defines parameters for ListDAGs.
type ListDAGsParamsOrder string

// CreateNewDAGJSONBody defines parameters for CreateNewDAG.
type CreateNewDAGJSONBody struct {
	// Name Name of the DAG
	Name DAGName `json:"name"`

	// Spec Optional DAG spec in YAML format to initialize the DAG. If provided, the spec will be validated before creation.
	Spec *string `json:"spec,omitempty"`
}

// CreateNewDAGParams defines parameters for CreateNewDAG.
type CreateNewDAGParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAllDAGLabelsParams defines parameters for GetAllDAGLabels.
type GetAllDAGLabelsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`
}

// SearchDAGsParams defines parameters for SearchDAGs.
type SearchDAGsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Q A search query string
	Q string `form:"q" json:"q"`
}

// GetAllDAGTagsParams defines parameters for GetAllDAGTags.
type GetAllDAGTagsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`
}

// ValidateDAGSpecJSONBody defines parameters for ValidateDAGSpec.
type ValidateDAGSpecJSONBody struct {
	// Name Optional name to use when the spec omits a name
	Name *string `json:"name,omitempty"`

	// Spec DAG specification in YAML format
	Spec string `json:"spec"`
}

// ValidateDAGSpecParams defines parameters for ValidateDAGSpec.
type ValidateDAGSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteDAGParams defines parameters for DeleteDAG.
type DeleteDAGParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGDetailsParams defines parameters for GetDAGDetails.
type GetDAGDetailsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGDAGRunHistoryParams defines parameters for GetDAGDAGRunHistory.
type GetDAGDAGRunHistoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGDAGRunDetailsParams defines parameters for GetDAGDAGRunDetails.
type GetDAGDAGRunDetailsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// EnqueueDAGDAGRunJSONBody defines parameters for EnqueueDAGDAGRun.
type EnqueueDAGDAGRunJSONBody struct {
	// DagName Optional DAG name override to use for the queued dag-run
	DagName  *string `json:"dagName,omitempty"`
	DagRunId *string `json:"dagRunId,omitempty"`

	// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
	Labels *Labels `json:"labels,omitempty"`

	// Params Parameters to pass to the DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Queue Override the DAG-level queue definition
	Queue *string `json:"queue,omitempty"`

	// Singleton If true, prevent enqueuing if DAG is already running or queued (returns 409 conflict)
	Singleton *bool `json:"singleton,omitempty"`

	// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *Tags `json:"tags,omitempty"`
}

// EnqueueDAGDAGRunParams defines parameters for EnqueueDAGDAGRun.
type EnqueueDAGDAGRunParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteDAGIncidentsParams defines parameters for DeleteDAGIncidents.
type DeleteDAGIncidentsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGIncidentsParams defines parameters for GetDAGIncidents.
type GetDAGIncidentsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateDAGIncidentsParams defines parameters for UpdateDAGIncidents.
type UpdateDAGIncidentsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteDAGNotificationsParams defines parameters for DeleteDAGNotifications.
type DeleteDAGNotificationsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGNotificationsParams defines parameters for GetDAGNotifications.
type GetDAGNotificationsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateDAGNotificationsParams defines parameters for UpdateDAGNotifications.
type UpdateDAGNotificationsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// TestDAGNotificationsParams defines parameters for TestDAGNotifications.
type TestDAGNotificationsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RenameDAGJSONBody defines parameters for RenameDAG.
type RenameDAGJSONBody struct {
	// NewFileName New file name for the DAG
	NewFileName string `json:"newFileName"`
}

// RenameDAGParams defines parameters for RenameDAG.
type RenameDAGParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGSpecParams defines parameters for GetDAGSpec.
type GetDAGSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateDAGSpecJSONBody defines parameters for UpdateDAGSpec.
type UpdateDAGSpecJSONBody struct {
	// Spec The new DAG spec in YAML format
	Spec string `json:"spec"`
}

// UpdateDAGSpecParams defines parameters for UpdateDAGSpec.
type UpdateDAGSpecParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ExecuteDAGJSONBody defines parameters for ExecuteDAG.
type ExecuteDAGJSONBody struct {
	// DagName Optional DAG name override to use for the created dag-run
	DagName  *string `json:"dagName,omitempty"`
	DagRunId *string `json:"dagRunId,omitempty"`

	// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
	Labels *Labels `json:"labels,omitempty"`

	// Params Parameters to pass to the DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Singleton If true, prevent starting if DAG is already running (returns 409 conflict)
	Singleton *bool `json:"singleton,omitempty"`

	// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *Tags `json:"tags,omitempty"`
}

// ExecuteDAGParams defines parameters for ExecuteDAG.
type ExecuteDAGParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ExecuteDAGSyncJSONBody defines parameters for ExecuteDAGSync.
type ExecuteDAGSyncJSONBody struct {
	// DagName Optional DAG name override to use for the created dag-run
	DagName  *string `json:"dagName,omitempty"`
	DagRunId *string `json:"dagRunId,omitempty"`

	// Labels Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with deprecated `tags`; the server returns HTTP 400 if both are set.
	Labels *Labels `json:"labels,omitempty"`

	// Params Parameters to pass to the DAG-run in JSON format
	Params *string `json:"params,omitempty"`

	// Singleton If true, prevent starting if DAG is already running (returns 409 conflict)
	Singleton *bool `json:"singleton,omitempty"`

	// Tags Deprecated alias for Labels. Additional labels to apply to the DAG-run (format: key=value or key-only). Merged with labels defined in the DAG spec. Mutually exclusive with `labels`; the server returns HTTP 400 if both are set.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	Tags *Tags `json:"tags,omitempty"`

	// Timeout Maximum seconds to wait for DAG execution to complete (required)
	Timeout int `json:"timeout"`
}

// ExecuteDAGSyncParams defines parameters for ExecuteDAGSync.
type ExecuteDAGSyncParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// StopAllDAGRunsParams defines parameters for StopAllDAGRuns.
type StopAllDAGRunsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateDAGSuspensionStateJSONBody defines parameters for UpdateDAGSuspensionState.
type UpdateDAGSuspensionStateJSONBody struct {
	// Suspend Suspend status to set for the DAG
	Suspend bool `json:"suspend"`
}

// UpdateDAGSuspensionStateParams defines parameters for UpdateDAGSuspensionState.
type UpdateDAGSuspensionStateParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteDAGWebhookParams defines parameters for DeleteDAGWebhook.
type DeleteDAGWebhookParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetDAGWebhookParams defines parameters for GetDAGWebhook.
type GetDAGWebhookParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateDAGWebhookParams defines parameters for CreateDAGWebhook.
type CreateDAGWebhookParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ConfigureDAGWebhookHMACParams defines parameters for ConfigureDAGWebhookHMAC.
type ConfigureDAGWebhookHMACParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DisableDAGWebhookHMACParams defines parameters for DisableDAGWebhookHMAC.
type DisableDAGWebhookHMACParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// EnableDAGWebhookHMACParams defines parameters for EnableDAGWebhookHMAC.
type EnableDAGWebhookHMACParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RegenerateDAGWebhookHMACSecretParams defines parameters for RegenerateDAGWebhookHMACSecret.
type RegenerateDAGWebhookHMACSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// RegenerateDAGWebhookTokenParams defines parameters for RegenerateDAGWebhookToken.
type RegenerateDAGWebhookTokenParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ToggleDAGWebhookParams defines parameters for ToggleDAGWebhook.
type ToggleDAGWebhookParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListDocsParams defines parameters for ListDocs.
type ListDocsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Page page number of items to fetch (default is 1)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// PerPage number of items per page (default is 30, max is 100)
	PerPage *PerPage `form:"perPage,omitempty" json:"perPage,omitempty"`

	// Flat If true, returns flat list instead of tree
	Flat *bool `form:"flat,omitempty" json:"flat,omitempty"`

	// Sort Field to sort by:
	// - `name`: Alphabetically by display name (case-insensitive)
	// - `type`: By node type (dirs vs files), then alphabetically within each group
	// - `mtime`: By last modification time
	Sort *ListDocsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Order Sort order. For type: asc=folders first. For mtime: desc=newest first.
	Order *ListDocsParamsOrder `form:"order,omitempty" json:"order,omitempty"`
}

// ListDocsParamsSort defines parameters for ListDocs.
type ListDocsParamsSort string

// ListDocsParamsOrder defines parameters for ListDocs.
type ListDocsParamsOrder string

// CreateDocParams defines parameters for CreateDoc.
type CreateDocParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`
}

// DeleteDocBatchParams defines parameters for DeleteDocBatch.
type DeleteDocBatchParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`
}

// DeleteDocParams defines parameters for DeleteDoc.
type DeleteDocParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Path Document path (may include slashes for nested docs)
	Path DocPath `form:"path" json:"path"`
}

// GetDocParams defines parameters for GetDoc.
type GetDocParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Path Document path (may include slashes for nested docs)
	Path DocPath `form:"path" json:"path"`
}

// UpdateDocParams defines parameters for UpdateDoc.
type UpdateDocParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Path Document path (may include slashes for nested docs)
	Path DocPath `form:"path" json:"path"`
}

// RenameDocParams defines parameters for RenameDoc.
type RenameDocParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Path Current document or directory path (may include slashes for nested docs)
	Path DocPath `form:"path" json:"path"`
}

// SearchDocsParams defines parameters for SearchDocs.
type SearchDocsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Q Search query
	Q string `form:"q" json:"q"`
}

// ListEventLogsParams defines parameters for ListEventLogs.
type ListEventLogsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Kind Filter by event kind (e.g., dag_run, llm_usage)
	Kind *string `form:"kind,omitempty" json:"kind,omitempty"`

	// Type Filter by event type (e.g., dag.run.failed, llm.usage.recorded)
	Type *string `form:"type,omitempty" json:"type,omitempty"`

	// DagName Filter by DAG name
	DagName *string `form:"dagName,omitempty" json:"dagName,omitempty"`

	// DagRunId Filter by DAG run ID
	DagRunId *string `form:"dagRunId,omitempty" json:"dagRunId,omitempty"`

	// AttemptId Filter by attempt ID
	AttemptId *string `form:"attemptId,omitempty" json:"attemptId,omitempty"`

	// SessionId Filter by session ID
	SessionId *string `form:"sessionId,omitempty" json:"sessionId,omitempty"`

	// UserId Filter by user ID
	UserId *string `form:"userId,omitempty" json:"userId,omitempty"`

	// Model Filter by model name
	Model *string `form:"model,omitempty" json:"model,omitempty"`

	// StartTime Filter entries after this time (ISO 8601 format)
	StartTime *LogStartTime `form:"startTime,omitempty" json:"startTime,omitempty"`

	// EndTime Filter entries before this time (ISO 8601 format)
	EndTime *LogEndTime `form:"endTime,omitempty" json:"endTime,omitempty"`

	// Limit Maximum number of entries to return (default 50)
	Limit *EventLogLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// PaginationMode Pagination mode. Use `cursor` for the event feed infinite-loading flow; omit or use `offset` for compatibility pagination.
	PaginationMode *ListEventLogsParamsPaginationMode `form:"paginationMode,omitempty" json:"paginationMode,omitempty"`

	// Offset Number of entries to skip (for pagination)
	Offset *LogOffset `form:"offset,omitempty" json:"offset,omitempty"`

	// Cursor Opaque cursor for loading older event log entries
	Cursor *EventLogCursor `form:"cursor,omitempty" json:"cursor,omitempty"`
}

// ListEventLogsParamsPaginationMode defines parameters for ListEventLogs.
type ListEventLogsParamsPaginationMode string

// ListIncidentPoliciesParams defines parameters for ListIncidentPolicies.
type ListIncidentPoliciesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetGlobalIncidentPoliciesParams defines parameters for GetGlobalIncidentPolicies.
type GetGlobalIncidentPoliciesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateGlobalIncidentPoliciesParams defines parameters for UpdateGlobalIncidentPolicies.
type UpdateGlobalIncidentPoliciesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetWorkspaceIncidentPoliciesParams defines parameters for GetWorkspaceIncidentPolicies.
type GetWorkspaceIncidentPoliciesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateWorkspaceIncidentPoliciesParams defines parameters for UpdateWorkspaceIncidentPolicies.
type UpdateWorkspaceIncidentPoliciesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListIncidentProvidersParams defines parameters for ListIncidentProviders.
type ListIncidentProvidersParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateIncidentProviderParams defines parameters for CreateIncidentProvider.
type CreateIncidentProviderParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteIncidentProviderParams defines parameters for DeleteIncidentProvider.
type DeleteIncidentProviderParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetIncidentProviderParams defines parameters for GetIncidentProvider.
type GetIncidentProviderParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateIncidentProviderParams defines parameters for UpdateIncidentProvider.
type UpdateIncidentProviderParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// TestIncidentProviderParams defines parameters for TestIncidentProvider.
type TestIncidentProviderParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ActivateLicenseJSONBody defines parameters for ActivateLicense.
type ActivateLicenseJSONBody struct {
	// Key License key (e.g. DAGU-XXXX-XXXX-XXXX-XXXX)
	Key string `json:"key"`
}

// ActivateLicenseParams defines parameters for ActivateLicense.
type ActivateLicenseParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeactivateLicenseParams defines parameters for DeactivateLicense.
type DeactivateLicenseParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListNotificationChannelsParams defines parameters for ListNotificationChannels.
type ListNotificationChannelsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateNotificationChannelParams defines parameters for CreateNotificationChannel.
type CreateNotificationChannelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteNotificationChannelParams defines parameters for DeleteNotificationChannel.
type DeleteNotificationChannelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetNotificationChannelParams defines parameters for GetNotificationChannel.
type GetNotificationChannelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateNotificationChannelParams defines parameters for UpdateNotificationChannel.
type UpdateNotificationChannelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListNotificationRoutesParams defines parameters for ListNotificationRoutes.
type ListNotificationRoutesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetGlobalNotificationRoutesParams defines parameters for GetGlobalNotificationRoutes.
type GetGlobalNotificationRoutesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateGlobalNotificationRoutesParams defines parameters for UpdateGlobalNotificationRoutes.
type UpdateGlobalNotificationRoutesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetWorkspaceNotificationRoutesParams defines parameters for GetWorkspaceNotificationRoutes.
type GetWorkspaceNotificationRoutesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateWorkspaceNotificationRoutesParams defines parameters for UpdateWorkspaceNotificationRoutes.
type UpdateWorkspaceNotificationRoutesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetNotificationSettingsParams defines parameters for GetNotificationSettings.
type GetNotificationSettingsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateNotificationSettingsParams defines parameters for UpdateNotificationSettings.
type UpdateNotificationSettingsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListQueuesParams defines parameters for ListQueues.
type ListQueuesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetQueueParams defines parameters for GetQueue.
type GetQueueParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListQueueItemsParams defines parameters for ListQueueItems.
type ListQueueItemsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Limit Maximum number of queued DAG-runs to return (default 100)
	Limit *QueueListLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor for loading the next page of queued DAG-runs
	Cursor *QueueListCursor `form:"cursor,omitempty" json:"cursor,omitempty"`
}

// ListRemoteNodesParams defines parameters for ListRemoteNodes.
type ListRemoteNodesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateRemoteNodeParams defines parameters for CreateRemoteNode.
type CreateRemoteNodeParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteRemoteNodeParams defines parameters for DeleteRemoteNode.
type DeleteRemoteNodeParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetRemoteNodeParams defines parameters for GetRemoteNode.
type GetRemoteNodeParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateRemoteNodeParams defines parameters for UpdateRemoteNode.
type UpdateRemoteNodeParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// TestRemoteNodeConnectionParams defines parameters for TestRemoteNodeConnection.
type TestRemoteNodeConnectionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SearchDAGFeedParams defines parameters for SearchDAGFeed.
type SearchDAGFeedParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Q A search query string
	Q string `form:"q" json:"q"`

	// Labels Filter DAGs by labels (comma-separated). Returns DAGs that have ALL specified labels.
	Labels *string `form:"labels,omitempty" json:"labels,omitempty"`

	// Cursor Opaque cursor returned by the previous search response
	Cursor *SearchCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Number of search results to return (default 20, max 50)
	Limit *SearchLimit `form:"limit,omitempty" json:"limit,omitempty"`
}

// SearchDagMatchesParams defines parameters for SearchDagMatches.
type SearchDagMatchesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Q A search query string
	Q string `form:"q" json:"q"`

	// Labels Filter DAG matches by labels (comma-separated). Returns matches only when the DAG has ALL specified labels.
	Labels *string `form:"labels,omitempty" json:"labels,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Cursor Opaque cursor returned by the previous search response
	Cursor *SearchCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Number of search match snippets to return (default 5, max 50)
	Limit *SearchMatchLimit `form:"limit,omitempty" json:"limit,omitempty"`
}

// SearchDocFeedParams defines parameters for SearchDocFeed.
type SearchDocFeedParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Q A search query string
	Q string `form:"q" json:"q"`

	// Cursor Opaque cursor returned by the previous search response
	Cursor *SearchCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Number of search results to return (default 20, max 50)
	Limit *SearchLimit `form:"limit,omitempty" json:"limit,omitempty"`
}

// SearchDocMatchesParams defines parameters for SearchDocMatches.
type SearchDocMatchesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Workspace selector. For list and search APIs, use all, default, or a workspace name. Omitted means all. For document target APIs, use default or a workspace name; omitted means default.
	Workspace *Workspace `form:"workspace,omitempty" json:"workspace,omitempty"`

	// Path Document path (may include slashes for nested docs)
	Path DocPath `form:"path" json:"path"`

	// Q A search query string
	Q string `form:"q" json:"q"`

	// Cursor Opaque cursor returned by the previous search response
	Cursor *SearchCursor `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Number of search match snippets to return (default 5, max 50)
	Limit *SearchMatchLimit `form:"limit,omitempty" json:"limit,omitempty"`
}

// ListSecretsParams defines parameters for ListSecrets.
type ListSecretsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Workspace Single secret scope. Use global for workspace-less secrets or a workspace name. Omit for global. all and default are not supported for secrets.
	Workspace *string `form:"workspace,omitempty" json:"workspace,omitempty"`
	Limit     *int    `form:"limit,omitempty" json:"limit,omitempty"`
	Offset    *int    `form:"offset,omitempty" json:"offset,omitempty"`
}

// CreateSecretParams defines parameters for CreateSecret.
type CreateSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteSecretParams defines parameters for DeleteSecret.
type DeleteSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSecretParams defines parameters for GetSecret.
type GetSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateSecretParams defines parameters for UpdateSecret.
type UpdateSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DisableSecretParams defines parameters for DisableSecret.
type DisableSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// EnableSecretParams defines parameters for EnableSecret.
type EnableSecretParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// WriteSecretVersionParams defines parameters for WriteSecretVersion.
type WriteSecretVersionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetCoordinatorStatusParams defines parameters for GetCoordinatorStatus.
type GetCoordinatorStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetResourceHistoryParams defines parameters for GetResourceHistory.
type GetResourceHistoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Duration Duration of history to retrieve (e.g., 30m, 1h)
	Duration *string `form:"duration,omitempty" json:"duration,omitempty"`
}

// GetSchedulerStatusParams defines parameters for GetSchedulerStatus.
type GetSchedulerStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetTunnelStatusParams defines parameters for GetTunnelStatus.
type GetTunnelStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAgentConfigParams defines parameters for GetAgentConfig.
type GetAgentConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateAgentConfigParams defines parameters for UpdateAgentConfig.
type UpdateAgentConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListAgentAuthProvidersParams defines parameters for ListAgentAuthProviders.
type ListAgentAuthProvidersParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DisconnectAgentAuthProviderLoginParams defines parameters for DisconnectAgentAuthProviderLogin.
type DisconnectAgentAuthProviderLoginParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// StartAgentAuthProviderLoginParams defines parameters for StartAgentAuthProviderLogin.
type StartAgentAuthProviderLoginParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CompleteAgentAuthProviderLoginParams defines parameters for CompleteAgentAuthProviderLogin.
type CompleteAgentAuthProviderLoginParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SetDefaultAgentModelParams defines parameters for SetDefaultAgentModel.
type SetDefaultAgentModelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteAgentMemoryParams defines parameters for DeleteAgentMemory.
type DeleteAgentMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAgentMemoryParams defines parameters for GetAgentMemory.
type GetAgentMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateAgentMemoryParams defines parameters for UpdateAgentMemory.
type UpdateAgentMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteAgentDAGMemoryParams defines parameters for DeleteAgentDAGMemory.
type DeleteAgentDAGMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAgentDAGMemoryParams defines parameters for GetAgentDAGMemory.
type GetAgentDAGMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateAgentDAGMemoryParams defines parameters for UpdateAgentDAGMemory.
type UpdateAgentDAGMemoryParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListModelPresetsParams defines parameters for ListModelPresets.
type ListModelPresetsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListAgentModelsParams defines parameters for ListAgentModels.
type ListAgentModelsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateAgentModelParams defines parameters for CreateAgentModel.
type CreateAgentModelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteAgentModelParams defines parameters for DeleteAgentModel.
type DeleteAgentModelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateAgentModelParams defines parameters for UpdateAgentModel.
type UpdateAgentModelParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListAgentSoulsParams defines parameters for ListAgentSouls.
type ListAgentSoulsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Page page number of items to fetch (default is 1)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// PerPage number of items per page (default is 30, max is 100)
	PerPage *PerPage `form:"perPage,omitempty" json:"perPage,omitempty"`

	// Q Search query (matches name, description)
	Q *string `form:"q,omitempty" json:"q,omitempty"`
}

// CreateAgentSoulParams defines parameters for CreateAgentSoul.
type CreateAgentSoulParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteAgentSoulParams defines parameters for DeleteAgentSoul.
type DeleteAgentSoulParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetAgentSoulParams defines parameters for GetAgentSoul.
type GetAgentSoulParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateAgentSoulParams defines parameters for UpdateAgentSoul.
type UpdateAgentSoulParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListAgentToolsParams defines parameters for ListAgentTools.
type ListAgentToolsParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetBaseConfigParams defines parameters for GetBaseConfig.
type GetBaseConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateBaseConfigJSONBody defines parameters for UpdateBaseConfig.
type UpdateBaseConfigJSONBody struct {
	// Spec The base configuration in YAML format
	Spec string `json:"spec"`
}

// UpdateBaseConfigParams defines parameters for UpdateBaseConfig.
type UpdateBaseConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetWorkspaceBaseConfigParams defines parameters for GetWorkspaceBaseConfig.
type GetWorkspaceBaseConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateWorkspaceBaseConfigJSONBody defines parameters for UpdateWorkspaceBaseConfig.
type UpdateWorkspaceBaseConfigJSONBody struct {
	// Spec The workspace base configuration in YAML format
	Spec string `json:"spec"`
}

// UpdateWorkspaceBaseConfigParams defines parameters for UpdateWorkspaceBaseConfig.
type UpdateWorkspaceBaseConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncCleanupParams defines parameters for SyncCleanup.
type SyncCleanupParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSyncConfigParams defines parameters for GetSyncConfig.
type GetSyncConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateSyncConfigParams defines parameters for UpdateSyncConfig.
type UpdateSyncConfigParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncDeleteBatchParams defines parameters for SyncDeleteBatch.
type SyncDeleteBatchParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncDeleteMissingJSONBody defines parameters for SyncDeleteMissing.
type SyncDeleteMissingJSONBody struct {
	// Message Commit message for the deletion
	Message *string `json:"message,omitempty"`
}

// SyncDeleteMissingParams defines parameters for SyncDeleteMissing.
type SyncDeleteMissingParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteSyncItemJSONBody defines parameters for DeleteSyncItem.
type DeleteSyncItemJSONBody struct {
	// Force Force delete even if item has local modifications
	Force *bool `json:"force,omitempty"`

	// Message Commit message for the deletion
	Message *string `json:"message,omitempty"`
}

// DeleteSyncItemParams defines parameters for DeleteSyncItem.
type DeleteSyncItemParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSyncItemDiffParams defines parameters for GetSyncItemDiff.
type GetSyncItemDiffParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DiscardSyncItemChangesParams defines parameters for DiscardSyncItemChanges.
type DiscardSyncItemChangesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ForgetSyncItemParams defines parameters for ForgetSyncItem.
type ForgetSyncItemParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// MoveSyncItemJSONBody defines parameters for MoveSyncItem.
type MoveSyncItemJSONBody struct {
	// Force Force move even if item has conflicts
	Force *bool `json:"force,omitempty"`

	// Message Commit message for the move
	Message *string `json:"message,omitempty"`

	// NewItemId The new item identifier to rename to
	NewItemId string `json:"newItemId"`
}

// MoveSyncItemParams defines parameters for MoveSyncItem.
type MoveSyncItemParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// PublishSyncItemParams defines parameters for PublishSyncItem.
type PublishSyncItemParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncPublishAllParams defines parameters for SyncPublishAll.
type SyncPublishAllParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncPullParams defines parameters for SyncPull.
type SyncPullParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetSyncStatusParams defines parameters for GetSyncStatus.
type GetSyncStatusParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// SyncTestConnectionParams defines parameters for SyncTestConnection.
type SyncTestConnectionParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListWebhooksParams defines parameters for ListWebhooks.
type ListWebhooksParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// TriggerWebhookParams defines parameters for TriggerWebhook.
type TriggerWebhookParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`

	// Authorization Bearer token for webhook authentication (e.g., 'Bearer dagu_wh_...'). Required only when the webhook auth mode includes token authentication.
	Authorization *string `json:"Authorization,omitempty"`

	// XDaguSignature HMAC webhook signature in the format 'sha256=<hex>'. Required only when the webhook auth mode includes HMAC authentication with strict enforcement.
	XDaguSignature *string `json:"X-Dagu-Signature,omitempty"`
}

// GetWorkersParams defines parameters for GetWorkers.
type GetWorkersParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// ListWorkspacesParams defines parameters for ListWorkspaces.
type ListWorkspacesParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateWorkspaceParams defines parameters for CreateWorkspace.
type CreateWorkspaceParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// DeleteWorkspaceParams defines parameters for DeleteWorkspace.
type DeleteWorkspaceParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// GetWorkspaceParams defines parameters for GetWorkspace.
type GetWorkspaceParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// UpdateWorkspaceParams defines parameters for UpdateWorkspace.
type UpdateWorkspaceParams struct {
	// RemoteNode name of the remote node
	RemoteNode *RemoteNode `form:"remoteNode,omitempty" json:"remoteNode,omitempty"`
}

// CreateAgentSessionJSONRequestBody defines body for CreateAgentSession for application/json ContentType.
type CreateAgentSessionJSONRequestBody = AgentChatRequest

// ChatAgentSessionJSONRequestBody defines body for ChatAgentSession for application/json ContentType.
type ChatAgentSessionJSONRequestBody = AgentChatRequest

// RespondAgentSessionJSONRequestBody defines body for RespondAgentSession for application/json ContentType.
type RespondAgentSessionJSONRequestBody = AgentUserPromptResponse

// CreateAPIKeyJSONRequestBody defines body for CreateAPIKey for application/json ContentType.
type CreateAPIKeyJSONRequestBody = CreateAPIKeyRequest

// UpdateAPIKeyJSONRequestBody defines body for UpdateAPIKey for application/json ContentType.
type UpdateAPIKeyJSONRequestBody = UpdateAPIKeyRequest

// ChangePasswordJSONRequestBody defines body for ChangePassword for application/json ContentType.
type ChangePasswordJSONRequestBody = ChangePasswordRequest

// LoginJSONRequestBody defines body for Login for application/json ContentType.
type LoginJSONRequestBody = LoginRequest

// SetupJSONRequestBody defines body for Setup for application/json ContentType.
type SetupJSONRequestBody = SetupRequest

// ExecuteDAGRunFromSpecJSONRequestBody defines body for ExecuteDAGRunFromSpec for application/json ContentType.
type ExecuteDAGRunFromSpecJSONRequestBody ExecuteDAGRunFromSpecJSONBody

// EnqueueDAGRunFromSpecJSONRequestBody defines body for EnqueueDAGRunFromSpec for application/json ContentType.
type EnqueueDAGRunFromSpecJSONRequestBody EnqueueDAGRunFromSpecJSONBody

// EditRetryDAGRunJSONRequestBody defines body for EditRetryDAGRun for application/json ContentType.
type EditRetryDAGRunJSONRequestBody EditRetryDAGRunJSONBody

// PreviewEditRetryDAGRunJSONRequestBody defines body for PreviewEditRetryDAGRun for application/json ContentType.
type PreviewEditRetryDAGRunJSONRequestBody PreviewEditRetryDAGRunJSONBody

// RescheduleDAGRunJSONRequestBody defines body for RescheduleDAGRun for application/json ContentType.
type RescheduleDAGRunJSONRequestBody RescheduleDAGRunJSONBody

// RetryDAGRunJSONRequestBody defines body for RetryDAGRun for application/json ContentType.
type RetryDAGRunJSONRequestBody RetryDAGRunJSONBody

// ApproveDAGRunStepJSONRequestBody defines body for ApproveDAGRunStep for application/json ContentType.
type ApproveDAGRunStepJSONRequestBody = ApproveStepRequest

// PushBackDAGRunStepJSONRequestBody defines body for PushBackDAGRunStep for application/json ContentType.
type PushBackDAGRunStepJSONRequestBody = PushBackStepRequest

// RejectDAGRunStepJSONRequestBody defines body for RejectDAGRunStep for application/json ContentType.
type RejectDAGRunStepJSONRequestBody = RejectStepRequest

// UpdateDAGRunStepStatusJSONRequestBody defines body for UpdateDAGRunStepStatus for application/json ContentType.
type UpdateDAGRunStepStatusJSONRequestBody UpdateDAGRunStepStatusJSONBody

// ApproveSubDAGRunStepJSONRequestBody defines body for ApproveSubDAGRunStep for application/json ContentType.
type ApproveSubDAGRunStepJSONRequestBody = ApproveStepRequest

// PushBackSubDAGRunStepJSONRequestBody defines body for PushBackSubDAGRunStep for application/json ContentType.
type PushBackSubDAGRunStepJSONRequestBody = PushBackStepRequest

// RejectSubDAGRunStepJSONRequestBody defines body for RejectSubDAGRunStep for application/json ContentType.
type RejectSubDAGRunStepJSONRequestBody = RejectStepRequest

// UpdateSubDAGRunStepStatusJSONRequestBody defines body for UpdateSubDAGRunStepStatus for application/json ContentType.
type UpdateSubDAGRunStepStatusJSONRequestBody UpdateSubDAGRunStepStatusJSONBody

// CreateNewDAGJSONRequestBody defines body for CreateNewDAG for application/json ContentType.
type CreateNewDAGJSONRequestBody CreateNewDAGJSONBody

// ValidateDAGSpecJSONRequestBody defines body for ValidateDAGSpec for application/json ContentType.
type ValidateDAGSpecJSONRequestBody ValidateDAGSpecJSONBody

// EnqueueDAGDAGRunJSONRequestBody defines body for EnqueueDAGDAGRun for application/json ContentType.
type EnqueueDAGDAGRunJSONRequestBody EnqueueDAGDAGRunJSONBody

// UpdateDAGIncidentsJSONRequestBody defines body for UpdateDAGIncidents for application/json ContentType.
type UpdateDAGIncidentsJSONRequestBody = IncidentPolicySetInput

// UpdateDAGNotificationsJSONRequestBody defines body for UpdateDAGNotifications for application/json ContentType.
type UpdateDAGNotificationsJSONRequestBody = UpdateDAGNotificationsRequest

// TestDAGNotificationsJSONRequestBody defines body for TestDAGNotifications for application/json ContentType.
type TestDAGNotificationsJSONRequestBody = TestDAGNotificationRequest

// RenameDAGJSONRequestBody defines body for RenameDAG for application/json ContentType.
type RenameDAGJSONRequestBody RenameDAGJSONBody

// UpdateDAGSpecJSONRequestBody defines body for UpdateDAGSpec for application/json ContentType.
type UpdateDAGSpecJSONRequestBody UpdateDAGSpecJSONBody

// ExecuteDAGJSONRequestBody defines body for ExecuteDAG for application/json ContentType.
type ExecuteDAGJSONRequestBody ExecuteDAGJSONBody

// ExecuteDAGSyncJSONRequestBody defines body for ExecuteDAGSync for application/json ContentType.
type ExecuteDAGSyncJSONRequestBody ExecuteDAGSyncJSONBody

// UpdateDAGSuspensionStateJSONRequestBody defines body for UpdateDAGSuspensionState for application/json ContentType.
type UpdateDAGSuspensionStateJSONRequestBody UpdateDAGSuspensionStateJSONBody

// ConfigureDAGWebhookHMACJSONRequestBody defines body for ConfigureDAGWebhookHMAC for application/json ContentType.
type ConfigureDAGWebhookHMACJSONRequestBody = WebhookHMACConfigureRequest

// EnableDAGWebhookHMACJSONRequestBody defines body for EnableDAGWebhookHMAC for application/json ContentType.
type EnableDAGWebhookHMACJSONRequestBody = WebhookHMACConfigureRequest

// ToggleDAGWebhookJSONRequestBody defines body for ToggleDAGWebhook for application/json ContentType.
type ToggleDAGWebhookJSONRequestBody = WebhookToggleRequest

// CreateDocJSONRequestBody defines body for CreateDoc for application/json ContentType.
type CreateDocJSONRequestBody = CreateDocRequest

// DeleteDocBatchJSONRequestBody defines body for DeleteDocBatch for application/json ContentType.
type DeleteDocBatchJSONRequestBody = DocDeleteBatchRequest

// UpdateDocJSONRequestBody defines body for UpdateDoc for application/json ContentType.
type UpdateDocJSONRequestBody = UpdateDocRequest

// RenameDocJSONRequestBody defines body for RenameDoc for application/json ContentType.
type RenameDocJSONRequestBody = RenameDocRequest

// UpdateGlobalIncidentPoliciesJSONRequestBody defines body for UpdateGlobalIncidentPolicies for application/json ContentType.
type UpdateGlobalIncidentPoliciesJSONRequestBody = IncidentPolicySetInput

// UpdateWorkspaceIncidentPoliciesJSONRequestBody defines body for UpdateWorkspaceIncidentPolicies for application/json ContentType.
type UpdateWorkspaceIncidentPoliciesJSONRequestBody = IncidentPolicySetInput

// CreateIncidentProviderJSONRequestBody defines body for CreateIncidentProvider for application/json ContentType.
type CreateIncidentProviderJSONRequestBody = IncidentProviderInput

// UpdateIncidentProviderJSONRequestBody defines body for UpdateIncidentProvider for application/json ContentType.
type UpdateIncidentProviderJSONRequestBody = IncidentProviderInput

// ActivateLicenseJSONRequestBody defines body for ActivateLicense for application/json ContentType.
type ActivateLicenseJSONRequestBody ActivateLicenseJSONBody

// CreateNotificationChannelJSONRequestBody defines body for CreateNotificationChannel for application/json ContentType.
type CreateNotificationChannelJSONRequestBody = NotificationChannelInput

// UpdateNotificationChannelJSONRequestBody defines body for UpdateNotificationChannel for application/json ContentType.
type UpdateNotificationChannelJSONRequestBody = NotificationChannelInput

// UpdateGlobalNotificationRoutesJSONRequestBody defines body for UpdateGlobalNotificationRoutes for application/json ContentType.
type UpdateGlobalNotificationRoutesJSONRequestBody = NotificationRouteSetInput

// UpdateWorkspaceNotificationRoutesJSONRequestBody defines body for UpdateWorkspaceNotificationRoutes for application/json ContentType.
type UpdateWorkspaceNotificationRoutesJSONRequestBody = NotificationRouteSetInput

// UpdateNotificationSettingsJSONRequestBody defines body for UpdateNotificationSettings for application/json ContentType.
type UpdateNotificationSettingsJSONRequestBody = NotificationWorkspaceSettingsInput

// CreateRemoteNodeJSONRequestBody defines body for CreateRemoteNode for application/json ContentType.
type CreateRemoteNodeJSONRequestBody = CreateRemoteNodeRequest

// UpdateRemoteNodeJSONRequestBody defines body for UpdateRemoteNode for application/json ContentType.
type UpdateRemoteNodeJSONRequestBody = UpdateRemoteNodeRequest

// CreateSecretJSONRequestBody defines body for CreateSecret for application/json ContentType.
type CreateSecretJSONRequestBody = CreateSecretRequest

// UpdateSecretJSONRequestBody defines body for UpdateSecret for application/json ContentType.
type UpdateSecretJSONRequestBody = UpdateSecretRequest

// WriteSecretVersionJSONRequestBody defines body for WriteSecretVersion for application/json ContentType.
type WriteSecretVersionJSONRequestBody = WriteSecretVersionRequest

// UpdateAgentConfigJSONRequestBody defines body for UpdateAgentConfig for application/json ContentType.
type UpdateAgentConfigJSONRequestBody = UpdateAgentConfigRequest

// CompleteAgentAuthProviderLoginJSONRequestBody defines body for CompleteAgentAuthProviderLogin for application/json ContentType.
type CompleteAgentAuthProviderLoginJSONRequestBody = CompleteAgentAuthProviderLoginRequest

// SetDefaultAgentModelJSONRequestBody defines body for SetDefaultAgentModel for application/json ContentType.
type SetDefaultAgentModelJSONRequestBody = SetDefaultModelRequest

// UpdateAgentMemoryJSONRequestBody defines body for UpdateAgentMemory for application/json ContentType.
type UpdateAgentMemoryJSONRequestBody = UpdateAgentMemoryRequest

// UpdateAgentDAGMemoryJSONRequestBody defines body for UpdateAgentDAGMemory for application/json ContentType.
type UpdateAgentDAGMemoryJSONRequestBody = UpdateAgentMemoryRequest

// CreateAgentModelJSONRequestBody defines body for CreateAgentModel for application/json ContentType.
type CreateAgentModelJSONRequestBody = CreateModelConfigRequest

// UpdateAgentModelJSONRequestBody defines body for UpdateAgentModel for application/json ContentType.
type UpdateAgentModelJSONRequestBody = UpdateModelConfigRequest

// CreateAgentSoulJSONRequestBody defines body for CreateAgentSoul for application/json ContentType.
type CreateAgentSoulJSONRequestBody = CreateSoulRequest

// UpdateAgentSoulJSONRequestBody defines body for UpdateAgentSoul for application/json ContentType.
type UpdateAgentSoulJSONRequestBody = UpdateSoulRequest

// UpdateBaseConfigJSONRequestBody defines body for UpdateBaseConfig for application/json ContentType.
type UpdateBaseConfigJSONRequestBody UpdateBaseConfigJSONBody

// UpdateWorkspaceBaseConfigJSONRequestBody defines body for UpdateWorkspaceBaseConfig for application/json ContentType.
type UpdateWorkspaceBaseConfigJSONRequestBody UpdateWorkspaceBaseConfigJSONBody

// UpdateSyncConfigJSONRequestBody defines body for UpdateSyncConfig for application/json ContentType.
type UpdateSyncConfigJSONRequestBody = SyncConfigUpdateRequest

// SyncDeleteBatchJSONRequestBody defines body for SyncDeleteBatch for application/json ContentType.
type SyncDeleteBatchJSONRequestBody = SyncDeleteBatchRequest

// SyncDeleteMissingJSONRequestBody defines body for SyncDeleteMissing for application/json ContentType.
type SyncDeleteMissingJSONRequestBody SyncDeleteMissingJSONBody

// DeleteSyncItemJSONRequestBody defines body for DeleteSyncItem for application/json ContentType.
type DeleteSyncItemJSONRequestBody DeleteSyncItemJSONBody

// MoveSyncItemJSONRequestBody defines body for MoveSyncItem for application/json ContentType.
type MoveSyncItemJSONRequestBody MoveSyncItemJSONBody

// PublishSyncItemJSONRequestBody defines body for PublishSyncItem for application/json ContentType.
type PublishSyncItemJSONRequestBody = SyncPublishRequest

// SyncPublishAllJSONRequestBody defines body for SyncPublishAll for application/json ContentType.
type SyncPublishAllJSONRequestBody = SyncPublishAllRequest

// CreateUserJSONRequestBody defines body for CreateUser for application/json ContentType.
type CreateUserJSONRequestBody = CreateUserRequest

// UpdateUserJSONRequestBody defines body for UpdateUser for application/json ContentType.
type UpdateUserJSONRequestBody = UpdateUserRequest

// ResetUserPasswordJSONRequestBody defines body for ResetUserPassword for application/json ContentType.
type ResetUserPasswordJSONRequestBody = ResetPasswordRequest

// TriggerWebhookJSONRequestBody defines body for TriggerWebhook for application/json ContentType.
type TriggerWebhookJSONRequestBody = WebhookRequest

// CreateWorkspaceJSONRequestBody defines body for CreateWorkspace for application/json ContentType.
type CreateWorkspaceJSONRequestBody = CreateWorkspaceRequest

// UpdateWorkspaceJSONRequestBody defines body for UpdateWorkspace for application/json ContentType.
type UpdateWorkspaceJSONRequestBody = UpdateWorkspaceRequest

// AsCompleteAgentAuthProviderLoginRequest0 returns the union data inside the CompleteAgentAuthProviderLoginRequest as a CompleteAgentAuthProviderLoginRequest0
func (t CompleteAgentAuthProviderLoginRequest) AsCompleteAgentAuthProviderLoginRequest0() (CompleteAgentAuthProviderLoginRequest0, error) {
	var body CompleteAgentAuthProviderLoginRequest0
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromCompleteAgentAuthProviderLoginRequest0 overwrites any union data inside the CompleteAgentAuthProviderLoginRequest as the provided CompleteAgentAuthProviderLoginRequest0
func (t *CompleteAgentAuthProviderLoginRequest) FromCompleteAgentAuthProviderLoginRequest0(v CompleteAgentAuthProviderLoginRequest0) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeCompleteAgentAuthProviderLoginRequest0 performs a merge with any union data inside the CompleteAgentAuthProviderLoginRequest, using the provided CompleteAgentAuthProviderLoginRequest0
func (t *CompleteAgentAuthProviderLoginRequest) MergeCompleteAgentAuthProviderLoginRequest0(v CompleteAgentAuthProviderLoginRequest0) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsCompleteAgentAuthProviderLoginRequest1 returns the union data inside the CompleteAgentAuthProviderLoginRequest as a CompleteAgentAuthProviderLoginRequest1
func (t CompleteAgentAuthProviderLoginRequest) AsCompleteAgentAuthProviderLoginRequest1() (CompleteAgentAuthProviderLoginRequest1, error) {
	var body CompleteAgentAuthProviderLoginRequest1
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromCompleteAgentAuthProviderLoginRequest1 overwrites any union data inside the CompleteAgentAuthProviderLoginRequest as the provided CompleteAgentAuthProviderLoginRequest1
func (t *CompleteAgentAuthProviderLoginRequest) FromCompleteAgentAuthProviderLoginRequest1(v CompleteAgentAuthProviderLoginRequest1) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeCompleteAgentAuthProviderLoginRequest1 performs a merge with any union data inside the CompleteAgentAuthProviderLoginRequest, using the provided CompleteAgentAuthProviderLoginRequest1
func (t *CompleteAgentAuthProviderLoginRequest) MergeCompleteAgentAuthProviderLoginRequest1(v CompleteAgentAuthProviderLoginRequest1) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

func (t CompleteAgentAuthProviderLoginRequest) MarshalJSON() ([]byte, error) {
	b, err := t.union.MarshalJSON()
	if err != nil {
		return nil, err
	}
	object := make(map[string]json.RawMessage)
	if t.union != nil {
		err = json.Unmarshal(b, &object)
		if err != nil {
			return nil, err
		}
	}

	if t.Code != nil {
		object["code"], err = json.Marshal(t.Code)
		if err != nil {
			return nil, fmt.Errorf("error marshaling 'code': %w", err)
		}
	}

	object["flowId"], err = json.Marshal(t.FlowId)
	if err != nil {
		return nil, fmt.Errorf("error marshaling 'flowId': %w", err)
	}

	if t.RedirectUrl != nil {
		object["redirectUrl"], err = json.Marshal(t.RedirectUrl)
		if err != nil {
			return nil, fmt.Errorf("error marshaling 'redirectUrl': %w", err)
		}
	}
	b, err = json.Marshal(object)
	return b, err
}

func (t *CompleteAgentAuthProviderLoginRequest) UnmarshalJSON(b []byte) error {
	err := t.union.UnmarshalJSON(b)
	if err != nil {
		return err
	}
	object := make(map[string]json.RawMessage)
	err = json.Unmarshal(b, &object)
	if err != nil {
		return err
	}

	if raw, found := object["code"]; found {
		err = json.Unmarshal(raw, &t.Code)
		if err != nil {
			return fmt.Errorf("error reading 'code': %w", err)
		}
	}

	if raw, found := object["flowId"]; found {
		err = json.Unmarshal(raw, &t.FlowId)
		if err != nil {
			return fmt.Errorf("error reading 'flowId': %w", err)
		}
	}

	if raw, found := object["redirectUrl"]; found {
		err = json.Unmarshal(raw, &t.RedirectUrl)
		if err != nil {
			return fmt.Errorf("error reading 'redirectUrl': %w", err)
		}
	}

	return err
}

// AsIncidentPagerDutyProviderInputEnvelope returns the union data inside the IncidentProviderInput as a IncidentPagerDutyProviderInputEnvelope
func (t IncidentProviderInput) AsIncidentPagerDutyProviderInputEnvelope() (IncidentPagerDutyProviderInputEnvelope, error) {
	var body IncidentPagerDutyProviderInputEnvelope
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromIncidentPagerDutyProviderInputEnvelope overwrites any union data inside the IncidentProviderInput as the provided IncidentPagerDutyProviderInputEnvelope
func (t *IncidentProviderInput) FromIncidentPagerDutyProviderInputEnvelope(v IncidentPagerDutyProviderInputEnvelope) error {
	v.Type = "pagerduty"
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeIncidentPagerDutyProviderInputEnvelope performs a merge with any union data inside the IncidentProviderInput, using the provided IncidentPagerDutyProviderInputEnvelope
func (t *IncidentProviderInput) MergeIncidentPagerDutyProviderInputEnvelope(v IncidentPagerDutyProviderInputEnvelope) error {
	v.Type = "pagerduty"
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsIncidentSolarWindsProviderInputEnvelope returns the union data inside the IncidentProviderInput as a IncidentSolarWindsProviderInputEnvelope
func (t IncidentProviderInput) AsIncidentSolarWindsProviderInputEnvelope() (IncidentSolarWindsProviderInputEnvelope, error) {
	var body IncidentSolarWindsProviderInputEnvelope
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromIncidentSolarWindsProviderInputEnvelope overwrites any union data inside the IncidentProviderInput as the provided IncidentSolarWindsProviderInputEnvelope
func (t *IncidentProviderInput) FromIncidentSolarWindsProviderInputEnvelope(v IncidentSolarWindsProviderInputEnvelope) error {
	v.Type = "solarwinds_incident_response"
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeIncidentSolarWindsProviderInputEnvelope performs a merge with any union data inside the IncidentProviderInput, using the provided IncidentSolarWindsProviderInputEnvelope
func (t *IncidentProviderInput) MergeIncidentSolarWindsProviderInputEnvelope(v IncidentSolarWindsProviderInputEnvelope) error {
	v.Type = "solarwinds_incident_response"
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

func (t IncidentProviderInput) Discriminator() (string, error) {
	var discriminator struct {
		Discriminator string `json:"type"`
	}
	err := json.Unmarshal(t.union, &discriminator)
	return discriminator.Discriminator, err
}

func (t IncidentProviderInput) ValueByDiscriminator() (interface{}, error) {
	discriminator, err := t.Discriminator()
	if err != nil {
		return nil, err
	}
	switch discriminator {
	case "pagerduty":
		return t.AsIncidentPagerDutyProviderInputEnvelope()
	case "solarwinds_incident_response":
		return t.AsIncidentSolarWindsProviderInputEnvelope()
	default:
		return nil, errors.New("unknown discriminator value: " + discriminator)
	}
}

func (t IncidentProviderInput) MarshalJSON() ([]byte, error) {
	b, err := t.union.MarshalJSON()
	return b, err
}

func (t *IncidentProviderInput) UnmarshalJSON(b []byte) error {
	err := t.union.UnmarshalJSON(b)
	return err
}

// AsParamScalar0 returns the union data inside the ParamScalar as a ParamScalar0
func (t ParamScalar) AsParamScalar0() (ParamScalar0, error) {
	var body ParamScalar0
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromParamScalar0 overwrites any union data inside the ParamScalar as the provided ParamScalar0
func (t *ParamScalar) FromParamScalar0(v ParamScalar0) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeParamScalar0 performs a merge with any union data inside the ParamScalar, using the provided ParamScalar0
func (t *ParamScalar) MergeParamScalar0(v ParamScalar0) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsParamScalar1 returns the union data inside the ParamScalar as a ParamScalar1
func (t ParamScalar) AsParamScalar1() (ParamScalar1, error) {
	var body ParamScalar1
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromParamScalar1 overwrites any union data inside the ParamScalar as the provided ParamScalar1
func (t *ParamScalar) FromParamScalar1(v ParamScalar1) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeParamScalar1 performs a merge with any union data inside the ParamScalar, using the provided ParamScalar1
func (t *ParamScalar) MergeParamScalar1(v ParamScalar1) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsParamScalar2 returns the union data inside the ParamScalar as a ParamScalar2
func (t ParamScalar) AsParamScalar2() (ParamScalar2, error) {
	var body ParamScalar2
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromParamScalar2 overwrites any union data inside the ParamScalar as the provided ParamScalar2
func (t *ParamScalar) FromParamScalar2(v ParamScalar2) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeParamScalar2 performs a merge with any union data inside the ParamScalar, using the provided ParamScalar2
func (t *ParamScalar) MergeParamScalar2(v ParamScalar2) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsParamScalar3 returns the union data inside the ParamScalar as a ParamScalar3
func (t ParamScalar) AsParamScalar3() (ParamScalar3, error) {
	var body ParamScalar3
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromParamScalar3 overwrites any union data inside the ParamScalar as the provided ParamScalar3
func (t *ParamScalar) FromParamScalar3(v ParamScalar3) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeParamScalar3 performs a merge with any union data inside the ParamScalar, using the provided ParamScalar3
func (t *ParamScalar) MergeParamScalar3(v ParamScalar3) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

func (t ParamScalar) MarshalJSON() ([]byte, error) {
	b, err := t.union.MarshalJSON()
	return b, err
}

func (t *ParamScalar) UnmarshalJSON(b []byte) error {
	err := t.union.UnmarshalJSON(b)
	return err
}

// AsRepeatPolicyBackoff0 returns the union data inside the RepeatPolicy_Backoff as a RepeatPolicyBackoff0
func (t RepeatPolicy_Backoff) AsRepeatPolicyBackoff0() (RepeatPolicyBackoff0, error) {
	var body RepeatPolicyBackoff0
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromRepeatPolicyBackoff0 overwrites any union data inside the RepeatPolicy_Backoff as the provided RepeatPolicyBackoff0
func (t *RepeatPolicy_Backoff) FromRepeatPolicyBackoff0(v RepeatPolicyBackoff0) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeRepeatPolicyBackoff0 performs a merge with any union data inside the RepeatPolicy_Backoff, using the provided RepeatPolicyBackoff0
func (t *RepeatPolicy_Backoff) MergeRepeatPolicyBackoff0(v RepeatPolicyBackoff0) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsRepeatPolicyBackoff1 returns the union data inside the RepeatPolicy_Backoff as a RepeatPolicyBackoff1
func (t RepeatPolicy_Backoff) AsRepeatPolicyBackoff1() (RepeatPolicyBackoff1, error) {
	var body RepeatPolicyBackoff1
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromRepeatPolicyBackoff1 overwrites any union data inside the RepeatPolicy_Backoff as the provided RepeatPolicyBackoff1
func (t *RepeatPolicy_Backoff) FromRepeatPolicyBackoff1(v RepeatPolicyBackoff1) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeRepeatPolicyBackoff1 performs a merge with any union data inside the RepeatPolicy_Backoff, using the provided RepeatPolicyBackoff1
func (t *RepeatPolicy_Backoff) MergeRepeatPolicyBackoff1(v RepeatPolicyBackoff1) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

func (t RepeatPolicy_Backoff) MarshalJSON() ([]byte, error) {
	b, err := t.union.MarshalJSON()
	return b, err
}

func (t *RepeatPolicy_Backoff) UnmarshalJSON(b []byte) error {
	err := t.union.UnmarshalJSON(b)
	return err
}

// AsStepParallelItems0 returns the union data inside the Step_Parallel_Items as a StepParallelItems0
func (t Step_Parallel_Items) AsStepParallelItems0() (StepParallelItems0, error) {
	var body StepParallelItems0
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromStepParallelItems0 overwrites any union data inside the Step_Parallel_Items as the provided StepParallelItems0
func (t *Step_Parallel_Items) FromStepParallelItems0(v StepParallelItems0) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeStepParallelItems0 performs a merge with any union data inside the Step_Parallel_Items, using the provided StepParallelItems0
func (t *Step_Parallel_Items) MergeStepParallelItems0(v StepParallelItems0) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

// AsStepParallelItems1 returns the union data inside the Step_Parallel_Items as a StepParallelItems1
func (t Step_Parallel_Items) AsStepParallelItems1() (StepParallelItems1, error) {
	var body StepParallelItems1
	err := json.Unmarshal(t.union, &body)
	return body, err
}

// FromStepParallelItems1 overwrites any union data inside the Step_Parallel_Items as the provided StepParallelItems1
func (t *Step_Parallel_Items) FromStepParallelItems1(v StepParallelItems1) error {
	b, err := json.Marshal(v)
	t.union = b
	return err
}

// MergeStepParallelItems1 performs a merge with any union data inside the Step_Parallel_Items, using the provided StepParallelItems1
func (t *Step_Parallel_Items) MergeStepParallelItems1(v StepParallelItems1) error {
	b, err := json.Marshal(v)
	if err != nil {
		return err
	}

	merged, err := runtime.JSONMerge(t.union, b)
	t.union = merged
	return err
}

func (t Step_Parallel_Items) MarshalJSON() ([]byte, error) {
	b, err := t.union.MarshalJSON()
	return b, err
}

func (t *Step_Parallel_Items) UnmarshalJSON(b []byte) error {
	err := t.union.UnmarshalJSON(b)
	return err
}

// ServerInterface represents all server handlers.
type ServerInterface interface {
	// List agent sessions
	// (GET /agent/sessions)
	ListAgentSessions(w http.ResponseWriter, r *http.Request, params ListAgentSessionsParams)
	// Create agent session
	// (POST /agent/sessions)
	CreateAgentSession(w http.ResponseWriter, r *http.Request, params CreateAgentSessionParams)
	// Get agent session
	// (GET /agent/sessions/{sessionId})
	GetAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params GetAgentSessionParams)
	// Cancel agent session
	// (POST /agent/sessions/{sessionId}/cancel)
	CancelAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params CancelAgentSessionParams)
	// Send message to agent session
	// (POST /agent/sessions/{sessionId}/chat)
	ChatAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params ChatAgentSessionParams)
	// Respond to agent prompt
	// (POST /agent/sessions/{sessionId}/respond)
	RespondAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params RespondAgentSessionParams)
	// List all API keys
	// (GET /api-keys)
	ListAPIKeys(w http.ResponseWriter, r *http.Request)
	// Create API key
	// (POST /api-keys)
	CreateAPIKey(w http.ResponseWriter, r *http.Request)
	// Delete API key
	// (DELETE /api-keys/{keyId})
	DeleteAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId)
	// Get API key
	// (GET /api-keys/{keyId})
	GetAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId)
	// Update API key
	// (PATCH /api-keys/{keyId})
	UpdateAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId)
	// List audit log entries
	// (GET /audit)
	ListAuditLogs(w http.ResponseWriter, r *http.Request, params ListAuditLogsParams)
	// Change current user's password
	// (POST /auth/change-password)
	ChangePassword(w http.ResponseWriter, r *http.Request)
	// Authenticate user and obtain JWT token
	// (POST /auth/login)
	Login(w http.ResponseWriter, r *http.Request)
	// Get current authenticated user
	// (GET /auth/me)
	GetCurrentUser(w http.ResponseWriter, r *http.Request)
	// Create initial admin account
	// (POST /auth/setup)
	Setup(w http.ResponseWriter, r *http.Request, params SetupParams)
	// List all DAG-runs
	// (GET /dag-runs)
	ListDAGRuns(w http.ResponseWriter, r *http.Request, params ListDAGRunsParams)
	// Create and execute a DAG-run from inline spec
	// (POST /dag-runs)
	ExecuteDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params ExecuteDAGRunFromSpecParams)
	// Enqueue a DAG-run from inline spec
	// (POST /dag-runs/enqueue)
	EnqueueDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params EnqueueDAGRunFromSpecParams)
	// List all DAG-runs with a specific name
	// (GET /dag-runs/{name})
	ListDAGRunsByName(w http.ResponseWriter, r *http.Request, name DAGRunName, params ListDAGRunsByNameParams)
	// Delete a DAG-run
	// (DELETE /dag-runs/{name}/{dagRunId})
	DeleteDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunConcreteId, params DeleteDAGRunParams)
	// Retrieve detailed status of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId})
	GetDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunDetailsParams)
	// List artifacts for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts)
	GetDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactsParams)
	// Download an artifact for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts/download)
	DownloadDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunArtifactParams)
	// Preview an artifact for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts/preview)
	GetDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactPreviewParams)
	// Dequeue a queued DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/dequeue)
	DequeueDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DequeueDAGRunParams)
	// Run edited DAG retry
	// (POST /dag-runs/{name}/{dagRunId}/edit-retry)
	EditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params EditRetryDAGRunParams)
	// Preview edited DAG-run retry
	// (POST /dag-runs/{name}/{dagRunId}/edit-retry/preview)
	PreviewEditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params PreviewEditRetryDAGRunParams)
	// Retrieve full execution log of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/log)
	GetDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunLogParams)
	// Download full execution log of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/log/download)
	DownloadDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunLogParams)
	// Retrieve collected outputs from a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/outputs)
	GetDAGRunOutputs(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunOutputsParams)
	// Reschedule DAG-run with a new run ID
	// (POST /dag-runs/{name}/{dagRunId}/reschedule)
	RescheduleDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RescheduleDAGRunParams)
	// Retry DAG-run execution
	// (POST /dag-runs/{name}/{dagRunId}/retry)
	RetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RetryDAGRunParams)
	// Retrieve DAG specification for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/spec)
	GetDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunSpecParams)
	// Approve a waiting step
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/approve)
	ApproveDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params ApproveDAGRunStepParams)
	// Retrieve log for a specific step in a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log)
	GetDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepLogParams)
	// Download log for a specific step in a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log/download)
	DownloadDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params DownloadDAGRunStepLogParams)
	// Retrieve chat messages for a step
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/messages)
	GetDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepMessagesParams)
	// Push back a waiting step for re-execution with feedback
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/push-back)
	PushBackDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params PushBackDAGRunStepParams)
	// Reject a waiting step
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/reject)
	RejectDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params RejectDAGRunStepParams)
	// Manually update a step's execution status
	// (PATCH /dag-runs/{name}/{dagRunId}/steps/{stepName}/status)
	UpdateDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params UpdateDAGRunStepStatusParams)
	// Terminate or cancel a DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/stop)
	TerminateDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params TerminateDAGRunParams)
	// Get sub DAG runs with timing info
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs)
	GetSubDAGRuns(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetSubDAGRunsParams)
	// Retrieve detailed status of a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId})
	GetSubDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunDetailsParams)
	// List artifacts for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts)
	GetSubDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactsParams)
	// Download an artifact for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/download)
	DownloadSubDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunArtifactParams)
	// Preview an artifact for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/preview)
	GetSubDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactPreviewParams)
	// Retrieve log for a specific sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log)
	GetSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunLogParams)
	// Download log for a specific sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log/download)
	DownloadSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunLogParams)
	// Get Sub-DAG Run Specification
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/spec)
	GetSubDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunSpecParams)
	// Approve a waiting step in a sub DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/approve)
	ApproveSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params ApproveSubDAGRunStepParams)
	// Retrieve log for a specific step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log)
	GetSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepLogParams)
	// Download log for a specific step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log/download)
	DownloadSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params DownloadSubDAGRunStepLogParams)
	// Retrieve chat messages for a step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/messages)
	GetSubDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepMessagesParams)
	// Push back a waiting step in a sub DAG-run for re-execution with feedback
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/push-back)
	PushBackSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params PushBackSubDAGRunStepParams)
	// Reject a waiting step in a sub DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/reject)
	RejectSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params RejectSubDAGRunStepParams)
	// Manually update a step's execution status in a sub DAG-run
	// (PATCH /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/status)
	UpdateSubDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params UpdateSubDAGRunStepStatusParams)
	// List all available DAGs
	// (GET /dags)
	ListDAGs(w http.ResponseWriter, r *http.Request, params ListDAGsParams)
	// Create a new DAG definition
	// (POST /dags)
	CreateNewDAG(w http.ResponseWriter, r *http.Request, params CreateNewDAGParams)
	// List all available DAG labels
	// (GET /dags/labels)
	GetAllDAGLabels(w http.ResponseWriter, r *http.Request, params GetAllDAGLabelsParams)
	// Search DAGs
	// (GET /dags/search)
	SearchDAGs(w http.ResponseWriter, r *http.Request, params SearchDAGsParams)
	// List all available DAG tags
	// (GET /dags/tags)
	GetAllDAGTags(w http.ResponseWriter, r *http.Request, params GetAllDAGTagsParams)
	// Validate a DAG specification
	// (POST /dags/validate)
	ValidateDAGSpec(w http.ResponseWriter, r *http.Request, params ValidateDAGSpecParams)
	// Delete an existing DAG
	// (DELETE /dags/{fileName})
	DeleteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGParams)
	// Retrieve comprehensive DAG information
	// (GET /dags/{fileName})
	GetDAGDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDetailsParams)
	// Retrieve execution history of a DAG
	// (GET /dags/{fileName}/dag-runs)
	GetDAGDAGRunHistory(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDAGRunHistoryParams)
	// Get detailed status of a specific DAG-run
	// (GET /dags/{fileName}/dag-runs/{dagRunId})
	GetDAGDAGRunDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, dagRunId DAGRunId, params GetDAGDAGRunDetailsParams)
	// Enqueue a DAG-run from DAG
	// (POST /dags/{fileName}/enqueue)
	EnqueueDAGDAGRun(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnqueueDAGDAGRunParams)
	// Delete DAG incident routing
	// (DELETE /dags/{fileName}/incidents)
	DeleteDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGIncidentsParams)
	// Get DAG incident routing
	// (GET /dags/{fileName}/incidents)
	GetDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGIncidentsParams)
	// Update DAG incident routing
	// (PUT /dags/{fileName}/incidents)
	UpdateDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGIncidentsParams)
	// Delete DAG notification settings
	// (DELETE /dags/{fileName}/notifications)
	DeleteDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGNotificationsParams)
	// Get DAG notification settings
	// (GET /dags/{fileName}/notifications)
	GetDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGNotificationsParams)
	// Update DAG notification settings
	// (PUT /dags/{fileName}/notifications)
	UpdateDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGNotificationsParams)
	// Send a test DAG notification
	// (POST /dags/{fileName}/notifications/test)
	TestDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TestDAGNotificationsParams)
	// Change DAG file ID
	// (POST /dags/{fileName}/rename)
	RenameDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RenameDAGParams)
	// Retrieve DAG specification
	// (GET /dags/{fileName}/spec)
	GetDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGSpecParams)
	// Update DAG spec
	// (PUT /dags/{fileName}/spec)
	UpdateDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSpecParams)
	// Create and execute a DAG-run from DAG
	// (POST /dags/{fileName}/start)
	ExecuteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGParams)
	// Execute DAG synchronously and wait for completion
	// (POST /dags/{fileName}/start-sync)
	ExecuteDAGSync(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGSyncParams)
	// Stop all running instances of a DAG
	// (POST /dags/{fileName}/stop-all)
	StopAllDAGRuns(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params StopAllDAGRunsParams)
	// Toggle DAG suspension state
	// (POST /dags/{fileName}/suspend)
	UpdateDAGSuspensionState(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSuspensionStateParams)
	// Delete webhook for DAG
	// (DELETE /dags/{fileName}/webhook)
	DeleteDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGWebhookParams)
	// Get webhook for DAG
	// (GET /dags/{fileName}/webhook)
	GetDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGWebhookParams)
	// Create webhook for DAG
	// (POST /dags/{fileName}/webhook)
	CreateDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params CreateDAGWebhookParams)
	// Configure webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/configure)
	ConfigureDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ConfigureDAGWebhookHMACParams)
	// Disable webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/disable)
	DisableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DisableDAGWebhookHMACParams)
	// Enable webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/enable)
	EnableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnableDAGWebhookHMACParams)
	// Regenerate webhook HMAC secret
	// (POST /dags/{fileName}/webhook/hmac/regenerate)
	RegenerateDAGWebhookHMACSecret(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookHMACSecretParams)
	// Regenerate webhook token
	// (POST /dags/{fileName}/webhook/regenerate)
	RegenerateDAGWebhookToken(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookTokenParams)
	// Toggle webhook enabled state
	// (POST /dags/{fileName}/webhook/toggle)
	ToggleDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ToggleDAGWebhookParams)
	// List documents
	// (GET /docs)
	ListDocs(w http.ResponseWriter, r *http.Request, params ListDocsParams)
	// Create document
	// (POST /docs)
	CreateDoc(w http.ResponseWriter, r *http.Request, params CreateDocParams)
	// Delete multiple documents or directories
	// (POST /docs/delete-batch)
	DeleteDocBatch(w http.ResponseWriter, r *http.Request, params DeleteDocBatchParams)
	// Delete document
	// (DELETE /docs/doc)
	DeleteDoc(w http.ResponseWriter, r *http.Request, params DeleteDocParams)
	// Get document
	// (GET /docs/doc)
	GetDoc(w http.ResponseWriter, r *http.Request, params GetDocParams)
	// Update document
	// (PATCH /docs/doc)
	UpdateDoc(w http.ResponseWriter, r *http.Request, params UpdateDocParams)
	// Rename document or directory
	// (POST /docs/doc/rename)
	RenameDoc(w http.ResponseWriter, r *http.Request, params RenameDocParams)
	// Search documents
	// (GET /docs/search)
	SearchDocs(w http.ResponseWriter, r *http.Request, params SearchDocsParams)
	// List centralized event log entries
	// (GET /event-logs)
	ListEventLogs(w http.ResponseWriter, r *http.Request, params ListEventLogsParams)
	// Check server health status
	// (GET /health)
	GetHealthStatus(w http.ResponseWriter, r *http.Request)
	// List incident routing
	// (GET /incident-policies)
	ListIncidentPolicies(w http.ResponseWriter, r *http.Request, params ListIncidentPoliciesParams)
	// Get global incident routing
	// (GET /incident-policies/global)
	GetGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params GetGlobalIncidentPoliciesParams)
	// Update global incident routing
	// (PUT /incident-policies/global)
	UpdateGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params UpdateGlobalIncidentPoliciesParams)
	// Get workspace incident routing
	// (GET /incident-policies/workspaces/{workspaceName})
	GetWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceIncidentPoliciesParams)
	// Update workspace incident routing
	// (PUT /incident-policies/workspaces/{workspaceName})
	UpdateWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceIncidentPoliciesParams)
	// List incident providers
	// (GET /incident-providers)
	ListIncidentProviders(w http.ResponseWriter, r *http.Request, params ListIncidentProvidersParams)
	// Create incident provider
	// (POST /incident-providers)
	CreateIncidentProvider(w http.ResponseWriter, r *http.Request, params CreateIncidentProviderParams)
	// Delete incident provider
	// (DELETE /incident-providers/{providerId})
	DeleteIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params DeleteIncidentProviderParams)
	// Get incident provider
	// (GET /incident-providers/{providerId})
	GetIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params GetIncidentProviderParams)
	// Update incident provider
	// (PUT /incident-providers/{providerId})
	UpdateIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params UpdateIncidentProviderParams)
	// Send a test incident
	// (POST /incident-providers/{providerId}/test)
	TestIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params TestIncidentProviderParams)
	// Activate a license key
	// (POST /license/activate)
	ActivateLicense(w http.ResponseWriter, r *http.Request, params ActivateLicenseParams)
	// Deactivate the current license
	// (POST /license/deactivate)
	DeactivateLicense(w http.ResponseWriter, r *http.Request, params DeactivateLicenseParams)
	// Get Prometheus metrics
	// (GET /metrics)
	GetMetrics(w http.ResponseWriter, r *http.Request)
	// List notification channels
	// (GET /notification-channels)
	ListNotificationChannels(w http.ResponseWriter, r *http.Request, params ListNotificationChannelsParams)
	// Create notification channel
	// (POST /notification-channels)
	CreateNotificationChannel(w http.ResponseWriter, r *http.Request, params CreateNotificationChannelParams)
	// Delete notification channel
	// (DELETE /notification-channels/{channelId})
	DeleteNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params DeleteNotificationChannelParams)
	// Get notification channel
	// (GET /notification-channels/{channelId})
	GetNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params GetNotificationChannelParams)
	// Update notification channel
	// (PUT /notification-channels/{channelId})
	UpdateNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params UpdateNotificationChannelParams)
	// List notification routes
	// (GET /notification-routes)
	ListNotificationRoutes(w http.ResponseWriter, r *http.Request, params ListNotificationRoutesParams)
	// Get global notification routes
	// (GET /notification-routes/global)
	GetGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params GetGlobalNotificationRoutesParams)
	// Update global notification routes
	// (PUT /notification-routes/global)
	UpdateGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params UpdateGlobalNotificationRoutesParams)
	// Get workspace notification routes
	// (GET /notification-routes/workspaces/{workspaceName})
	GetWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceNotificationRoutesParams)
	// Update workspace notification routes
	// (PUT /notification-routes/workspaces/{workspaceName})
	UpdateWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceNotificationRoutesParams)
	// Get notification settings
	// (GET /notification-settings)
	GetNotificationSettings(w http.ResponseWriter, r *http.Request, params GetNotificationSettingsParams)
	// Update notification settings
	// (PUT /notification-settings)
	UpdateNotificationSettings(w http.ResponseWriter, r *http.Request, params UpdateNotificationSettingsParams)
	// Get the OpenAPI document
	// (GET /openapi.json)
	GetOpenapiJson(w http.ResponseWriter, r *http.Request)
	// List all execution queues with summary statistics
	// (GET /queues)
	ListQueues(w http.ResponseWriter, r *http.Request, params ListQueuesParams)
	// Get summary information for a specific queue
	// (GET /queues/{name})
	GetQueue(w http.ResponseWriter, r *http.Request, name string, params GetQueueParams)
	// Get queued items for a specific queue
	// (GET /queues/{name}/items)
	ListQueueItems(w http.ResponseWriter, r *http.Request, name string, params ListQueueItemsParams)
	// List all remote nodes
	// (GET /remote-nodes)
	ListRemoteNodes(w http.ResponseWriter, r *http.Request, params ListRemoteNodesParams)
	// Create a new remote node
	// (POST /remote-nodes)
	CreateRemoteNode(w http.ResponseWriter, r *http.Request, params CreateRemoteNodeParams)
	// Delete a remote node
	// (DELETE /remote-nodes/{remoteNodeId})
	DeleteRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params DeleteRemoteNodeParams)
	// Get a remote node
	// (GET /remote-nodes/{remoteNodeId})
	GetRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params GetRemoteNodeParams)
	// Update a remote node
	// (PATCH /remote-nodes/{remoteNodeId})
	UpdateRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params UpdateRemoteNodeParams)
	// Test remote node connection
	// (POST /remote-nodes/{remoteNodeId}/test-connection)
	TestRemoteNodeConnection(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params TestRemoteNodeConnectionParams)
	// Search DAGs
	// (GET /search/dags)
	SearchDAGFeed(w http.ResponseWriter, r *http.Request, params SearchDAGFeedParams)
	// Search DAG match snippets
	// (GET /search/dags/{fileName}/matches)
	SearchDagMatches(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params SearchDagMatchesParams)
	// Search documents
	// (GET /search/docs)
	SearchDocFeed(w http.ResponseWriter, r *http.Request, params SearchDocFeedParams)
	// Search document match snippets
	// (GET /search/docs/matches)
	SearchDocMatches(w http.ResponseWriter, r *http.Request, params SearchDocMatchesParams)
	// List secrets
	// (GET /secrets)
	ListSecrets(w http.ResponseWriter, r *http.Request, params ListSecretsParams)
	// Create a secret
	// (POST /secrets)
	CreateSecret(w http.ResponseWriter, r *http.Request, params CreateSecretParams)
	// Delete secret
	// (DELETE /secrets/{secretId})
	DeleteSecret(w http.ResponseWriter, r *http.Request, secretId string, params DeleteSecretParams)
	// Get secret
	// (GET /secrets/{secretId})
	GetSecret(w http.ResponseWriter, r *http.Request, secretId string, params GetSecretParams)
	// Update secret metadata
	// (PATCH /secrets/{secretId})
	UpdateSecret(w http.ResponseWriter, r *http.Request, secretId string, params UpdateSecretParams)
	// Disable secret
	// (POST /secrets/{secretId}/disable)
	DisableSecret(w http.ResponseWriter, r *http.Request, secretId string, params DisableSecretParams)
	// Enable secret
	// (POST /secrets/{secretId}/enable)
	EnableSecret(w http.ResponseWriter, r *http.Request, secretId string, params EnableSecretParams)
	// Write a new secret value version
	// (POST /secrets/{secretId}/versions)
	WriteSecretVersion(w http.ResponseWriter, r *http.Request, secretId string, params WriteSecretVersionParams)
	// Get coordinator service status
	// (GET /services/coordinator)
	GetCoordinatorStatus(w http.ResponseWriter, r *http.Request, params GetCoordinatorStatusParams)
	// Get resource usage history
	// (GET /services/resources/history)
	GetResourceHistory(w http.ResponseWriter, r *http.Request, params GetResourceHistoryParams)
	// Get scheduler service status
	// (GET /services/scheduler)
	GetSchedulerStatus(w http.ResponseWriter, r *http.Request, params GetSchedulerStatusParams)
	// Get tunnel service status
	// (GET /services/tunnel)
	GetTunnelStatus(w http.ResponseWriter, r *http.Request, params GetTunnelStatusParams)
	// Get agent configuration
	// (GET /settings/agent)
	GetAgentConfig(w http.ResponseWriter, r *http.Request, params GetAgentConfigParams)
	// Update agent configuration
	// (PATCH /settings/agent)
	UpdateAgentConfig(w http.ResponseWriter, r *http.Request, params UpdateAgentConfigParams)
	// List agent auth providers
	// (GET /settings/agent/auth/providers)
	ListAgentAuthProviders(w http.ResponseWriter, r *http.Request, params ListAgentAuthProvidersParams)
	// Disconnect agent auth provider login
	// (DELETE /settings/agent/auth/providers/{providerId}/login)
	DisconnectAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params DisconnectAgentAuthProviderLoginParams)
	// Start agent auth provider login
	// (POST /settings/agent/auth/providers/{providerId}/login)
	StartAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params StartAgentAuthProviderLoginParams)
	// Complete agent auth provider login
	// (POST /settings/agent/auth/providers/{providerId}/login/complete)
	CompleteAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params CompleteAgentAuthProviderLoginParams)
	// Set default agent model
	// (PUT /settings/agent/default-model)
	SetDefaultAgentModel(w http.ResponseWriter, r *http.Request, params SetDefaultAgentModelParams)
	// Clear global agent memory
	// (DELETE /settings/agent/memory)
	DeleteAgentMemory(w http.ResponseWriter, r *http.Request, params DeleteAgentMemoryParams)
	// Get agent memory
	// (GET /settings/agent/memory)
	GetAgentMemory(w http.ResponseWriter, r *http.Request, params GetAgentMemoryParams)
	// Update global agent memory
	// (PUT /settings/agent/memory)
	UpdateAgentMemory(w http.ResponseWriter, r *http.Request, params UpdateAgentMemoryParams)
	// Clear DAG-specific agent memory
	// (DELETE /settings/agent/memory/dags/{dagName})
	DeleteAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params DeleteAgentDAGMemoryParams)
	// Get DAG-specific agent memory
	// (GET /settings/agent/memory/dags/{dagName})
	GetAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params GetAgentDAGMemoryParams)
	// Update DAG-specific agent memory
	// (PUT /settings/agent/memory/dags/{dagName})
	UpdateAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params UpdateAgentDAGMemoryParams)
	// List model presets
	// (GET /settings/agent/model-presets)
	ListModelPresets(w http.ResponseWriter, r *http.Request, params ListModelPresetsParams)
	// List agent models
	// (GET /settings/agent/models)
	ListAgentModels(w http.ResponseWriter, r *http.Request, params ListAgentModelsParams)
	// Create agent model
	// (POST /settings/agent/models)
	CreateAgentModel(w http.ResponseWriter, r *http.Request, params CreateAgentModelParams)
	// Delete agent model
	// (DELETE /settings/agent/models/{modelId})
	DeleteAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params DeleteAgentModelParams)
	// Update agent model
	// (PATCH /settings/agent/models/{modelId})
	UpdateAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params UpdateAgentModelParams)
	// List agent souls
	// (GET /settings/agent/souls)
	ListAgentSouls(w http.ResponseWriter, r *http.Request, params ListAgentSoulsParams)
	// Create agent soul
	// (POST /settings/agent/souls)
	CreateAgentSoul(w http.ResponseWriter, r *http.Request, params CreateAgentSoulParams)
	// Delete agent soul
	// (DELETE /settings/agent/souls/{soulId})
	DeleteAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params DeleteAgentSoulParams)
	// Get agent soul
	// (GET /settings/agent/souls/{soulId})
	GetAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params GetAgentSoulParams)
	// Update agent soul
	// (PATCH /settings/agent/souls/{soulId})
	UpdateAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params UpdateAgentSoulParams)
	// List agent tools
	// (GET /settings/agent/tools)
	ListAgentTools(w http.ResponseWriter, r *http.Request, params ListAgentToolsParams)
	// Get base configuration
	// (GET /settings/base-config)
	GetBaseConfig(w http.ResponseWriter, r *http.Request, params GetBaseConfigParams)
	// Update base configuration
	// (PUT /settings/base-config)
	UpdateBaseConfig(w http.ResponseWriter, r *http.Request, params UpdateBaseConfigParams)
	// Get workspace base configuration
	// (GET /settings/workspaces/{workspaceName}/base-config)
	GetWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceBaseConfigParams)
	// Update workspace base configuration
	// (PUT /settings/workspaces/{workspaceName}/base-config)
	UpdateWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceBaseConfigParams)
	// Cleanup missing sync items
	// (POST /sync/cleanup)
	SyncCleanup(w http.ResponseWriter, r *http.Request, params SyncCleanupParams)
	// Get Git sync configuration
	// (GET /sync/config)
	GetSyncConfig(w http.ResponseWriter, r *http.Request, params GetSyncConfigParams)
	// Update Git sync configuration
	// (PUT /sync/config)
	UpdateSyncConfig(w http.ResponseWriter, r *http.Request, params UpdateSyncConfigParams)
	// Delete selected sync items
	// (POST /sync/delete-batch)
	SyncDeleteBatch(w http.ResponseWriter, r *http.Request, params SyncDeleteBatchParams)
	// Delete all missing sync items
	// (POST /sync/delete-missing)
	SyncDeleteMissing(w http.ResponseWriter, r *http.Request, params SyncDeleteMissingParams)
	// Delete a sync item
	// (POST /sync/items/{itemId}/delete)
	DeleteSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params DeleteSyncItemParams)
	// Get diff for a sync item
	// (GET /sync/items/{itemId}/diff)
	GetSyncItemDiff(w http.ResponseWriter, r *http.Request, itemId string, params GetSyncItemDiffParams)
	// Discard local changes for a sync item
	// (POST /sync/items/{itemId}/discard)
	DiscardSyncItemChanges(w http.ResponseWriter, r *http.Request, itemId string, params DiscardSyncItemChangesParams)
	// Forget a sync item
	// (POST /sync/items/{itemId}/forget)
	ForgetSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params ForgetSyncItemParams)
	// Move a sync item
	// (POST /sync/items/{itemId}/move)
	MoveSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params MoveSyncItemParams)
	// Publish a single sync item
	// (POST /sync/items/{itemId}/publish)
	PublishSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params PublishSyncItemParams)
	// Publish selected DAGs
	// (POST /sync/publish-all)
	SyncPublishAll(w http.ResponseWriter, r *http.Request, params SyncPublishAllParams)
	// Pull changes from remote repository
	// (POST /sync/pull)
	SyncPull(w http.ResponseWriter, r *http.Request, params SyncPullParams)
	// Get Git sync status
	// (GET /sync/status)
	GetSyncStatus(w http.ResponseWriter, r *http.Request, params GetSyncStatusParams)
	// Test connection to remote repository
	// (POST /sync/test-connection)
	SyncTestConnection(w http.ResponseWriter, r *http.Request, params SyncTestConnectionParams)
	// List all users
	// (GET /users)
	ListUsers(w http.ResponseWriter, r *http.Request)
	// Create a new user
	// (POST /users)
	CreateUser(w http.ResponseWriter, r *http.Request)
	// Delete user
	// (DELETE /users/{userId})
	DeleteUser(w http.ResponseWriter, r *http.Request, userId UserId)
	// Get user by ID
	// (GET /users/{userId})
	GetUser(w http.ResponseWriter, r *http.Request, userId UserId)
	// Update user
	// (PATCH /users/{userId})
	UpdateUser(w http.ResponseWriter, r *http.Request, userId UserId)
	// Reset user's password
	// (POST /users/{userId}/reset-password)
	ResetUserPassword(w http.ResponseWriter, r *http.Request, userId UserId)
	// List all webhooks
	// (GET /webhooks)
	ListWebhooks(w http.ResponseWriter, r *http.Request, params ListWebhooksParams)
	// Trigger DAG execution via webhook
	// (POST /webhooks/{fileName})
	TriggerWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TriggerWebhookParams)
	// List distributed workers
	// (GET /workers)
	GetWorkers(w http.ResponseWriter, r *http.Request, params GetWorkersParams)
	// List all workspaces
	// (GET /workspaces)
	ListWorkspaces(w http.ResponseWriter, r *http.Request, params ListWorkspacesParams)
	// Create a workspace
	// (POST /workspaces)
	CreateWorkspace(w http.ResponseWriter, r *http.Request, params CreateWorkspaceParams)
	// Delete a workspace
	// (DELETE /workspaces/{workspaceId})
	DeleteWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params DeleteWorkspaceParams)
	// Get workspace by ID
	// (GET /workspaces/{workspaceId})
	GetWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params GetWorkspaceParams)
	// Update a workspace
	// (PATCH /workspaces/{workspaceId})
	UpdateWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params UpdateWorkspaceParams)
}

// Unimplemented server implementation that returns http.StatusNotImplemented for each endpoint.

type Unimplemented struct{}

// List agent sessions
// (GET /agent/sessions)
func (_ Unimplemented) ListAgentSessions(w http.ResponseWriter, r *http.Request, params ListAgentSessionsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create agent session
// (POST /agent/sessions)
func (_ Unimplemented) CreateAgentSession(w http.ResponseWriter, r *http.Request, params CreateAgentSessionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get agent session
// (GET /agent/sessions/{sessionId})
func (_ Unimplemented) GetAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params GetAgentSessionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Cancel agent session
// (POST /agent/sessions/{sessionId}/cancel)
func (_ Unimplemented) CancelAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params CancelAgentSessionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Send message to agent session
// (POST /agent/sessions/{sessionId}/chat)
func (_ Unimplemented) ChatAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params ChatAgentSessionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Respond to agent prompt
// (POST /agent/sessions/{sessionId}/respond)
func (_ Unimplemented) RespondAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params RespondAgentSessionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all API keys
// (GET /api-keys)
func (_ Unimplemented) ListAPIKeys(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create API key
// (POST /api-keys)
func (_ Unimplemented) CreateAPIKey(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete API key
// (DELETE /api-keys/{keyId})
func (_ Unimplemented) DeleteAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get API key
// (GET /api-keys/{keyId})
func (_ Unimplemented) GetAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update API key
// (PATCH /api-keys/{keyId})
func (_ Unimplemented) UpdateAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List audit log entries
// (GET /audit)
func (_ Unimplemented) ListAuditLogs(w http.ResponseWriter, r *http.Request, params ListAuditLogsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Change current user's password
// (POST /auth/change-password)
func (_ Unimplemented) ChangePassword(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Authenticate user and obtain JWT token
// (POST /auth/login)
func (_ Unimplemented) Login(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get current authenticated user
// (GET /auth/me)
func (_ Unimplemented) GetCurrentUser(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create initial admin account
// (POST /auth/setup)
func (_ Unimplemented) Setup(w http.ResponseWriter, r *http.Request, params SetupParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all DAG-runs
// (GET /dag-runs)
func (_ Unimplemented) ListDAGRuns(w http.ResponseWriter, r *http.Request, params ListDAGRunsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create and execute a DAG-run from inline spec
// (POST /dag-runs)
func (_ Unimplemented) ExecuteDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params ExecuteDAGRunFromSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Enqueue a DAG-run from inline spec
// (POST /dag-runs/enqueue)
func (_ Unimplemented) EnqueueDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params EnqueueDAGRunFromSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all DAG-runs with a specific name
// (GET /dag-runs/{name})
func (_ Unimplemented) ListDAGRunsByName(w http.ResponseWriter, r *http.Request, name DAGRunName, params ListDAGRunsByNameParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete a DAG-run
// (DELETE /dag-runs/{name}/{dagRunId})
func (_ Unimplemented) DeleteDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunConcreteId, params DeleteDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve detailed status of a DAG-run
// (GET /dag-runs/{name}/{dagRunId})
func (_ Unimplemented) GetDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunDetailsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List artifacts for a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/artifacts)
func (_ Unimplemented) GetDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download an artifact for a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/artifacts/download)
func (_ Unimplemented) DownloadDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunArtifactParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Preview an artifact for a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/artifacts/preview)
func (_ Unimplemented) GetDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactPreviewParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Dequeue a queued DAG-run
// (GET /dag-runs/{name}/{dagRunId}/dequeue)
func (_ Unimplemented) DequeueDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DequeueDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Run edited DAG retry
// (POST /dag-runs/{name}/{dagRunId}/edit-retry)
func (_ Unimplemented) EditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params EditRetryDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Preview edited DAG-run retry
// (POST /dag-runs/{name}/{dagRunId}/edit-retry/preview)
func (_ Unimplemented) PreviewEditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params PreviewEditRetryDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve full execution log of a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/log)
func (_ Unimplemented) GetDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download full execution log of a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/log/download)
func (_ Unimplemented) DownloadDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve collected outputs from a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/outputs)
func (_ Unimplemented) GetDAGRunOutputs(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunOutputsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Reschedule DAG-run with a new run ID
// (POST /dag-runs/{name}/{dagRunId}/reschedule)
func (_ Unimplemented) RescheduleDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RescheduleDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retry DAG-run execution
// (POST /dag-runs/{name}/{dagRunId}/retry)
func (_ Unimplemented) RetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RetryDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve DAG specification for a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/spec)
func (_ Unimplemented) GetDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Approve a waiting step
// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/approve)
func (_ Unimplemented) ApproveDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params ApproveDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve log for a specific step in a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log)
func (_ Unimplemented) GetDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download log for a specific step in a DAG-run
// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log/download)
func (_ Unimplemented) DownloadDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params DownloadDAGRunStepLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve chat messages for a step
// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/messages)
func (_ Unimplemented) GetDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepMessagesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Push back a waiting step for re-execution with feedback
// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/push-back)
func (_ Unimplemented) PushBackDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params PushBackDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Reject a waiting step
// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/reject)
func (_ Unimplemented) RejectDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params RejectDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Manually update a step's execution status
// (PATCH /dag-runs/{name}/{dagRunId}/steps/{stepName}/status)
func (_ Unimplemented) UpdateDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params UpdateDAGRunStepStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Terminate or cancel a DAG-run
// (POST /dag-runs/{name}/{dagRunId}/stop)
func (_ Unimplemented) TerminateDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params TerminateDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get sub DAG runs with timing info
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs)
func (_ Unimplemented) GetSubDAGRuns(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetSubDAGRunsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve detailed status of a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId})
func (_ Unimplemented) GetSubDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunDetailsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List artifacts for a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts)
func (_ Unimplemented) GetSubDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download an artifact for a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/download)
func (_ Unimplemented) DownloadSubDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunArtifactParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Preview an artifact for a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/preview)
func (_ Unimplemented) GetSubDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactPreviewParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve log for a specific sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log)
func (_ Unimplemented) GetSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download log for a specific sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log/download)
func (_ Unimplemented) DownloadSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get Sub-DAG Run Specification
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/spec)
func (_ Unimplemented) GetSubDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Approve a waiting step in a sub DAG-run
// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/approve)
func (_ Unimplemented) ApproveSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params ApproveSubDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve log for a specific step in a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log)
func (_ Unimplemented) GetSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Download log for a specific step in a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log/download)
func (_ Unimplemented) DownloadSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params DownloadSubDAGRunStepLogParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve chat messages for a step in a sub DAG-run
// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/messages)
func (_ Unimplemented) GetSubDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepMessagesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Push back a waiting step in a sub DAG-run for re-execution with feedback
// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/push-back)
func (_ Unimplemented) PushBackSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params PushBackSubDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Reject a waiting step in a sub DAG-run
// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/reject)
func (_ Unimplemented) RejectSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params RejectSubDAGRunStepParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Manually update a step's execution status in a sub DAG-run
// (PATCH /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/status)
func (_ Unimplemented) UpdateSubDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params UpdateSubDAGRunStepStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all available DAGs
// (GET /dags)
func (_ Unimplemented) ListDAGs(w http.ResponseWriter, r *http.Request, params ListDAGsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create a new DAG definition
// (POST /dags)
func (_ Unimplemented) CreateNewDAG(w http.ResponseWriter, r *http.Request, params CreateNewDAGParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all available DAG labels
// (GET /dags/labels)
func (_ Unimplemented) GetAllDAGLabels(w http.ResponseWriter, r *http.Request, params GetAllDAGLabelsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search DAGs
// (GET /dags/search)
func (_ Unimplemented) SearchDAGs(w http.ResponseWriter, r *http.Request, params SearchDAGsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all available DAG tags
// (GET /dags/tags)
func (_ Unimplemented) GetAllDAGTags(w http.ResponseWriter, r *http.Request, params GetAllDAGTagsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Validate a DAG specification
// (POST /dags/validate)
func (_ Unimplemented) ValidateDAGSpec(w http.ResponseWriter, r *http.Request, params ValidateDAGSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete an existing DAG
// (DELETE /dags/{fileName})
func (_ Unimplemented) DeleteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve comprehensive DAG information
// (GET /dags/{fileName})
func (_ Unimplemented) GetDAGDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDetailsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve execution history of a DAG
// (GET /dags/{fileName}/dag-runs)
func (_ Unimplemented) GetDAGDAGRunHistory(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDAGRunHistoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get detailed status of a specific DAG-run
// (GET /dags/{fileName}/dag-runs/{dagRunId})
func (_ Unimplemented) GetDAGDAGRunDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, dagRunId DAGRunId, params GetDAGDAGRunDetailsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Enqueue a DAG-run from DAG
// (POST /dags/{fileName}/enqueue)
func (_ Unimplemented) EnqueueDAGDAGRun(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnqueueDAGDAGRunParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete DAG incident routing
// (DELETE /dags/{fileName}/incidents)
func (_ Unimplemented) DeleteDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGIncidentsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get DAG incident routing
// (GET /dags/{fileName}/incidents)
func (_ Unimplemented) GetDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGIncidentsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update DAG incident routing
// (PUT /dags/{fileName}/incidents)
func (_ Unimplemented) UpdateDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGIncidentsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete DAG notification settings
// (DELETE /dags/{fileName}/notifications)
func (_ Unimplemented) DeleteDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGNotificationsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get DAG notification settings
// (GET /dags/{fileName}/notifications)
func (_ Unimplemented) GetDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGNotificationsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update DAG notification settings
// (PUT /dags/{fileName}/notifications)
func (_ Unimplemented) UpdateDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGNotificationsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Send a test DAG notification
// (POST /dags/{fileName}/notifications/test)
func (_ Unimplemented) TestDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TestDAGNotificationsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Change DAG file ID
// (POST /dags/{fileName}/rename)
func (_ Unimplemented) RenameDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RenameDAGParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Retrieve DAG specification
// (GET /dags/{fileName}/spec)
func (_ Unimplemented) GetDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update DAG spec
// (PUT /dags/{fileName}/spec)
func (_ Unimplemented) UpdateDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSpecParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create and execute a DAG-run from DAG
// (POST /dags/{fileName}/start)
func (_ Unimplemented) ExecuteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Execute DAG synchronously and wait for completion
// (POST /dags/{fileName}/start-sync)
func (_ Unimplemented) ExecuteDAGSync(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGSyncParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Stop all running instances of a DAG
// (POST /dags/{fileName}/stop-all)
func (_ Unimplemented) StopAllDAGRuns(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params StopAllDAGRunsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Toggle DAG suspension state
// (POST /dags/{fileName}/suspend)
func (_ Unimplemented) UpdateDAGSuspensionState(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSuspensionStateParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete webhook for DAG
// (DELETE /dags/{fileName}/webhook)
func (_ Unimplemented) DeleteDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGWebhookParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get webhook for DAG
// (GET /dags/{fileName}/webhook)
func (_ Unimplemented) GetDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGWebhookParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create webhook for DAG
// (POST /dags/{fileName}/webhook)
func (_ Unimplemented) CreateDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params CreateDAGWebhookParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Configure webhook HMAC
// (POST /dags/{fileName}/webhook/hmac/configure)
func (_ Unimplemented) ConfigureDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ConfigureDAGWebhookHMACParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Disable webhook HMAC
// (POST /dags/{fileName}/webhook/hmac/disable)
func (_ Unimplemented) DisableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DisableDAGWebhookHMACParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Enable webhook HMAC
// (POST /dags/{fileName}/webhook/hmac/enable)
func (_ Unimplemented) EnableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnableDAGWebhookHMACParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Regenerate webhook HMAC secret
// (POST /dags/{fileName}/webhook/hmac/regenerate)
func (_ Unimplemented) RegenerateDAGWebhookHMACSecret(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookHMACSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Regenerate webhook token
// (POST /dags/{fileName}/webhook/regenerate)
func (_ Unimplemented) RegenerateDAGWebhookToken(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookTokenParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Toggle webhook enabled state
// (POST /dags/{fileName}/webhook/toggle)
func (_ Unimplemented) ToggleDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ToggleDAGWebhookParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List documents
// (GET /docs)
func (_ Unimplemented) ListDocs(w http.ResponseWriter, r *http.Request, params ListDocsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create document
// (POST /docs)
func (_ Unimplemented) CreateDoc(w http.ResponseWriter, r *http.Request, params CreateDocParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete multiple documents or directories
// (POST /docs/delete-batch)
func (_ Unimplemented) DeleteDocBatch(w http.ResponseWriter, r *http.Request, params DeleteDocBatchParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete document
// (DELETE /docs/doc)
func (_ Unimplemented) DeleteDoc(w http.ResponseWriter, r *http.Request, params DeleteDocParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get document
// (GET /docs/doc)
func (_ Unimplemented) GetDoc(w http.ResponseWriter, r *http.Request, params GetDocParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update document
// (PATCH /docs/doc)
func (_ Unimplemented) UpdateDoc(w http.ResponseWriter, r *http.Request, params UpdateDocParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Rename document or directory
// (POST /docs/doc/rename)
func (_ Unimplemented) RenameDoc(w http.ResponseWriter, r *http.Request, params RenameDocParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search documents
// (GET /docs/search)
func (_ Unimplemented) SearchDocs(w http.ResponseWriter, r *http.Request, params SearchDocsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List centralized event log entries
// (GET /event-logs)
func (_ Unimplemented) ListEventLogs(w http.ResponseWriter, r *http.Request, params ListEventLogsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Check server health status
// (GET /health)
func (_ Unimplemented) GetHealthStatus(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List incident routing
// (GET /incident-policies)
func (_ Unimplemented) ListIncidentPolicies(w http.ResponseWriter, r *http.Request, params ListIncidentPoliciesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get global incident routing
// (GET /incident-policies/global)
func (_ Unimplemented) GetGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params GetGlobalIncidentPoliciesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update global incident routing
// (PUT /incident-policies/global)
func (_ Unimplemented) UpdateGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params UpdateGlobalIncidentPoliciesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get workspace incident routing
// (GET /incident-policies/workspaces/{workspaceName})
func (_ Unimplemented) GetWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceIncidentPoliciesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update workspace incident routing
// (PUT /incident-policies/workspaces/{workspaceName})
func (_ Unimplemented) UpdateWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceIncidentPoliciesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List incident providers
// (GET /incident-providers)
func (_ Unimplemented) ListIncidentProviders(w http.ResponseWriter, r *http.Request, params ListIncidentProvidersParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create incident provider
// (POST /incident-providers)
func (_ Unimplemented) CreateIncidentProvider(w http.ResponseWriter, r *http.Request, params CreateIncidentProviderParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete incident provider
// (DELETE /incident-providers/{providerId})
func (_ Unimplemented) DeleteIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params DeleteIncidentProviderParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get incident provider
// (GET /incident-providers/{providerId})
func (_ Unimplemented) GetIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params GetIncidentProviderParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update incident provider
// (PUT /incident-providers/{providerId})
func (_ Unimplemented) UpdateIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params UpdateIncidentProviderParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Send a test incident
// (POST /incident-providers/{providerId}/test)
func (_ Unimplemented) TestIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params TestIncidentProviderParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Activate a license key
// (POST /license/activate)
func (_ Unimplemented) ActivateLicense(w http.ResponseWriter, r *http.Request, params ActivateLicenseParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Deactivate the current license
// (POST /license/deactivate)
func (_ Unimplemented) DeactivateLicense(w http.ResponseWriter, r *http.Request, params DeactivateLicenseParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get Prometheus metrics
// (GET /metrics)
func (_ Unimplemented) GetMetrics(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List notification channels
// (GET /notification-channels)
func (_ Unimplemented) ListNotificationChannels(w http.ResponseWriter, r *http.Request, params ListNotificationChannelsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create notification channel
// (POST /notification-channels)
func (_ Unimplemented) CreateNotificationChannel(w http.ResponseWriter, r *http.Request, params CreateNotificationChannelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete notification channel
// (DELETE /notification-channels/{channelId})
func (_ Unimplemented) DeleteNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params DeleteNotificationChannelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get notification channel
// (GET /notification-channels/{channelId})
func (_ Unimplemented) GetNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params GetNotificationChannelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update notification channel
// (PUT /notification-channels/{channelId})
func (_ Unimplemented) UpdateNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params UpdateNotificationChannelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List notification routes
// (GET /notification-routes)
func (_ Unimplemented) ListNotificationRoutes(w http.ResponseWriter, r *http.Request, params ListNotificationRoutesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get global notification routes
// (GET /notification-routes/global)
func (_ Unimplemented) GetGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params GetGlobalNotificationRoutesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update global notification routes
// (PUT /notification-routes/global)
func (_ Unimplemented) UpdateGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params UpdateGlobalNotificationRoutesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get workspace notification routes
// (GET /notification-routes/workspaces/{workspaceName})
func (_ Unimplemented) GetWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceNotificationRoutesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update workspace notification routes
// (PUT /notification-routes/workspaces/{workspaceName})
func (_ Unimplemented) UpdateWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceNotificationRoutesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get notification settings
// (GET /notification-settings)
func (_ Unimplemented) GetNotificationSettings(w http.ResponseWriter, r *http.Request, params GetNotificationSettingsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update notification settings
// (PUT /notification-settings)
func (_ Unimplemented) UpdateNotificationSettings(w http.ResponseWriter, r *http.Request, params UpdateNotificationSettingsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get the OpenAPI document
// (GET /openapi.json)
func (_ Unimplemented) GetOpenapiJson(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all execution queues with summary statistics
// (GET /queues)
func (_ Unimplemented) ListQueues(w http.ResponseWriter, r *http.Request, params ListQueuesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get summary information for a specific queue
// (GET /queues/{name})
func (_ Unimplemented) GetQueue(w http.ResponseWriter, r *http.Request, name string, params GetQueueParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get queued items for a specific queue
// (GET /queues/{name}/items)
func (_ Unimplemented) ListQueueItems(w http.ResponseWriter, r *http.Request, name string, params ListQueueItemsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all remote nodes
// (GET /remote-nodes)
func (_ Unimplemented) ListRemoteNodes(w http.ResponseWriter, r *http.Request, params ListRemoteNodesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create a new remote node
// (POST /remote-nodes)
func (_ Unimplemented) CreateRemoteNode(w http.ResponseWriter, r *http.Request, params CreateRemoteNodeParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete a remote node
// (DELETE /remote-nodes/{remoteNodeId})
func (_ Unimplemented) DeleteRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params DeleteRemoteNodeParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get a remote node
// (GET /remote-nodes/{remoteNodeId})
func (_ Unimplemented) GetRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params GetRemoteNodeParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update a remote node
// (PATCH /remote-nodes/{remoteNodeId})
func (_ Unimplemented) UpdateRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params UpdateRemoteNodeParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Test remote node connection
// (POST /remote-nodes/{remoteNodeId}/test-connection)
func (_ Unimplemented) TestRemoteNodeConnection(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params TestRemoteNodeConnectionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search DAGs
// (GET /search/dags)
func (_ Unimplemented) SearchDAGFeed(w http.ResponseWriter, r *http.Request, params SearchDAGFeedParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search DAG match snippets
// (GET /search/dags/{fileName}/matches)
func (_ Unimplemented) SearchDagMatches(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params SearchDagMatchesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search documents
// (GET /search/docs)
func (_ Unimplemented) SearchDocFeed(w http.ResponseWriter, r *http.Request, params SearchDocFeedParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Search document match snippets
// (GET /search/docs/matches)
func (_ Unimplemented) SearchDocMatches(w http.ResponseWriter, r *http.Request, params SearchDocMatchesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List secrets
// (GET /secrets)
func (_ Unimplemented) ListSecrets(w http.ResponseWriter, r *http.Request, params ListSecretsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create a secret
// (POST /secrets)
func (_ Unimplemented) CreateSecret(w http.ResponseWriter, r *http.Request, params CreateSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete secret
// (DELETE /secrets/{secretId})
func (_ Unimplemented) DeleteSecret(w http.ResponseWriter, r *http.Request, secretId string, params DeleteSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get secret
// (GET /secrets/{secretId})
func (_ Unimplemented) GetSecret(w http.ResponseWriter, r *http.Request, secretId string, params GetSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update secret metadata
// (PATCH /secrets/{secretId})
func (_ Unimplemented) UpdateSecret(w http.ResponseWriter, r *http.Request, secretId string, params UpdateSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Disable secret
// (POST /secrets/{secretId}/disable)
func (_ Unimplemented) DisableSecret(w http.ResponseWriter, r *http.Request, secretId string, params DisableSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Enable secret
// (POST /secrets/{secretId}/enable)
func (_ Unimplemented) EnableSecret(w http.ResponseWriter, r *http.Request, secretId string, params EnableSecretParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Write a new secret value version
// (POST /secrets/{secretId}/versions)
func (_ Unimplemented) WriteSecretVersion(w http.ResponseWriter, r *http.Request, secretId string, params WriteSecretVersionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get coordinator service status
// (GET /services/coordinator)
func (_ Unimplemented) GetCoordinatorStatus(w http.ResponseWriter, r *http.Request, params GetCoordinatorStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get resource usage history
// (GET /services/resources/history)
func (_ Unimplemented) GetResourceHistory(w http.ResponseWriter, r *http.Request, params GetResourceHistoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get scheduler service status
// (GET /services/scheduler)
func (_ Unimplemented) GetSchedulerStatus(w http.ResponseWriter, r *http.Request, params GetSchedulerStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get tunnel service status
// (GET /services/tunnel)
func (_ Unimplemented) GetTunnelStatus(w http.ResponseWriter, r *http.Request, params GetTunnelStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get agent configuration
// (GET /settings/agent)
func (_ Unimplemented) GetAgentConfig(w http.ResponseWriter, r *http.Request, params GetAgentConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update agent configuration
// (PATCH /settings/agent)
func (_ Unimplemented) UpdateAgentConfig(w http.ResponseWriter, r *http.Request, params UpdateAgentConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List agent auth providers
// (GET /settings/agent/auth/providers)
func (_ Unimplemented) ListAgentAuthProviders(w http.ResponseWriter, r *http.Request, params ListAgentAuthProvidersParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Disconnect agent auth provider login
// (DELETE /settings/agent/auth/providers/{providerId}/login)
func (_ Unimplemented) DisconnectAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params DisconnectAgentAuthProviderLoginParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Start agent auth provider login
// (POST /settings/agent/auth/providers/{providerId}/login)
func (_ Unimplemented) StartAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params StartAgentAuthProviderLoginParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Complete agent auth provider login
// (POST /settings/agent/auth/providers/{providerId}/login/complete)
func (_ Unimplemented) CompleteAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params CompleteAgentAuthProviderLoginParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Set default agent model
// (PUT /settings/agent/default-model)
func (_ Unimplemented) SetDefaultAgentModel(w http.ResponseWriter, r *http.Request, params SetDefaultAgentModelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Clear global agent memory
// (DELETE /settings/agent/memory)
func (_ Unimplemented) DeleteAgentMemory(w http.ResponseWriter, r *http.Request, params DeleteAgentMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get agent memory
// (GET /settings/agent/memory)
func (_ Unimplemented) GetAgentMemory(w http.ResponseWriter, r *http.Request, params GetAgentMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update global agent memory
// (PUT /settings/agent/memory)
func (_ Unimplemented) UpdateAgentMemory(w http.ResponseWriter, r *http.Request, params UpdateAgentMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Clear DAG-specific agent memory
// (DELETE /settings/agent/memory/dags/{dagName})
func (_ Unimplemented) DeleteAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params DeleteAgentDAGMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get DAG-specific agent memory
// (GET /settings/agent/memory/dags/{dagName})
func (_ Unimplemented) GetAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params GetAgentDAGMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update DAG-specific agent memory
// (PUT /settings/agent/memory/dags/{dagName})
func (_ Unimplemented) UpdateAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params UpdateAgentDAGMemoryParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List model presets
// (GET /settings/agent/model-presets)
func (_ Unimplemented) ListModelPresets(w http.ResponseWriter, r *http.Request, params ListModelPresetsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List agent models
// (GET /settings/agent/models)
func (_ Unimplemented) ListAgentModels(w http.ResponseWriter, r *http.Request, params ListAgentModelsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create agent model
// (POST /settings/agent/models)
func (_ Unimplemented) CreateAgentModel(w http.ResponseWriter, r *http.Request, params CreateAgentModelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete agent model
// (DELETE /settings/agent/models/{modelId})
func (_ Unimplemented) DeleteAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params DeleteAgentModelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update agent model
// (PATCH /settings/agent/models/{modelId})
func (_ Unimplemented) UpdateAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params UpdateAgentModelParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List agent souls
// (GET /settings/agent/souls)
func (_ Unimplemented) ListAgentSouls(w http.ResponseWriter, r *http.Request, params ListAgentSoulsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create agent soul
// (POST /settings/agent/souls)
func (_ Unimplemented) CreateAgentSoul(w http.ResponseWriter, r *http.Request, params CreateAgentSoulParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete agent soul
// (DELETE /settings/agent/souls/{soulId})
func (_ Unimplemented) DeleteAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params DeleteAgentSoulParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get agent soul
// (GET /settings/agent/souls/{soulId})
func (_ Unimplemented) GetAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params GetAgentSoulParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update agent soul
// (PATCH /settings/agent/souls/{soulId})
func (_ Unimplemented) UpdateAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params UpdateAgentSoulParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List agent tools
// (GET /settings/agent/tools)
func (_ Unimplemented) ListAgentTools(w http.ResponseWriter, r *http.Request, params ListAgentToolsParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get base configuration
// (GET /settings/base-config)
func (_ Unimplemented) GetBaseConfig(w http.ResponseWriter, r *http.Request, params GetBaseConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update base configuration
// (PUT /settings/base-config)
func (_ Unimplemented) UpdateBaseConfig(w http.ResponseWriter, r *http.Request, params UpdateBaseConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get workspace base configuration
// (GET /settings/workspaces/{workspaceName}/base-config)
func (_ Unimplemented) GetWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceBaseConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update workspace base configuration
// (PUT /settings/workspaces/{workspaceName}/base-config)
func (_ Unimplemented) UpdateWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceBaseConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Cleanup missing sync items
// (POST /sync/cleanup)
func (_ Unimplemented) SyncCleanup(w http.ResponseWriter, r *http.Request, params SyncCleanupParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get Git sync configuration
// (GET /sync/config)
func (_ Unimplemented) GetSyncConfig(w http.ResponseWriter, r *http.Request, params GetSyncConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update Git sync configuration
// (PUT /sync/config)
func (_ Unimplemented) UpdateSyncConfig(w http.ResponseWriter, r *http.Request, params UpdateSyncConfigParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete selected sync items
// (POST /sync/delete-batch)
func (_ Unimplemented) SyncDeleteBatch(w http.ResponseWriter, r *http.Request, params SyncDeleteBatchParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete all missing sync items
// (POST /sync/delete-missing)
func (_ Unimplemented) SyncDeleteMissing(w http.ResponseWriter, r *http.Request, params SyncDeleteMissingParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete a sync item
// (POST /sync/items/{itemId}/delete)
func (_ Unimplemented) DeleteSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params DeleteSyncItemParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get diff for a sync item
// (GET /sync/items/{itemId}/diff)
func (_ Unimplemented) GetSyncItemDiff(w http.ResponseWriter, r *http.Request, itemId string, params GetSyncItemDiffParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Discard local changes for a sync item
// (POST /sync/items/{itemId}/discard)
func (_ Unimplemented) DiscardSyncItemChanges(w http.ResponseWriter, r *http.Request, itemId string, params DiscardSyncItemChangesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Forget a sync item
// (POST /sync/items/{itemId}/forget)
func (_ Unimplemented) ForgetSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params ForgetSyncItemParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Move a sync item
// (POST /sync/items/{itemId}/move)
func (_ Unimplemented) MoveSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params MoveSyncItemParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Publish a single sync item
// (POST /sync/items/{itemId}/publish)
func (_ Unimplemented) PublishSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params PublishSyncItemParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Publish selected DAGs
// (POST /sync/publish-all)
func (_ Unimplemented) SyncPublishAll(w http.ResponseWriter, r *http.Request, params SyncPublishAllParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Pull changes from remote repository
// (POST /sync/pull)
func (_ Unimplemented) SyncPull(w http.ResponseWriter, r *http.Request, params SyncPullParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get Git sync status
// (GET /sync/status)
func (_ Unimplemented) GetSyncStatus(w http.ResponseWriter, r *http.Request, params GetSyncStatusParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Test connection to remote repository
// (POST /sync/test-connection)
func (_ Unimplemented) SyncTestConnection(w http.ResponseWriter, r *http.Request, params SyncTestConnectionParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all users
// (GET /users)
func (_ Unimplemented) ListUsers(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create a new user
// (POST /users)
func (_ Unimplemented) CreateUser(w http.ResponseWriter, r *http.Request) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete user
// (DELETE /users/{userId})
func (_ Unimplemented) DeleteUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get user by ID
// (GET /users/{userId})
func (_ Unimplemented) GetUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update user
// (PATCH /users/{userId})
func (_ Unimplemented) UpdateUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Reset user's password
// (POST /users/{userId}/reset-password)
func (_ Unimplemented) ResetUserPassword(w http.ResponseWriter, r *http.Request, userId UserId) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all webhooks
// (GET /webhooks)
func (_ Unimplemented) ListWebhooks(w http.ResponseWriter, r *http.Request, params ListWebhooksParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Trigger DAG execution via webhook
// (POST /webhooks/{fileName})
func (_ Unimplemented) TriggerWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TriggerWebhookParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List distributed workers
// (GET /workers)
func (_ Unimplemented) GetWorkers(w http.ResponseWriter, r *http.Request, params GetWorkersParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// List all workspaces
// (GET /workspaces)
func (_ Unimplemented) ListWorkspaces(w http.ResponseWriter, r *http.Request, params ListWorkspacesParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Create a workspace
// (POST /workspaces)
func (_ Unimplemented) CreateWorkspace(w http.ResponseWriter, r *http.Request, params CreateWorkspaceParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Delete a workspace
// (DELETE /workspaces/{workspaceId})
func (_ Unimplemented) DeleteWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params DeleteWorkspaceParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Get workspace by ID
// (GET /workspaces/{workspaceId})
func (_ Unimplemented) GetWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params GetWorkspaceParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// Update a workspace
// (PATCH /workspaces/{workspaceId})
func (_ Unimplemented) UpdateWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params UpdateWorkspaceParams) {
	w.WriteHeader(http.StatusNotImplemented)
}

// ServerInterfaceWrapper converts contexts to parameters.
type ServerInterfaceWrapper struct {
	Handler            ServerInterface
	HandlerMiddlewares []MiddlewareFunc
	ErrorHandlerFunc   func(w http.ResponseWriter, r *http.Request, err error)
}

type MiddlewareFunc func(http.Handler) http.Handler

// ListAgentSessions operation middleware
func (siw *ServerInterfaceWrapper) ListAgentSessions(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAgentSessionsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "paginationMode" -------------

	err = runtime.BindQueryParameter("form", true, false, "paginationMode", r.URL.Query(), &params.PaginationMode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "paginationMode", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "page" -------------

	err = runtime.BindQueryParameter("form", true, false, "page", r.URL.Query(), &params.Page)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "page", Err: err})
		return
	}

	// ------------- Optional query parameter "perPage" -------------

	err = runtime.BindQueryParameter("form", true, false, "perPage", r.URL.Query(), &params.PerPage)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "perPage", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAgentSessions(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateAgentSession operation middleware
func (siw *ServerInterfaceWrapper) CreateAgentSession(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateAgentSessionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateAgentSession(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAgentSession operation middleware
func (siw *ServerInterfaceWrapper) GetAgentSession(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "sessionId" -------------
	var sessionId AgentSessionId

	err = runtime.BindStyledParameterWithOptions("simple", "sessionId", chi.URLParam(r, "sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sessionId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAgentSessionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAgentSession(w, r, sessionId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CancelAgentSession operation middleware
func (siw *ServerInterfaceWrapper) CancelAgentSession(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "sessionId" -------------
	var sessionId AgentSessionId

	err = runtime.BindStyledParameterWithOptions("simple", "sessionId", chi.URLParam(r, "sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sessionId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CancelAgentSessionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CancelAgentSession(w, r, sessionId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ChatAgentSession operation middleware
func (siw *ServerInterfaceWrapper) ChatAgentSession(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "sessionId" -------------
	var sessionId AgentSessionId

	err = runtime.BindStyledParameterWithOptions("simple", "sessionId", chi.URLParam(r, "sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sessionId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ChatAgentSessionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ChatAgentSession(w, r, sessionId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RespondAgentSession operation middleware
func (siw *ServerInterfaceWrapper) RespondAgentSession(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "sessionId" -------------
	var sessionId AgentSessionId

	err = runtime.BindStyledParameterWithOptions("simple", "sessionId", chi.URLParam(r, "sessionId"), &sessionId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sessionId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RespondAgentSessionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RespondAgentSession(w, r, sessionId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAPIKeys operation middleware
func (siw *ServerInterfaceWrapper) ListAPIKeys(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAPIKeys(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateAPIKey operation middleware
func (siw *ServerInterfaceWrapper) CreateAPIKey(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateAPIKey(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteAPIKey operation middleware
func (siw *ServerInterfaceWrapper) DeleteAPIKey(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "keyId" -------------
	var keyId APIKeyId

	err = runtime.BindStyledParameterWithOptions("simple", "keyId", chi.URLParam(r, "keyId"), &keyId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "keyId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteAPIKey(w, r, keyId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAPIKey operation middleware
func (siw *ServerInterfaceWrapper) GetAPIKey(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "keyId" -------------
	var keyId APIKeyId

	err = runtime.BindStyledParameterWithOptions("simple", "keyId", chi.URLParam(r, "keyId"), &keyId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "keyId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAPIKey(w, r, keyId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAPIKey operation middleware
func (siw *ServerInterfaceWrapper) UpdateAPIKey(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "keyId" -------------
	var keyId APIKeyId

	err = runtime.BindStyledParameterWithOptions("simple", "keyId", chi.URLParam(r, "keyId"), &keyId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "keyId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAPIKey(w, r, keyId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAuditLogs operation middleware
func (siw *ServerInterfaceWrapper) ListAuditLogs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAuditLogsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "category" -------------

	err = runtime.BindQueryParameter("form", true, false, "category", r.URL.Query(), &params.Category)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "category", Err: err})
		return
	}

	// ------------- Optional query parameter "userId" -------------

	err = runtime.BindQueryParameter("form", true, false, "userId", r.URL.Query(), &params.UserId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	// ------------- Optional query parameter "startTime" -------------

	err = runtime.BindQueryParameter("form", true, false, "startTime", r.URL.Query(), &params.StartTime)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "startTime", Err: err})
		return
	}

	// ------------- Optional query parameter "endTime" -------------

	err = runtime.BindQueryParameter("form", true, false, "endTime", r.URL.Query(), &params.EndTime)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "endTime", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAuditLogs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ChangePassword operation middleware
func (siw *ServerInterfaceWrapper) ChangePassword(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ChangePassword(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// Login operation middleware
func (siw *ServerInterfaceWrapper) Login(w http.ResponseWriter, r *http.Request) {

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.Login(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetCurrentUser operation middleware
func (siw *ServerInterfaceWrapper) GetCurrentUser(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetCurrentUser(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// Setup operation middleware
func (siw *ServerInterfaceWrapper) Setup(w http.ResponseWriter, r *http.Request) {

	var err error

	// Parameter object where we will unmarshal all parameters from the context
	var params SetupParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.Setup(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListDAGRuns operation middleware
func (siw *ServerInterfaceWrapper) ListDAGRuns(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListDAGRunsParams

	// ------------- Optional query parameter "status" -------------

	err = runtime.BindQueryParameter("form", true, false, "status", r.URL.Query(), &params.Status)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "status", Err: err})
		return
	}

	// ------------- Optional query parameter "fromDate" -------------

	err = runtime.BindQueryParameter("form", true, false, "fromDate", r.URL.Query(), &params.FromDate)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fromDate", Err: err})
		return
	}

	// ------------- Optional query parameter "toDate" -------------

	err = runtime.BindQueryParameter("form", true, false, "toDate", r.URL.Query(), &params.ToDate)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "toDate", Err: err})
		return
	}

	// ------------- Optional query parameter "dagRunId" -------------

	err = runtime.BindQueryParameter("form", true, false, "dagRunId", r.URL.Query(), &params.DagRunId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Optional query parameter "name" -------------

	err = runtime.BindQueryParameter("form", true, false, "name", r.URL.Query(), &params.Name)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Optional query parameter "labels" -------------

	err = runtime.BindQueryParameter("form", true, false, "labels", r.URL.Query(), &params.Labels)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "labels", Err: err})
		return
	}

	// ------------- Optional query parameter "tags" -------------

	err = runtime.BindQueryParameter("form", true, false, "tags", r.URL.Query(), &params.Tags)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tags", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListDAGRuns(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ExecuteDAGRunFromSpec operation middleware
func (siw *ServerInterfaceWrapper) ExecuteDAGRunFromSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ExecuteDAGRunFromSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ExecuteDAGRunFromSpec(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// EnqueueDAGRunFromSpec operation middleware
func (siw *ServerInterfaceWrapper) EnqueueDAGRunFromSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params EnqueueDAGRunFromSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.EnqueueDAGRunFromSpec(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListDAGRunsByName operation middleware
func (siw *ServerInterfaceWrapper) ListDAGRunsByName(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGRunName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListDAGRunsByNameParams

	// ------------- Optional query parameter "status" -------------

	err = runtime.BindQueryParameter("form", true, false, "status", r.URL.Query(), &params.Status)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "status", Err: err})
		return
	}

	// ------------- Optional query parameter "fromDate" -------------

	err = runtime.BindQueryParameter("form", true, false, "fromDate", r.URL.Query(), &params.FromDate)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fromDate", Err: err})
		return
	}

	// ------------- Optional query parameter "toDate" -------------

	err = runtime.BindQueryParameter("form", true, false, "toDate", r.URL.Query(), &params.ToDate)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "toDate", Err: err})
		return
	}

	// ------------- Optional query parameter "dagRunId" -------------

	err = runtime.BindQueryParameter("form", true, false, "dagRunId", r.URL.Query(), &params.DagRunId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListDAGRunsByName(w, r, name, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDAGRun operation middleware
func (siw *ServerInterfaceWrapper) DeleteDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunConcreteId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunDetails operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunDetails(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunDetailsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunDetails(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunArtifacts operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunArtifacts(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunArtifactsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "recursive" -------------

	err = runtime.BindQueryParameter("form", true, false, "recursive", r.URL.Query(), &params.Recursive)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "recursive", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunArtifacts(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadDAGRunArtifact operation middleware
func (siw *ServerInterfaceWrapper) DownloadDAGRunArtifact(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadDAGRunArtifactParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadDAGRunArtifact(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunArtifactPreview operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunArtifactPreviewParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunArtifactPreview(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DequeueDAGRun operation middleware
func (siw *ServerInterfaceWrapper) DequeueDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DequeueDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DequeueDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// EditRetryDAGRun operation middleware
func (siw *ServerInterfaceWrapper) EditRetryDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params EditRetryDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.EditRetryDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// PreviewEditRetryDAGRun operation middleware
func (siw *ServerInterfaceWrapper) PreviewEditRetryDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params PreviewEditRetryDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.PreviewEditRetryDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunLog operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "tail" -------------

	err = runtime.BindQueryParameter("form", true, false, "tail", r.URL.Query(), &params.Tail)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tail", Err: err})
		return
	}

	// ------------- Optional query parameter "head" -------------

	err = runtime.BindQueryParameter("form", true, false, "head", r.URL.Query(), &params.Head)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "head", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunLog(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadDAGRunLog operation middleware
func (siw *ServerInterfaceWrapper) DownloadDAGRunLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadDAGRunLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadDAGRunLog(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunOutputs operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunOutputs(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunOutputsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunOutputs(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RescheduleDAGRun operation middleware
func (siw *ServerInterfaceWrapper) RescheduleDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RescheduleDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RescheduleDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RetryDAGRun operation middleware
func (siw *ServerInterfaceWrapper) RetryDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RetryDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RetryDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunSpec operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunSpec(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ApproveDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) ApproveDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ApproveDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ApproveDAGRunStep(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunStepLog operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunStepLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunStepLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "tail" -------------

	err = runtime.BindQueryParameter("form", true, false, "tail", r.URL.Query(), &params.Tail)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tail", Err: err})
		return
	}

	// ------------- Optional query parameter "head" -------------

	err = runtime.BindQueryParameter("form", true, false, "head", r.URL.Query(), &params.Head)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "head", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "stream" -------------

	err = runtime.BindQueryParameter("form", true, false, "stream", r.URL.Query(), &params.Stream)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stream", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunStepLog(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadDAGRunStepLog operation middleware
func (siw *ServerInterfaceWrapper) DownloadDAGRunStepLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadDAGRunStepLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "stream" -------------

	err = runtime.BindQueryParameter("form", true, false, "stream", r.URL.Query(), &params.Stream)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stream", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadDAGRunStepLog(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGRunStepMessages operation middleware
func (siw *ServerInterfaceWrapper) GetDAGRunStepMessages(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGRunStepMessagesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGRunStepMessages(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// PushBackDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) PushBackDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params PushBackDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.PushBackDAGRunStep(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RejectDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) RejectDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RejectDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RejectDAGRunStep(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDAGRunStepStatus operation middleware
func (siw *ServerInterfaceWrapper) UpdateDAGRunStepStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDAGRunStepStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDAGRunStepStatus(w, r, name, dagRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// TerminateDAGRun operation middleware
func (siw *ServerInterfaceWrapper) TerminateDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params TerminateDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.TerminateDAGRun(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRuns operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRuns(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "parentSubDAGRunId" -------------

	err = runtime.BindQueryParameter("form", true, false, "parentSubDAGRunId", r.URL.Query(), &params.ParentSubDAGRunId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "parentSubDAGRunId", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRuns(w, r, name, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunDetails operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunDetails(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunDetailsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunDetails(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunArtifacts operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunArtifacts(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunArtifactsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "recursive" -------------

	err = runtime.BindQueryParameter("form", true, false, "recursive", r.URL.Query(), &params.Recursive)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "recursive", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunArtifacts(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadSubDAGRunArtifact operation middleware
func (siw *ServerInterfaceWrapper) DownloadSubDAGRunArtifact(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadSubDAGRunArtifactParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadSubDAGRunArtifact(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunArtifactPreview operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunArtifactPreviewParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunArtifactPreview(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunLog operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "tail" -------------

	err = runtime.BindQueryParameter("form", true, false, "tail", r.URL.Query(), &params.Tail)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tail", Err: err})
		return
	}

	// ------------- Optional query parameter "head" -------------

	err = runtime.BindQueryParameter("form", true, false, "head", r.URL.Query(), &params.Head)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "head", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunLog(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadSubDAGRunLog operation middleware
func (siw *ServerInterfaceWrapper) DownloadSubDAGRunLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadSubDAGRunLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadSubDAGRunLog(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunSpec operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunSpec(w, r, name, dagRunId, subDAGRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ApproveSubDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) ApproveSubDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ApproveSubDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ApproveSubDAGRunStep(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunStepLog operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunStepLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunStepLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "tail" -------------

	err = runtime.BindQueryParameter("form", true, false, "tail", r.URL.Query(), &params.Tail)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tail", Err: err})
		return
	}

	// ------------- Optional query parameter "head" -------------

	err = runtime.BindQueryParameter("form", true, false, "head", r.URL.Query(), &params.Head)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "head", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "stream" -------------

	err = runtime.BindQueryParameter("form", true, false, "stream", r.URL.Query(), &params.Stream)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stream", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunStepLog(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DownloadSubDAGRunStepLog operation middleware
func (siw *ServerInterfaceWrapper) DownloadSubDAGRunStepLog(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DownloadSubDAGRunStepLogParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "stream" -------------

	err = runtime.BindQueryParameter("form", true, false, "stream", r.URL.Query(), &params.Stream)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stream", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DownloadSubDAGRunStepLog(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSubDAGRunStepMessages operation middleware
func (siw *ServerInterfaceWrapper) GetSubDAGRunStepMessages(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSubDAGRunStepMessagesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSubDAGRunStepMessages(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// PushBackSubDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) PushBackSubDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params PushBackSubDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.PushBackSubDAGRunStep(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RejectSubDAGRunStep operation middleware
func (siw *ServerInterfaceWrapper) RejectSubDAGRunStep(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RejectSubDAGRunStepParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RejectSubDAGRunStep(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateSubDAGRunStepStatus operation middleware
func (siw *ServerInterfaceWrapper) UpdateSubDAGRunStepStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Path parameter "subDAGRunId" -------------
	var subDAGRunId string

	err = runtime.BindStyledParameterWithOptions("simple", "subDAGRunId", chi.URLParam(r, "subDAGRunId"), &subDAGRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "subDAGRunId", Err: err})
		return
	}

	// ------------- Path parameter "stepName" -------------
	var stepName StepName

	err = runtime.BindStyledParameterWithOptions("simple", "stepName", chi.URLParam(r, "stepName"), &stepName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "stepName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateSubDAGRunStepStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateSubDAGRunStepStatus(w, r, name, dagRunId, subDAGRunId, stepName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListDAGs operation middleware
func (siw *ServerInterfaceWrapper) ListDAGs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListDAGsParams

	// ------------- Optional query parameter "page" -------------

	err = runtime.BindQueryParameter("form", true, false, "page", r.URL.Query(), &params.Page)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "page", Err: err})
		return
	}

	// ------------- Optional query parameter "perPage" -------------

	err = runtime.BindQueryParameter("form", true, false, "perPage", r.URL.Query(), &params.PerPage)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "perPage", Err: err})
		return
	}

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Optional query parameter "name" -------------

	err = runtime.BindQueryParameter("form", true, false, "name", r.URL.Query(), &params.Name)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	// ------------- Optional query parameter "labels" -------------

	err = runtime.BindQueryParameter("form", true, false, "labels", r.URL.Query(), &params.Labels)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "labels", Err: err})
		return
	}

	// ------------- Optional query parameter "tags" -------------

	err = runtime.BindQueryParameter("form", true, false, "tags", r.URL.Query(), &params.Tags)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "tags", Err: err})
		return
	}

	// ------------- Optional query parameter "sort" -------------

	err = runtime.BindQueryParameter("form", true, false, "sort", r.URL.Query(), &params.Sort)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sort", Err: err})
		return
	}

	// ------------- Optional query parameter "order" -------------

	err = runtime.BindQueryParameter("form", true, false, "order", r.URL.Query(), &params.Order)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "order", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListDAGs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateNewDAG operation middleware
func (siw *ServerInterfaceWrapper) CreateNewDAG(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateNewDAGParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateNewDAG(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAllDAGLabels operation middleware
func (siw *ServerInterfaceWrapper) GetAllDAGLabels(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAllDAGLabelsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAllDAGLabels(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDAGs operation middleware
func (siw *ServerInterfaceWrapper) SearchDAGs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDAGsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDAGs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAllDAGTags operation middleware
func (siw *ServerInterfaceWrapper) GetAllDAGTags(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAllDAGTagsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAllDAGTags(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ValidateDAGSpec operation middleware
func (siw *ServerInterfaceWrapper) ValidateDAGSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ValidateDAGSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ValidateDAGSpec(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDAG operation middleware
func (siw *ServerInterfaceWrapper) DeleteDAG(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDAGParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDAG(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGDetails operation middleware
func (siw *ServerInterfaceWrapper) GetDAGDetails(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGDetailsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGDetails(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGDAGRunHistory operation middleware
func (siw *ServerInterfaceWrapper) GetDAGDAGRunHistory(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGDAGRunHistoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGDAGRunHistory(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGDAGRunDetails operation middleware
func (siw *ServerInterfaceWrapper) GetDAGDAGRunDetails(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	// ------------- Path parameter "dagRunId" -------------
	var dagRunId DAGRunId

	err = runtime.BindStyledParameterWithOptions("simple", "dagRunId", chi.URLParam(r, "dagRunId"), &dagRunId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGDAGRunDetailsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGDAGRunDetails(w, r, fileName, dagRunId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// EnqueueDAGDAGRun operation middleware
func (siw *ServerInterfaceWrapper) EnqueueDAGDAGRun(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params EnqueueDAGDAGRunParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.EnqueueDAGDAGRun(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDAGIncidents operation middleware
func (siw *ServerInterfaceWrapper) DeleteDAGIncidents(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDAGIncidentsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDAGIncidents(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGIncidents operation middleware
func (siw *ServerInterfaceWrapper) GetDAGIncidents(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGIncidentsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGIncidents(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDAGIncidents operation middleware
func (siw *ServerInterfaceWrapper) UpdateDAGIncidents(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDAGIncidentsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDAGIncidents(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDAGNotifications operation middleware
func (siw *ServerInterfaceWrapper) DeleteDAGNotifications(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDAGNotificationsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDAGNotifications(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGNotifications operation middleware
func (siw *ServerInterfaceWrapper) GetDAGNotifications(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGNotificationsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGNotifications(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDAGNotifications operation middleware
func (siw *ServerInterfaceWrapper) UpdateDAGNotifications(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDAGNotificationsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDAGNotifications(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// TestDAGNotifications operation middleware
func (siw *ServerInterfaceWrapper) TestDAGNotifications(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params TestDAGNotificationsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.TestDAGNotifications(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RenameDAG operation middleware
func (siw *ServerInterfaceWrapper) RenameDAG(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RenameDAGParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RenameDAG(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGSpec operation middleware
func (siw *ServerInterfaceWrapper) GetDAGSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGSpec(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDAGSpec operation middleware
func (siw *ServerInterfaceWrapper) UpdateDAGSpec(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDAGSpecParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDAGSpec(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ExecuteDAG operation middleware
func (siw *ServerInterfaceWrapper) ExecuteDAG(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ExecuteDAGParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ExecuteDAG(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ExecuteDAGSync operation middleware
func (siw *ServerInterfaceWrapper) ExecuteDAGSync(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ExecuteDAGSyncParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ExecuteDAGSync(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// StopAllDAGRuns operation middleware
func (siw *ServerInterfaceWrapper) StopAllDAGRuns(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params StopAllDAGRunsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.StopAllDAGRuns(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDAGSuspensionState operation middleware
func (siw *ServerInterfaceWrapper) UpdateDAGSuspensionState(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDAGSuspensionStateParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDAGSuspensionState(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDAGWebhook operation middleware
func (siw *ServerInterfaceWrapper) DeleteDAGWebhook(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDAGWebhookParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDAGWebhook(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDAGWebhook operation middleware
func (siw *ServerInterfaceWrapper) GetDAGWebhook(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDAGWebhookParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDAGWebhook(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateDAGWebhook operation middleware
func (siw *ServerInterfaceWrapper) CreateDAGWebhook(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateDAGWebhookParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateDAGWebhook(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ConfigureDAGWebhookHMAC operation middleware
func (siw *ServerInterfaceWrapper) ConfigureDAGWebhookHMAC(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ConfigureDAGWebhookHMACParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ConfigureDAGWebhookHMAC(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DisableDAGWebhookHMAC operation middleware
func (siw *ServerInterfaceWrapper) DisableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DisableDAGWebhookHMACParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DisableDAGWebhookHMAC(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// EnableDAGWebhookHMAC operation middleware
func (siw *ServerInterfaceWrapper) EnableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params EnableDAGWebhookHMACParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.EnableDAGWebhookHMAC(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RegenerateDAGWebhookHMACSecret operation middleware
func (siw *ServerInterfaceWrapper) RegenerateDAGWebhookHMACSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RegenerateDAGWebhookHMACSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RegenerateDAGWebhookHMACSecret(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RegenerateDAGWebhookToken operation middleware
func (siw *ServerInterfaceWrapper) RegenerateDAGWebhookToken(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RegenerateDAGWebhookTokenParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RegenerateDAGWebhookToken(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ToggleDAGWebhook operation middleware
func (siw *ServerInterfaceWrapper) ToggleDAGWebhook(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ToggleDAGWebhookParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ToggleDAGWebhook(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListDocs operation middleware
func (siw *ServerInterfaceWrapper) ListDocs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListDocsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Optional query parameter "page" -------------

	err = runtime.BindQueryParameter("form", true, false, "page", r.URL.Query(), &params.Page)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "page", Err: err})
		return
	}

	// ------------- Optional query parameter "perPage" -------------

	err = runtime.BindQueryParameter("form", true, false, "perPage", r.URL.Query(), &params.PerPage)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "perPage", Err: err})
		return
	}

	// ------------- Optional query parameter "flat" -------------

	err = runtime.BindQueryParameter("form", true, false, "flat", r.URL.Query(), &params.Flat)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "flat", Err: err})
		return
	}

	// ------------- Optional query parameter "sort" -------------

	err = runtime.BindQueryParameter("form", true, false, "sort", r.URL.Query(), &params.Sort)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sort", Err: err})
		return
	}

	// ------------- Optional query parameter "order" -------------

	err = runtime.BindQueryParameter("form", true, false, "order", r.URL.Query(), &params.Order)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "order", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListDocs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateDoc operation middleware
func (siw *ServerInterfaceWrapper) CreateDoc(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateDocParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateDoc(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDocBatch operation middleware
func (siw *ServerInterfaceWrapper) DeleteDocBatch(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDocBatchParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDocBatch(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteDoc operation middleware
func (siw *ServerInterfaceWrapper) DeleteDoc(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteDocParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteDoc(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetDoc operation middleware
func (siw *ServerInterfaceWrapper) GetDoc(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetDocParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetDoc(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateDoc operation middleware
func (siw *ServerInterfaceWrapper) UpdateDoc(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateDocParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateDoc(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// RenameDoc operation middleware
func (siw *ServerInterfaceWrapper) RenameDoc(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params RenameDocParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.RenameDoc(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDocs operation middleware
func (siw *ServerInterfaceWrapper) SearchDocs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDocsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDocs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListEventLogs operation middleware
func (siw *ServerInterfaceWrapper) ListEventLogs(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListEventLogsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "kind" -------------

	err = runtime.BindQueryParameter("form", true, false, "kind", r.URL.Query(), &params.Kind)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "kind", Err: err})
		return
	}

	// ------------- Optional query parameter "type" -------------

	err = runtime.BindQueryParameter("form", true, false, "type", r.URL.Query(), &params.Type)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "type", Err: err})
		return
	}

	// ------------- Optional query parameter "dagName" -------------

	err = runtime.BindQueryParameter("form", true, false, "dagName", r.URL.Query(), &params.DagName)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagName", Err: err})
		return
	}

	// ------------- Optional query parameter "dagRunId" -------------

	err = runtime.BindQueryParameter("form", true, false, "dagRunId", r.URL.Query(), &params.DagRunId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagRunId", Err: err})
		return
	}

	// ------------- Optional query parameter "attemptId" -------------

	err = runtime.BindQueryParameter("form", true, false, "attemptId", r.URL.Query(), &params.AttemptId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "attemptId", Err: err})
		return
	}

	// ------------- Optional query parameter "sessionId" -------------

	err = runtime.BindQueryParameter("form", true, false, "sessionId", r.URL.Query(), &params.SessionId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "sessionId", Err: err})
		return
	}

	// ------------- Optional query parameter "userId" -------------

	err = runtime.BindQueryParameter("form", true, false, "userId", r.URL.Query(), &params.UserId)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	// ------------- Optional query parameter "model" -------------

	err = runtime.BindQueryParameter("form", true, false, "model", r.URL.Query(), &params.Model)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "model", Err: err})
		return
	}

	// ------------- Optional query parameter "startTime" -------------

	err = runtime.BindQueryParameter("form", true, false, "startTime", r.URL.Query(), &params.StartTime)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "startTime", Err: err})
		return
	}

	// ------------- Optional query parameter "endTime" -------------

	err = runtime.BindQueryParameter("form", true, false, "endTime", r.URL.Query(), &params.EndTime)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "endTime", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "paginationMode" -------------

	err = runtime.BindQueryParameter("form", true, false, "paginationMode", r.URL.Query(), &params.PaginationMode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "paginationMode", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListEventLogs(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetHealthStatus operation middleware
func (siw *ServerInterfaceWrapper) GetHealthStatus(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetHealthStatus(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListIncidentPolicies operation middleware
func (siw *ServerInterfaceWrapper) ListIncidentPolicies(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListIncidentPoliciesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListIncidentPolicies(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetGlobalIncidentPolicies operation middleware
func (siw *ServerInterfaceWrapper) GetGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetGlobalIncidentPoliciesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetGlobalIncidentPolicies(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateGlobalIncidentPolicies operation middleware
func (siw *ServerInterfaceWrapper) UpdateGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateGlobalIncidentPoliciesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateGlobalIncidentPolicies(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetWorkspaceIncidentPolicies operation middleware
func (siw *ServerInterfaceWrapper) GetWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetWorkspaceIncidentPoliciesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetWorkspaceIncidentPolicies(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateWorkspaceIncidentPolicies operation middleware
func (siw *ServerInterfaceWrapper) UpdateWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateWorkspaceIncidentPoliciesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateWorkspaceIncidentPolicies(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListIncidentProviders operation middleware
func (siw *ServerInterfaceWrapper) ListIncidentProviders(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListIncidentProvidersParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListIncidentProviders(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateIncidentProvider operation middleware
func (siw *ServerInterfaceWrapper) CreateIncidentProvider(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateIncidentProviderParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateIncidentProvider(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteIncidentProvider operation middleware
func (siw *ServerInterfaceWrapper) DeleteIncidentProvider(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteIncidentProviderParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteIncidentProvider(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetIncidentProvider operation middleware
func (siw *ServerInterfaceWrapper) GetIncidentProvider(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetIncidentProviderParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetIncidentProvider(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateIncidentProvider operation middleware
func (siw *ServerInterfaceWrapper) UpdateIncidentProvider(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateIncidentProviderParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateIncidentProvider(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// TestIncidentProvider operation middleware
func (siw *ServerInterfaceWrapper) TestIncidentProvider(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params TestIncidentProviderParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.TestIncidentProvider(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ActivateLicense operation middleware
func (siw *ServerInterfaceWrapper) ActivateLicense(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ActivateLicenseParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ActivateLicense(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeactivateLicense operation middleware
func (siw *ServerInterfaceWrapper) DeactivateLicense(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeactivateLicenseParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeactivateLicense(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetMetrics operation middleware
func (siw *ServerInterfaceWrapper) GetMetrics(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetMetrics(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListNotificationChannels operation middleware
func (siw *ServerInterfaceWrapper) ListNotificationChannels(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListNotificationChannelsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListNotificationChannels(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateNotificationChannel operation middleware
func (siw *ServerInterfaceWrapper) CreateNotificationChannel(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateNotificationChannelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateNotificationChannel(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteNotificationChannel operation middleware
func (siw *ServerInterfaceWrapper) DeleteNotificationChannel(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "channelId" -------------
	var channelId string

	err = runtime.BindStyledParameterWithOptions("simple", "channelId", chi.URLParam(r, "channelId"), &channelId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "channelId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteNotificationChannelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteNotificationChannel(w, r, channelId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetNotificationChannel operation middleware
func (siw *ServerInterfaceWrapper) GetNotificationChannel(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "channelId" -------------
	var channelId string

	err = runtime.BindStyledParameterWithOptions("simple", "channelId", chi.URLParam(r, "channelId"), &channelId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "channelId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetNotificationChannelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetNotificationChannel(w, r, channelId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateNotificationChannel operation middleware
func (siw *ServerInterfaceWrapper) UpdateNotificationChannel(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "channelId" -------------
	var channelId string

	err = runtime.BindStyledParameterWithOptions("simple", "channelId", chi.URLParam(r, "channelId"), &channelId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "channelId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateNotificationChannelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateNotificationChannel(w, r, channelId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListNotificationRoutes operation middleware
func (siw *ServerInterfaceWrapper) ListNotificationRoutes(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListNotificationRoutesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListNotificationRoutes(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetGlobalNotificationRoutes operation middleware
func (siw *ServerInterfaceWrapper) GetGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetGlobalNotificationRoutesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetGlobalNotificationRoutes(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateGlobalNotificationRoutes operation middleware
func (siw *ServerInterfaceWrapper) UpdateGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateGlobalNotificationRoutesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateGlobalNotificationRoutes(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetWorkspaceNotificationRoutes operation middleware
func (siw *ServerInterfaceWrapper) GetWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetWorkspaceNotificationRoutesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetWorkspaceNotificationRoutes(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateWorkspaceNotificationRoutes operation middleware
func (siw *ServerInterfaceWrapper) UpdateWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateWorkspaceNotificationRoutesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateWorkspaceNotificationRoutes(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetNotificationSettings operation middleware
func (siw *ServerInterfaceWrapper) GetNotificationSettings(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetNotificationSettingsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetNotificationSettings(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateNotificationSettings operation middleware
func (siw *ServerInterfaceWrapper) UpdateNotificationSettings(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateNotificationSettingsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateNotificationSettings(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetOpenapiJson operation middleware
func (siw *ServerInterfaceWrapper) GetOpenapiJson(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetOpenapiJson(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListQueues operation middleware
func (siw *ServerInterfaceWrapper) ListQueues(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListQueuesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListQueues(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetQueue operation middleware
func (siw *ServerInterfaceWrapper) GetQueue(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name string

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetQueueParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetQueue(w, r, name, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListQueueItems operation middleware
func (siw *ServerInterfaceWrapper) ListQueueItems(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "name" -------------
	var name string

	err = runtime.BindStyledParameterWithOptions("simple", "name", chi.URLParam(r, "name"), &name, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "name", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListQueueItemsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListQueueItems(w, r, name, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListRemoteNodes operation middleware
func (siw *ServerInterfaceWrapper) ListRemoteNodes(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListRemoteNodesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListRemoteNodes(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateRemoteNode operation middleware
func (siw *ServerInterfaceWrapper) CreateRemoteNode(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateRemoteNodeParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateRemoteNode(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteRemoteNode operation middleware
func (siw *ServerInterfaceWrapper) DeleteRemoteNode(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "remoteNodeId" -------------
	var remoteNodeId RemoteNodeId

	err = runtime.BindStyledParameterWithOptions("simple", "remoteNodeId", chi.URLParam(r, "remoteNodeId"), &remoteNodeId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNodeId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteRemoteNodeParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteRemoteNode(w, r, remoteNodeId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetRemoteNode operation middleware
func (siw *ServerInterfaceWrapper) GetRemoteNode(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "remoteNodeId" -------------
	var remoteNodeId RemoteNodeId

	err = runtime.BindStyledParameterWithOptions("simple", "remoteNodeId", chi.URLParam(r, "remoteNodeId"), &remoteNodeId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNodeId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetRemoteNodeParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetRemoteNode(w, r, remoteNodeId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateRemoteNode operation middleware
func (siw *ServerInterfaceWrapper) UpdateRemoteNode(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "remoteNodeId" -------------
	var remoteNodeId RemoteNodeId

	err = runtime.BindStyledParameterWithOptions("simple", "remoteNodeId", chi.URLParam(r, "remoteNodeId"), &remoteNodeId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNodeId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateRemoteNodeParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateRemoteNode(w, r, remoteNodeId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// TestRemoteNodeConnection operation middleware
func (siw *ServerInterfaceWrapper) TestRemoteNodeConnection(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "remoteNodeId" -------------
	var remoteNodeId RemoteNodeId

	err = runtime.BindStyledParameterWithOptions("simple", "remoteNodeId", chi.URLParam(r, "remoteNodeId"), &remoteNodeId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNodeId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params TestRemoteNodeConnectionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.TestRemoteNodeConnection(w, r, remoteNodeId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDAGFeed operation middleware
func (siw *ServerInterfaceWrapper) SearchDAGFeed(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDAGFeedParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	// ------------- Optional query parameter "labels" -------------

	err = runtime.BindQueryParameter("form", true, false, "labels", r.URL.Query(), &params.Labels)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "labels", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDAGFeed(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDagMatches operation middleware
func (siw *ServerInterfaceWrapper) SearchDagMatches(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDagMatchesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	// ------------- Optional query parameter "labels" -------------

	err = runtime.BindQueryParameter("form", true, false, "labels", r.URL.Query(), &params.Labels)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "labels", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDagMatches(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDocFeed operation middleware
func (siw *ServerInterfaceWrapper) SearchDocFeed(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDocFeedParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDocFeed(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SearchDocMatches operation middleware
func (siw *ServerInterfaceWrapper) SearchDocMatches(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SearchDocMatchesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Required query parameter "path" -------------

	if paramValue := r.URL.Query().Get("path"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "path"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "path", r.URL.Query(), &params.Path)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "path", Err: err})
		return
	}

	// ------------- Required query parameter "q" -------------

	if paramValue := r.URL.Query().Get("q"); paramValue != "" {

	} else {
		siw.ErrorHandlerFunc(w, r, &RequiredParamError{ParamName: "q"})
		return
	}

	err = runtime.BindQueryParameter("form", true, true, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	// ------------- Optional query parameter "cursor" -------------

	err = runtime.BindQueryParameter("form", true, false, "cursor", r.URL.Query(), &params.Cursor)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "cursor", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SearchDocMatches(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListSecrets operation middleware
func (siw *ServerInterfaceWrapper) ListSecrets(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListSecretsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "workspace" -------------

	err = runtime.BindQueryParameter("form", true, false, "workspace", r.URL.Query(), &params.Workspace)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspace", Err: err})
		return
	}

	// ------------- Optional query parameter "limit" -------------

	err = runtime.BindQueryParameter("form", true, false, "limit", r.URL.Query(), &params.Limit)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "limit", Err: err})
		return
	}

	// ------------- Optional query parameter "offset" -------------

	err = runtime.BindQueryParameter("form", true, false, "offset", r.URL.Query(), &params.Offset)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "offset", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListSecrets(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateSecret operation middleware
func (siw *ServerInterfaceWrapper) CreateSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateSecret(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteSecret operation middleware
func (siw *ServerInterfaceWrapper) DeleteSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteSecret(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSecret operation middleware
func (siw *ServerInterfaceWrapper) GetSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSecret(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateSecret operation middleware
func (siw *ServerInterfaceWrapper) UpdateSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateSecret(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DisableSecret operation middleware
func (siw *ServerInterfaceWrapper) DisableSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DisableSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DisableSecret(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// EnableSecret operation middleware
func (siw *ServerInterfaceWrapper) EnableSecret(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params EnableSecretParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.EnableSecret(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// WriteSecretVersion operation middleware
func (siw *ServerInterfaceWrapper) WriteSecretVersion(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "secretId" -------------
	var secretId string

	err = runtime.BindStyledParameterWithOptions("simple", "secretId", chi.URLParam(r, "secretId"), &secretId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "secretId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params WriteSecretVersionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.WriteSecretVersion(w, r, secretId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetCoordinatorStatus operation middleware
func (siw *ServerInterfaceWrapper) GetCoordinatorStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetCoordinatorStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetCoordinatorStatus(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetResourceHistory operation middleware
func (siw *ServerInterfaceWrapper) GetResourceHistory(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetResourceHistoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "duration" -------------

	err = runtime.BindQueryParameter("form", true, false, "duration", r.URL.Query(), &params.Duration)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "duration", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetResourceHistory(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSchedulerStatus operation middleware
func (siw *ServerInterfaceWrapper) GetSchedulerStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSchedulerStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSchedulerStatus(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetTunnelStatus operation middleware
func (siw *ServerInterfaceWrapper) GetTunnelStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetTunnelStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetTunnelStatus(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAgentConfig operation middleware
func (siw *ServerInterfaceWrapper) GetAgentConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAgentConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAgentConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAgentConfig operation middleware
func (siw *ServerInterfaceWrapper) UpdateAgentConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateAgentConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAgentConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAgentAuthProviders operation middleware
func (siw *ServerInterfaceWrapper) ListAgentAuthProviders(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAgentAuthProvidersParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAgentAuthProviders(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DisconnectAgentAuthProviderLogin operation middleware
func (siw *ServerInterfaceWrapper) DisconnectAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DisconnectAgentAuthProviderLoginParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DisconnectAgentAuthProviderLogin(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// StartAgentAuthProviderLogin operation middleware
func (siw *ServerInterfaceWrapper) StartAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params StartAgentAuthProviderLoginParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.StartAgentAuthProviderLogin(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CompleteAgentAuthProviderLogin operation middleware
func (siw *ServerInterfaceWrapper) CompleteAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "providerId" -------------
	var providerId string

	err = runtime.BindStyledParameterWithOptions("simple", "providerId", chi.URLParam(r, "providerId"), &providerId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "providerId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CompleteAgentAuthProviderLoginParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CompleteAgentAuthProviderLogin(w, r, providerId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SetDefaultAgentModel operation middleware
func (siw *ServerInterfaceWrapper) SetDefaultAgentModel(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SetDefaultAgentModelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SetDefaultAgentModel(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteAgentMemory operation middleware
func (siw *ServerInterfaceWrapper) DeleteAgentMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteAgentMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteAgentMemory(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAgentMemory operation middleware
func (siw *ServerInterfaceWrapper) GetAgentMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAgentMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAgentMemory(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAgentMemory operation middleware
func (siw *ServerInterfaceWrapper) UpdateAgentMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateAgentMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAgentMemory(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteAgentDAGMemory operation middleware
func (siw *ServerInterfaceWrapper) DeleteAgentDAGMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "dagName" -------------
	var dagName DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "dagName", chi.URLParam(r, "dagName"), &dagName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteAgentDAGMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteAgentDAGMemory(w, r, dagName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAgentDAGMemory operation middleware
func (siw *ServerInterfaceWrapper) GetAgentDAGMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "dagName" -------------
	var dagName DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "dagName", chi.URLParam(r, "dagName"), &dagName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAgentDAGMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAgentDAGMemory(w, r, dagName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAgentDAGMemory operation middleware
func (siw *ServerInterfaceWrapper) UpdateAgentDAGMemory(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "dagName" -------------
	var dagName DAGName

	err = runtime.BindStyledParameterWithOptions("simple", "dagName", chi.URLParam(r, "dagName"), &dagName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "dagName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateAgentDAGMemoryParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAgentDAGMemory(w, r, dagName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListModelPresets operation middleware
func (siw *ServerInterfaceWrapper) ListModelPresets(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListModelPresetsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListModelPresets(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAgentModels operation middleware
func (siw *ServerInterfaceWrapper) ListAgentModels(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAgentModelsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAgentModels(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateAgentModel operation middleware
func (siw *ServerInterfaceWrapper) CreateAgentModel(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateAgentModelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateAgentModel(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteAgentModel operation middleware
func (siw *ServerInterfaceWrapper) DeleteAgentModel(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "modelId" -------------
	var modelId string

	err = runtime.BindStyledParameterWithOptions("simple", "modelId", chi.URLParam(r, "modelId"), &modelId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "modelId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteAgentModelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteAgentModel(w, r, modelId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAgentModel operation middleware
func (siw *ServerInterfaceWrapper) UpdateAgentModel(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "modelId" -------------
	var modelId string

	err = runtime.BindStyledParameterWithOptions("simple", "modelId", chi.URLParam(r, "modelId"), &modelId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "modelId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateAgentModelParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAgentModel(w, r, modelId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAgentSouls operation middleware
func (siw *ServerInterfaceWrapper) ListAgentSouls(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAgentSoulsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	// ------------- Optional query parameter "page" -------------

	err = runtime.BindQueryParameter("form", true, false, "page", r.URL.Query(), &params.Page)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "page", Err: err})
		return
	}

	// ------------- Optional query parameter "perPage" -------------

	err = runtime.BindQueryParameter("form", true, false, "perPage", r.URL.Query(), &params.PerPage)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "perPage", Err: err})
		return
	}

	// ------------- Optional query parameter "q" -------------

	err = runtime.BindQueryParameter("form", true, false, "q", r.URL.Query(), &params.Q)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "q", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAgentSouls(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateAgentSoul operation middleware
func (siw *ServerInterfaceWrapper) CreateAgentSoul(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateAgentSoulParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateAgentSoul(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteAgentSoul operation middleware
func (siw *ServerInterfaceWrapper) DeleteAgentSoul(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "soulId" -------------
	var soulId SoulId

	err = runtime.BindStyledParameterWithOptions("simple", "soulId", chi.URLParam(r, "soulId"), &soulId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "soulId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteAgentSoulParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteAgentSoul(w, r, soulId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetAgentSoul operation middleware
func (siw *ServerInterfaceWrapper) GetAgentSoul(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "soulId" -------------
	var soulId SoulId

	err = runtime.BindStyledParameterWithOptions("simple", "soulId", chi.URLParam(r, "soulId"), &soulId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "soulId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetAgentSoulParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetAgentSoul(w, r, soulId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateAgentSoul operation middleware
func (siw *ServerInterfaceWrapper) UpdateAgentSoul(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "soulId" -------------
	var soulId SoulId

	err = runtime.BindStyledParameterWithOptions("simple", "soulId", chi.URLParam(r, "soulId"), &soulId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "soulId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateAgentSoulParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateAgentSoul(w, r, soulId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListAgentTools operation middleware
func (siw *ServerInterfaceWrapper) ListAgentTools(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListAgentToolsParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListAgentTools(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetBaseConfig operation middleware
func (siw *ServerInterfaceWrapper) GetBaseConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetBaseConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetBaseConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateBaseConfig operation middleware
func (siw *ServerInterfaceWrapper) UpdateBaseConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateBaseConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateBaseConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetWorkspaceBaseConfig operation middleware
func (siw *ServerInterfaceWrapper) GetWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetWorkspaceBaseConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetWorkspaceBaseConfig(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateWorkspaceBaseConfig operation middleware
func (siw *ServerInterfaceWrapper) UpdateWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceName" -------------
	var workspaceName WorkspaceName

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceName", chi.URLParam(r, "workspaceName"), &workspaceName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceName", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateWorkspaceBaseConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateWorkspaceBaseConfig(w, r, workspaceName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncCleanup operation middleware
func (siw *ServerInterfaceWrapper) SyncCleanup(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncCleanupParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncCleanup(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSyncConfig operation middleware
func (siw *ServerInterfaceWrapper) GetSyncConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSyncConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSyncConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateSyncConfig operation middleware
func (siw *ServerInterfaceWrapper) UpdateSyncConfig(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateSyncConfigParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateSyncConfig(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncDeleteBatch operation middleware
func (siw *ServerInterfaceWrapper) SyncDeleteBatch(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncDeleteBatchParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncDeleteBatch(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncDeleteMissing operation middleware
func (siw *ServerInterfaceWrapper) SyncDeleteMissing(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncDeleteMissingParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncDeleteMissing(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteSyncItem operation middleware
func (siw *ServerInterfaceWrapper) DeleteSyncItem(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteSyncItemParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteSyncItem(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSyncItemDiff operation middleware
func (siw *ServerInterfaceWrapper) GetSyncItemDiff(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSyncItemDiffParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSyncItemDiff(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DiscardSyncItemChanges operation middleware
func (siw *ServerInterfaceWrapper) DiscardSyncItemChanges(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DiscardSyncItemChangesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DiscardSyncItemChanges(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ForgetSyncItem operation middleware
func (siw *ServerInterfaceWrapper) ForgetSyncItem(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ForgetSyncItemParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ForgetSyncItem(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// MoveSyncItem operation middleware
func (siw *ServerInterfaceWrapper) MoveSyncItem(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params MoveSyncItemParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.MoveSyncItem(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// PublishSyncItem operation middleware
func (siw *ServerInterfaceWrapper) PublishSyncItem(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "itemId" -------------
	var itemId string

	err = runtime.BindStyledParameterWithOptions("simple", "itemId", chi.URLParam(r, "itemId"), &itemId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "itemId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params PublishSyncItemParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.PublishSyncItem(w, r, itemId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncPublishAll operation middleware
func (siw *ServerInterfaceWrapper) SyncPublishAll(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncPublishAllParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncPublishAll(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncPull operation middleware
func (siw *ServerInterfaceWrapper) SyncPull(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncPullParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncPull(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetSyncStatus operation middleware
func (siw *ServerInterfaceWrapper) GetSyncStatus(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetSyncStatusParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetSyncStatus(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// SyncTestConnection operation middleware
func (siw *ServerInterfaceWrapper) SyncTestConnection(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params SyncTestConnectionParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.SyncTestConnection(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListUsers operation middleware
func (siw *ServerInterfaceWrapper) ListUsers(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListUsers(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateUser operation middleware
func (siw *ServerInterfaceWrapper) CreateUser(w http.ResponseWriter, r *http.Request) {

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateUser(w, r)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteUser operation middleware
func (siw *ServerInterfaceWrapper) DeleteUser(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "userId" -------------
	var userId UserId

	err = runtime.BindStyledParameterWithOptions("simple", "userId", chi.URLParam(r, "userId"), &userId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteUser(w, r, userId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetUser operation middleware
func (siw *ServerInterfaceWrapper) GetUser(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "userId" -------------
	var userId UserId

	err = runtime.BindStyledParameterWithOptions("simple", "userId", chi.URLParam(r, "userId"), &userId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetUser(w, r, userId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateUser operation middleware
func (siw *ServerInterfaceWrapper) UpdateUser(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "userId" -------------
	var userId UserId

	err = runtime.BindStyledParameterWithOptions("simple", "userId", chi.URLParam(r, "userId"), &userId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateUser(w, r, userId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ResetUserPassword operation middleware
func (siw *ServerInterfaceWrapper) ResetUserPassword(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "userId" -------------
	var userId UserId

	err = runtime.BindStyledParameterWithOptions("simple", "userId", chi.URLParam(r, "userId"), &userId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "userId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ResetUserPassword(w, r, userId)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListWebhooks operation middleware
func (siw *ServerInterfaceWrapper) ListWebhooks(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListWebhooksParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListWebhooks(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// TriggerWebhook operation middleware
func (siw *ServerInterfaceWrapper) TriggerWebhook(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "fileName" -------------
	var fileName DAGFileName

	err = runtime.BindStyledParameterWithOptions("simple", "fileName", chi.URLParam(r, "fileName"), &fileName, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "fileName", Err: err})
		return
	}

	// Parameter object where we will unmarshal all parameters from the context
	var params TriggerWebhookParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	headers := r.Header

	// ------------- Optional header parameter "Authorization" -------------
	if valueList, found := headers[http.CanonicalHeaderKey("Authorization")]; found {
		var Authorization string
		n := len(valueList)
		if n != 1 {
			siw.ErrorHandlerFunc(w, r, &TooManyValuesForParamError{ParamName: "Authorization", Count: n})
			return
		}

		err = runtime.BindStyledParameterWithOptions("simple", "Authorization", valueList[0], &Authorization, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationHeader, Explode: false, Required: false})
		if err != nil {
			siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "Authorization", Err: err})
			return
		}

		params.Authorization = &Authorization

	}

	// ------------- Optional header parameter "X-Dagu-Signature" -------------
	if valueList, found := headers[http.CanonicalHeaderKey("X-Dagu-Signature")]; found {
		var XDaguSignature string
		n := len(valueList)
		if n != 1 {
			siw.ErrorHandlerFunc(w, r, &TooManyValuesForParamError{ParamName: "X-Dagu-Signature", Count: n})
			return
		}

		err = runtime.BindStyledParameterWithOptions("simple", "X-Dagu-Signature", valueList[0], &XDaguSignature, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationHeader, Explode: false, Required: false})
		if err != nil {
			siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "X-Dagu-Signature", Err: err})
			return
		}

		params.XDaguSignature = &XDaguSignature

	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.TriggerWebhook(w, r, fileName, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetWorkers operation middleware
func (siw *ServerInterfaceWrapper) GetWorkers(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetWorkersParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetWorkers(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// ListWorkspaces operation middleware
func (siw *ServerInterfaceWrapper) ListWorkspaces(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params ListWorkspacesParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.ListWorkspaces(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// CreateWorkspace operation middleware
func (siw *ServerInterfaceWrapper) CreateWorkspace(w http.ResponseWriter, r *http.Request) {

	var err error

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params CreateWorkspaceParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.CreateWorkspace(w, r, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// DeleteWorkspace operation middleware
func (siw *ServerInterfaceWrapper) DeleteWorkspace(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceId" -------------
	var workspaceId string

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceId", chi.URLParam(r, "workspaceId"), &workspaceId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params DeleteWorkspaceParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.DeleteWorkspace(w, r, workspaceId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// GetWorkspace operation middleware
func (siw *ServerInterfaceWrapper) GetWorkspace(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceId" -------------
	var workspaceId string

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceId", chi.URLParam(r, "workspaceId"), &workspaceId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params GetWorkspaceParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.GetWorkspace(w, r, workspaceId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

// UpdateWorkspace operation middleware
func (siw *ServerInterfaceWrapper) UpdateWorkspace(w http.ResponseWriter, r *http.Request) {

	var err error

	// ------------- Path parameter "workspaceId" -------------
	var workspaceId string

	err = runtime.BindStyledParameterWithOptions("simple", "workspaceId", chi.URLParam(r, "workspaceId"), &workspaceId, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true})
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "workspaceId", Err: err})
		return
	}

	ctx := r.Context()

	ctx = context.WithValue(ctx, ApiTokenScopes, []string{})

	ctx = context.WithValue(ctx, BasicAuthScopes, []string{})

	r = r.WithContext(ctx)

	// Parameter object where we will unmarshal all parameters from the context
	var params UpdateWorkspaceParams

	// ------------- Optional query parameter "remoteNode" -------------

	err = runtime.BindQueryParameter("form", true, false, "remoteNode", r.URL.Query(), &params.RemoteNode)
	if err != nil {
		siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "remoteNode", Err: err})
		return
	}

	handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		siw.Handler.UpdateWorkspace(w, r, workspaceId, params)
	}))

	for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- {
		handler = siw.HandlerMiddlewares[i](handler)
	}

	handler.ServeHTTP(w, r)
}

type UnescapedCookieParamError struct {
	ParamName string
	Err       error
}

func (e *UnescapedCookieParamError) Error() string {
	return fmt.Sprintf("error unescaping cookie parameter '%s'", e.ParamName)
}

func (e *UnescapedCookieParamError) Unwrap() error {
	return e.Err
}

type UnmarshalingParamError struct {
	ParamName string
	Err       error
}

func (e *UnmarshalingParamError) Error() string {
	return fmt.Sprintf("Error unmarshaling parameter %s as JSON: %s", e.ParamName, e.Err.Error())
}

func (e *UnmarshalingParamError) Unwrap() error {
	return e.Err
}

type RequiredParamError struct {
	ParamName string
}

func (e *RequiredParamError) Error() string {
	return fmt.Sprintf("Query argument %s is required, but not found", e.ParamName)
}

type RequiredHeaderError struct {
	ParamName string
	Err       error
}

func (e *RequiredHeaderError) Error() string {
	return fmt.Sprintf("Header parameter %s is required, but not found", e.ParamName)
}

func (e *RequiredHeaderError) Unwrap() error {
	return e.Err
}

type InvalidParamFormatError struct {
	ParamName string
	Err       error
}

func (e *InvalidParamFormatError) Error() string {
	return fmt.Sprintf("Invalid format for parameter %s: %s", e.ParamName, e.Err.Error())
}

func (e *InvalidParamFormatError) Unwrap() error {
	return e.Err
}

type TooManyValuesForParamError struct {
	ParamName string
	Count     int
}

func (e *TooManyValuesForParamError) Error() string {
	return fmt.Sprintf("Expected one value for %s, got %d", e.ParamName, e.Count)
}

// Handler creates http.Handler with routing matching OpenAPI spec.
func Handler(si ServerInterface) http.Handler {
	return HandlerWithOptions(si, ChiServerOptions{})
}

type ChiServerOptions struct {
	BaseURL          string
	BaseRouter       chi.Router
	Middlewares      []MiddlewareFunc
	ErrorHandlerFunc func(w http.ResponseWriter, r *http.Request, err error)
}

// HandlerFromMux creates http.Handler with routing matching OpenAPI spec based on the provided mux.
func HandlerFromMux(si ServerInterface, r chi.Router) http.Handler {
	return HandlerWithOptions(si, ChiServerOptions{
		BaseRouter: r,
	})
}

func HandlerFromMuxWithBaseURL(si ServerInterface, r chi.Router, baseURL string) http.Handler {
	return HandlerWithOptions(si, ChiServerOptions{
		BaseURL:    baseURL,
		BaseRouter: r,
	})
}

// HandlerWithOptions creates http.Handler with additional options
func HandlerWithOptions(si ServerInterface, options ChiServerOptions) http.Handler {
	r := options.BaseRouter

	if r == nil {
		r = chi.NewRouter()
	}
	if options.ErrorHandlerFunc == nil {
		options.ErrorHandlerFunc = func(w http.ResponseWriter, r *http.Request, err error) {
			http.Error(w, err.Error(), http.StatusBadRequest)
		}
	}
	wrapper := ServerInterfaceWrapper{
		Handler:            si,
		HandlerMiddlewares: options.Middlewares,
		ErrorHandlerFunc:   options.ErrorHandlerFunc,
	}

	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/agent/sessions", wrapper.ListAgentSessions)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/agent/sessions", wrapper.CreateAgentSession)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/agent/sessions/{sessionId}", wrapper.GetAgentSession)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/agent/sessions/{sessionId}/cancel", wrapper.CancelAgentSession)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/agent/sessions/{sessionId}/chat", wrapper.ChatAgentSession)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/agent/sessions/{sessionId}/respond", wrapper.RespondAgentSession)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/api-keys", wrapper.ListAPIKeys)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/api-keys", wrapper.CreateAPIKey)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/api-keys/{keyId}", wrapper.DeleteAPIKey)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/api-keys/{keyId}", wrapper.GetAPIKey)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/api-keys/{keyId}", wrapper.UpdateAPIKey)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/audit", wrapper.ListAuditLogs)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/auth/change-password", wrapper.ChangePassword)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/auth/login", wrapper.Login)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/auth/me", wrapper.GetCurrentUser)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/auth/setup", wrapper.Setup)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs", wrapper.ListDAGRuns)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs", wrapper.ExecuteDAGRunFromSpec)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/enqueue", wrapper.EnqueueDAGRunFromSpec)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}", wrapper.ListDAGRunsByName)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/dag-runs/{name}/{dagRunId}", wrapper.DeleteDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}", wrapper.GetDAGRunDetails)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/artifacts", wrapper.GetDAGRunArtifacts)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/artifacts/download", wrapper.DownloadDAGRunArtifact)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/artifacts/preview", wrapper.GetDAGRunArtifactPreview)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/dequeue", wrapper.DequeueDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/edit-retry", wrapper.EditRetryDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/edit-retry/preview", wrapper.PreviewEditRetryDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/log", wrapper.GetDAGRunLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/log/download", wrapper.DownloadDAGRunLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/outputs", wrapper.GetDAGRunOutputs)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/reschedule", wrapper.RescheduleDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/retry", wrapper.RetryDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/spec", wrapper.GetDAGRunSpec)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/approve", wrapper.ApproveDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/log", wrapper.GetDAGRunStepLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/log/download", wrapper.DownloadDAGRunStepLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/messages", wrapper.GetDAGRunStepMessages)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/push-back", wrapper.PushBackDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/reject", wrapper.RejectDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/dag-runs/{name}/{dagRunId}/steps/{stepName}/status", wrapper.UpdateDAGRunStepStatus)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/stop", wrapper.TerminateDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs", wrapper.GetSubDAGRuns)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}", wrapper.GetSubDAGRunDetails)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts", wrapper.GetSubDAGRunArtifacts)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/download", wrapper.DownloadSubDAGRunArtifact)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/preview", wrapper.GetSubDAGRunArtifactPreview)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log", wrapper.GetSubDAGRunLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log/download", wrapper.DownloadSubDAGRunLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/spec", wrapper.GetSubDAGRunSpec)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/approve", wrapper.ApproveSubDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log", wrapper.GetSubDAGRunStepLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log/download", wrapper.DownloadSubDAGRunStepLog)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/messages", wrapper.GetSubDAGRunStepMessages)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/push-back", wrapper.PushBackSubDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/reject", wrapper.RejectSubDAGRunStep)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/status", wrapper.UpdateSubDAGRunStepStatus)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags", wrapper.ListDAGs)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags", wrapper.CreateNewDAG)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/labels", wrapper.GetAllDAGLabels)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/search", wrapper.SearchDAGs)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/tags", wrapper.GetAllDAGTags)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/validate", wrapper.ValidateDAGSpec)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/dags/{fileName}", wrapper.DeleteDAG)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}", wrapper.GetDAGDetails)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/dag-runs", wrapper.GetDAGDAGRunHistory)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/dag-runs/{dagRunId}", wrapper.GetDAGDAGRunDetails)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/enqueue", wrapper.EnqueueDAGDAGRun)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/dags/{fileName}/incidents", wrapper.DeleteDAGIncidents)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/incidents", wrapper.GetDAGIncidents)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/dags/{fileName}/incidents", wrapper.UpdateDAGIncidents)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/dags/{fileName}/notifications", wrapper.DeleteDAGNotifications)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/notifications", wrapper.GetDAGNotifications)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/dags/{fileName}/notifications", wrapper.UpdateDAGNotifications)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/notifications/test", wrapper.TestDAGNotifications)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/rename", wrapper.RenameDAG)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/spec", wrapper.GetDAGSpec)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/dags/{fileName}/spec", wrapper.UpdateDAGSpec)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/start", wrapper.ExecuteDAG)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/start-sync", wrapper.ExecuteDAGSync)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/stop-all", wrapper.StopAllDAGRuns)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/suspend", wrapper.UpdateDAGSuspensionState)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/dags/{fileName}/webhook", wrapper.DeleteDAGWebhook)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/dags/{fileName}/webhook", wrapper.GetDAGWebhook)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook", wrapper.CreateDAGWebhook)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/hmac/configure", wrapper.ConfigureDAGWebhookHMAC)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/hmac/disable", wrapper.DisableDAGWebhookHMAC)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/hmac/enable", wrapper.EnableDAGWebhookHMAC)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/hmac/regenerate", wrapper.RegenerateDAGWebhookHMACSecret)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/regenerate", wrapper.RegenerateDAGWebhookToken)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/dags/{fileName}/webhook/toggle", wrapper.ToggleDAGWebhook)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/docs", wrapper.ListDocs)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/docs", wrapper.CreateDoc)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/docs/delete-batch", wrapper.DeleteDocBatch)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/docs/doc", wrapper.DeleteDoc)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/docs/doc", wrapper.GetDoc)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/docs/doc", wrapper.UpdateDoc)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/docs/doc/rename", wrapper.RenameDoc)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/docs/search", wrapper.SearchDocs)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/event-logs", wrapper.ListEventLogs)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/health", wrapper.GetHealthStatus)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/incident-policies", wrapper.ListIncidentPolicies)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/incident-policies/global", wrapper.GetGlobalIncidentPolicies)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/incident-policies/global", wrapper.UpdateGlobalIncidentPolicies)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/incident-policies/workspaces/{workspaceName}", wrapper.GetWorkspaceIncidentPolicies)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/incident-policies/workspaces/{workspaceName}", wrapper.UpdateWorkspaceIncidentPolicies)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/incident-providers", wrapper.ListIncidentProviders)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/incident-providers", wrapper.CreateIncidentProvider)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/incident-providers/{providerId}", wrapper.DeleteIncidentProvider)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/incident-providers/{providerId}", wrapper.GetIncidentProvider)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/incident-providers/{providerId}", wrapper.UpdateIncidentProvider)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/incident-providers/{providerId}/test", wrapper.TestIncidentProvider)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/license/activate", wrapper.ActivateLicense)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/license/deactivate", wrapper.DeactivateLicense)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/metrics", wrapper.GetMetrics)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-channels", wrapper.ListNotificationChannels)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/notification-channels", wrapper.CreateNotificationChannel)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/notification-channels/{channelId}", wrapper.DeleteNotificationChannel)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-channels/{channelId}", wrapper.GetNotificationChannel)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/notification-channels/{channelId}", wrapper.UpdateNotificationChannel)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-routes", wrapper.ListNotificationRoutes)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-routes/global", wrapper.GetGlobalNotificationRoutes)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/notification-routes/global", wrapper.UpdateGlobalNotificationRoutes)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-routes/workspaces/{workspaceName}", wrapper.GetWorkspaceNotificationRoutes)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/notification-routes/workspaces/{workspaceName}", wrapper.UpdateWorkspaceNotificationRoutes)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/notification-settings", wrapper.GetNotificationSettings)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/notification-settings", wrapper.UpdateNotificationSettings)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/openapi.json", wrapper.GetOpenapiJson)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/queues", wrapper.ListQueues)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/queues/{name}", wrapper.GetQueue)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/queues/{name}/items", wrapper.ListQueueItems)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/remote-nodes", wrapper.ListRemoteNodes)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/remote-nodes", wrapper.CreateRemoteNode)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/remote-nodes/{remoteNodeId}", wrapper.DeleteRemoteNode)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/remote-nodes/{remoteNodeId}", wrapper.GetRemoteNode)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/remote-nodes/{remoteNodeId}", wrapper.UpdateRemoteNode)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/remote-nodes/{remoteNodeId}/test-connection", wrapper.TestRemoteNodeConnection)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/search/dags", wrapper.SearchDAGFeed)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/search/dags/{fileName}/matches", wrapper.SearchDagMatches)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/search/docs", wrapper.SearchDocFeed)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/search/docs/matches", wrapper.SearchDocMatches)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/secrets", wrapper.ListSecrets)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/secrets", wrapper.CreateSecret)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/secrets/{secretId}", wrapper.DeleteSecret)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/secrets/{secretId}", wrapper.GetSecret)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/secrets/{secretId}", wrapper.UpdateSecret)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/secrets/{secretId}/disable", wrapper.DisableSecret)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/secrets/{secretId}/enable", wrapper.EnableSecret)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/secrets/{secretId}/versions", wrapper.WriteSecretVersion)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/services/coordinator", wrapper.GetCoordinatorStatus)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/services/resources/history", wrapper.GetResourceHistory)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/services/scheduler", wrapper.GetSchedulerStatus)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/services/tunnel", wrapper.GetTunnelStatus)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent", wrapper.GetAgentConfig)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/settings/agent", wrapper.UpdateAgentConfig)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/auth/providers", wrapper.ListAgentAuthProviders)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/settings/agent/auth/providers/{providerId}/login", wrapper.DisconnectAgentAuthProviderLogin)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/settings/agent/auth/providers/{providerId}/login", wrapper.StartAgentAuthProviderLogin)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/settings/agent/auth/providers/{providerId}/login/complete", wrapper.CompleteAgentAuthProviderLogin)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/settings/agent/default-model", wrapper.SetDefaultAgentModel)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/settings/agent/memory", wrapper.DeleteAgentMemory)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/memory", wrapper.GetAgentMemory)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/settings/agent/memory", wrapper.UpdateAgentMemory)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/settings/agent/memory/dags/{dagName}", wrapper.DeleteAgentDAGMemory)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/memory/dags/{dagName}", wrapper.GetAgentDAGMemory)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/settings/agent/memory/dags/{dagName}", wrapper.UpdateAgentDAGMemory)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/model-presets", wrapper.ListModelPresets)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/models", wrapper.ListAgentModels)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/settings/agent/models", wrapper.CreateAgentModel)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/settings/agent/models/{modelId}", wrapper.DeleteAgentModel)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/settings/agent/models/{modelId}", wrapper.UpdateAgentModel)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/souls", wrapper.ListAgentSouls)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/settings/agent/souls", wrapper.CreateAgentSoul)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/settings/agent/souls/{soulId}", wrapper.DeleteAgentSoul)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/souls/{soulId}", wrapper.GetAgentSoul)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/settings/agent/souls/{soulId}", wrapper.UpdateAgentSoul)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/agent/tools", wrapper.ListAgentTools)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/base-config", wrapper.GetBaseConfig)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/settings/base-config", wrapper.UpdateBaseConfig)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/settings/workspaces/{workspaceName}/base-config", wrapper.GetWorkspaceBaseConfig)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/settings/workspaces/{workspaceName}/base-config", wrapper.UpdateWorkspaceBaseConfig)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/cleanup", wrapper.SyncCleanup)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/sync/config", wrapper.GetSyncConfig)
	})
	r.Group(func(r chi.Router) {
		r.Put(options.BaseURL+"/sync/config", wrapper.UpdateSyncConfig)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/delete-batch", wrapper.SyncDeleteBatch)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/delete-missing", wrapper.SyncDeleteMissing)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/items/{itemId}/delete", wrapper.DeleteSyncItem)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/sync/items/{itemId}/diff", wrapper.GetSyncItemDiff)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/items/{itemId}/discard", wrapper.DiscardSyncItemChanges)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/items/{itemId}/forget", wrapper.ForgetSyncItem)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/items/{itemId}/move", wrapper.MoveSyncItem)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/items/{itemId}/publish", wrapper.PublishSyncItem)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/publish-all", wrapper.SyncPublishAll)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/pull", wrapper.SyncPull)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/sync/status", wrapper.GetSyncStatus)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/sync/test-connection", wrapper.SyncTestConnection)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/users", wrapper.ListUsers)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/users", wrapper.CreateUser)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/users/{userId}", wrapper.DeleteUser)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/users/{userId}", wrapper.GetUser)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/users/{userId}", wrapper.UpdateUser)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/users/{userId}/reset-password", wrapper.ResetUserPassword)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/webhooks", wrapper.ListWebhooks)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/webhooks/{fileName}", wrapper.TriggerWebhook)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/workers", wrapper.GetWorkers)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/workspaces", wrapper.ListWorkspaces)
	})
	r.Group(func(r chi.Router) {
		r.Post(options.BaseURL+"/workspaces", wrapper.CreateWorkspace)
	})
	r.Group(func(r chi.Router) {
		r.Delete(options.BaseURL+"/workspaces/{workspaceId}", wrapper.DeleteWorkspace)
	})
	r.Group(func(r chi.Router) {
		r.Get(options.BaseURL+"/workspaces/{workspaceId}", wrapper.GetWorkspace)
	})
	r.Group(func(r chi.Router) {
		r.Patch(options.BaseURL+"/workspaces/{workspaceId}", wrapper.UpdateWorkspace)
	})

	return r
}

type ListAgentSessionsRequestObject struct {
	Params ListAgentSessionsParams
}

type ListAgentSessionsResponseObject interface {
	VisitListAgentSessionsResponse(w http.ResponseWriter) error
}

type ListAgentSessions200JSONResponse ListAgentSessionsResponse

func (response ListAgentSessions200JSONResponse) VisitListAgentSessionsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentSessions401JSONResponse Error

func (response ListAgentSessions401JSONResponse) VisitListAgentSessionsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentSessionsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAgentSessionsdefaultJSONResponse) VisitListAgentSessionsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateAgentSessionRequestObject struct {
	Params CreateAgentSessionParams
	Body   *CreateAgentSessionJSONRequestBody
}

type CreateAgentSessionResponseObject interface {
	VisitCreateAgentSessionResponse(w http.ResponseWriter) error
}

type CreateAgentSession201JSONResponse CreateAgentSessionResponse

func (response CreateAgentSession201JSONResponse) VisitCreateAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSession400JSONResponse Error

func (response CreateAgentSession400JSONResponse) VisitCreateAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSession401JSONResponse Error

func (response CreateAgentSession401JSONResponse) VisitCreateAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSession503JSONResponse Error

func (response CreateAgentSession503JSONResponse) VisitCreateAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(503)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSessiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateAgentSessiondefaultJSONResponse) VisitCreateAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAgentSessionRequestObject struct {
	SessionId AgentSessionId `json:"sessionId"`
	Params    GetAgentSessionParams
}

type GetAgentSessionResponseObject interface {
	VisitGetAgentSessionResponse(w http.ResponseWriter) error
}

type GetAgentSession200JSONResponse AgentSessionDetailResponse

func (response GetAgentSession200JSONResponse) VisitGetAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSession401JSONResponse Error

func (response GetAgentSession401JSONResponse) VisitGetAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSession404JSONResponse Error

func (response GetAgentSession404JSONResponse) VisitGetAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSessiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAgentSessiondefaultJSONResponse) VisitGetAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CancelAgentSessionRequestObject struct {
	SessionId AgentSessionId `json:"sessionId"`
	Params    CancelAgentSessionParams
}

type CancelAgentSessionResponseObject interface {
	VisitCancelAgentSessionResponse(w http.ResponseWriter) error
}

type CancelAgentSession200JSONResponse AgentStatusResponse

func (response CancelAgentSession200JSONResponse) VisitCancelAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type CancelAgentSession401JSONResponse Error

func (response CancelAgentSession401JSONResponse) VisitCancelAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CancelAgentSession404JSONResponse Error

func (response CancelAgentSession404JSONResponse) VisitCancelAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type CancelAgentSessiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CancelAgentSessiondefaultJSONResponse) VisitCancelAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ChatAgentSessionRequestObject struct {
	SessionId AgentSessionId `json:"sessionId"`
	Params    ChatAgentSessionParams
	Body      *ChatAgentSessionJSONRequestBody
}

type ChatAgentSessionResponseObject interface {
	VisitChatAgentSessionResponse(w http.ResponseWriter) error
}

type ChatAgentSession202JSONResponse AgentStatusResponse

func (response ChatAgentSession202JSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(202)

	return json.NewEncoder(w).Encode(response)
}

type ChatAgentSession400JSONResponse Error

func (response ChatAgentSession400JSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ChatAgentSession401JSONResponse Error

func (response ChatAgentSession401JSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ChatAgentSession404JSONResponse Error

func (response ChatAgentSession404JSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ChatAgentSession503JSONResponse Error

func (response ChatAgentSession503JSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(503)

	return json.NewEncoder(w).Encode(response)
}

type ChatAgentSessiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ChatAgentSessiondefaultJSONResponse) VisitChatAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RespondAgentSessionRequestObject struct {
	SessionId AgentSessionId `json:"sessionId"`
	Params    RespondAgentSessionParams
	Body      *RespondAgentSessionJSONRequestBody
}

type RespondAgentSessionResponseObject interface {
	VisitRespondAgentSessionResponse(w http.ResponseWriter) error
}

type RespondAgentSession200JSONResponse AgentStatusResponse

func (response RespondAgentSession200JSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RespondAgentSession400JSONResponse Error

func (response RespondAgentSession400JSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RespondAgentSession401JSONResponse Error

func (response RespondAgentSession401JSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type RespondAgentSession404JSONResponse Error

func (response RespondAgentSession404JSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RespondAgentSession410JSONResponse Error

func (response RespondAgentSession410JSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(410)

	return json.NewEncoder(w).Encode(response)
}

type RespondAgentSessiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RespondAgentSessiondefaultJSONResponse) VisitRespondAgentSessionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAPIKeysRequestObject struct {
}

type ListAPIKeysResponseObject interface {
	VisitListAPIKeysResponse(w http.ResponseWriter) error
}

type ListAPIKeys200JSONResponse APIKeysListResponse

func (response ListAPIKeys200JSONResponse) VisitListAPIKeysResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAPIKeys401JSONResponse Error

func (response ListAPIKeys401JSONResponse) VisitListAPIKeysResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAPIKeys403JSONResponse Error

func (response ListAPIKeys403JSONResponse) VisitListAPIKeysResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAPIKeysdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAPIKeysdefaultJSONResponse) VisitListAPIKeysResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateAPIKeyRequestObject struct {
	Body *CreateAPIKeyJSONRequestBody
}

type CreateAPIKeyResponseObject interface {
	VisitCreateAPIKeyResponse(w http.ResponseWriter) error
}

type CreateAPIKey201JSONResponse CreateAPIKeyResponse

func (response CreateAPIKey201JSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateAPIKey400JSONResponse Error

func (response CreateAPIKey400JSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateAPIKey401JSONResponse Error

func (response CreateAPIKey401JSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateAPIKey403JSONResponse Error

func (response CreateAPIKey403JSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateAPIKey409JSONResponse Error

func (response CreateAPIKey409JSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateAPIKeydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateAPIKeydefaultJSONResponse) VisitCreateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteAPIKeyRequestObject struct {
	KeyId APIKeyId `json:"keyId"`
}

type DeleteAPIKeyResponseObject interface {
	VisitDeleteAPIKeyResponse(w http.ResponseWriter) error
}

type DeleteAPIKey204Response struct {
}

func (response DeleteAPIKey204Response) VisitDeleteAPIKeyResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteAPIKey401JSONResponse Error

func (response DeleteAPIKey401JSONResponse) VisitDeleteAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAPIKey403JSONResponse Error

func (response DeleteAPIKey403JSONResponse) VisitDeleteAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAPIKey404JSONResponse Error

func (response DeleteAPIKey404JSONResponse) VisitDeleteAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAPIKeydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteAPIKeydefaultJSONResponse) VisitDeleteAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAPIKeyRequestObject struct {
	KeyId APIKeyId `json:"keyId"`
}

type GetAPIKeyResponseObject interface {
	VisitGetAPIKeyResponse(w http.ResponseWriter) error
}

type GetAPIKey200JSONResponse APIKeyResponse

func (response GetAPIKey200JSONResponse) VisitGetAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAPIKey401JSONResponse Error

func (response GetAPIKey401JSONResponse) VisitGetAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAPIKey403JSONResponse Error

func (response GetAPIKey403JSONResponse) VisitGetAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetAPIKey404JSONResponse Error

func (response GetAPIKey404JSONResponse) VisitGetAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetAPIKeydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAPIKeydefaultJSONResponse) VisitGetAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAPIKeyRequestObject struct {
	KeyId APIKeyId `json:"keyId"`
	Body  *UpdateAPIKeyJSONRequestBody
}

type UpdateAPIKeyResponseObject interface {
	VisitUpdateAPIKeyResponse(w http.ResponseWriter) error
}

type UpdateAPIKey200JSONResponse APIKeyResponse

func (response UpdateAPIKey200JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKey400JSONResponse Error

func (response UpdateAPIKey400JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKey401JSONResponse Error

func (response UpdateAPIKey401JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKey403JSONResponse Error

func (response UpdateAPIKey403JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKey404JSONResponse Error

func (response UpdateAPIKey404JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKey409JSONResponse Error

func (response UpdateAPIKey409JSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAPIKeydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAPIKeydefaultJSONResponse) VisitUpdateAPIKeyResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAuditLogsRequestObject struct {
	Params ListAuditLogsParams
}

type ListAuditLogsResponseObject interface {
	VisitListAuditLogsResponse(w http.ResponseWriter) error
}

type ListAuditLogs200JSONResponse AuditLogsResponse

func (response ListAuditLogs200JSONResponse) VisitListAuditLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAuditLogs401JSONResponse Error

func (response ListAuditLogs401JSONResponse) VisitListAuditLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAuditLogs403JSONResponse Error

func (response ListAuditLogs403JSONResponse) VisitListAuditLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAuditLogsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAuditLogsdefaultJSONResponse) VisitListAuditLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ChangePasswordRequestObject struct {
	Body *ChangePasswordJSONRequestBody
}

type ChangePasswordResponseObject interface {
	VisitChangePasswordResponse(w http.ResponseWriter) error
}

type ChangePassword200JSONResponse SuccessResponse

func (response ChangePassword200JSONResponse) VisitChangePasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ChangePassword400JSONResponse Error

func (response ChangePassword400JSONResponse) VisitChangePasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ChangePassword401JSONResponse Error

func (response ChangePassword401JSONResponse) VisitChangePasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ChangePassworddefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ChangePassworddefaultJSONResponse) VisitChangePasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type LoginRequestObject struct {
	Body *LoginJSONRequestBody
}

type LoginResponseObject interface {
	VisitLoginResponse(w http.ResponseWriter) error
}

type Login200JSONResponse LoginResponse

func (response Login200JSONResponse) VisitLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type Login401JSONResponse Error

func (response Login401JSONResponse) VisitLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type LogindefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response LogindefaultJSONResponse) VisitLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetCurrentUserRequestObject struct {
}

type GetCurrentUserResponseObject interface {
	VisitGetCurrentUserResponse(w http.ResponseWriter) error
}

type GetCurrentUser200JSONResponse UserResponse

func (response GetCurrentUser200JSONResponse) VisitGetCurrentUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetCurrentUser401JSONResponse Error

func (response GetCurrentUser401JSONResponse) VisitGetCurrentUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetCurrentUserdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetCurrentUserdefaultJSONResponse) VisitGetCurrentUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SetupRequestObject struct {
	Params SetupParams
	Body   *SetupJSONRequestBody
}

type SetupResponseObject interface {
	VisitSetupResponse(w http.ResponseWriter) error
}

type Setup200JSONResponse LoginResponse

func (response Setup200JSONResponse) VisitSetupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type Setup400JSONResponse Error

func (response Setup400JSONResponse) VisitSetupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type Setup403JSONResponse Error

func (response Setup403JSONResponse) VisitSetupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type SetupdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SetupdefaultJSONResponse) VisitSetupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListDAGRunsRequestObject struct {
	Params ListDAGRunsParams
}

type ListDAGRunsResponseObject interface {
	VisitListDAGRunsResponse(w http.ResponseWriter) error
}

type ListDAGRuns200JSONResponse DAGRunsPageResponse

func (response ListDAGRuns200JSONResponse) VisitListDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListDAGRuns400JSONResponse Error

func (response ListDAGRuns400JSONResponse) VisitListDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ListDAGRunsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListDAGRunsdefaultJSONResponse) VisitListDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ExecuteDAGRunFromSpecRequestObject struct {
	Params ExecuteDAGRunFromSpecParams
	Body   *ExecuteDAGRunFromSpecJSONRequestBody
}

type ExecuteDAGRunFromSpecResponseObject interface {
	VisitExecuteDAGRunFromSpecResponse(w http.ResponseWriter) error
}

type ExecuteDAGRunFromSpec200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`
}

func (response ExecuteDAGRunFromSpec200JSONResponse) VisitExecuteDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGRunFromSpec400JSONResponse Error

func (response ExecuteDAGRunFromSpec400JSONResponse) VisitExecuteDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGRunFromSpec409JSONResponse Error

func (response ExecuteDAGRunFromSpec409JSONResponse) VisitExecuteDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGRunFromSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ExecuteDAGRunFromSpecdefaultJSONResponse) VisitExecuteDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type EnqueueDAGRunFromSpecRequestObject struct {
	Params EnqueueDAGRunFromSpecParams
	Body   *EnqueueDAGRunFromSpecJSONRequestBody
}

type EnqueueDAGRunFromSpecResponseObject interface {
	VisitEnqueueDAGRunFromSpecResponse(w http.ResponseWriter) error
}

type EnqueueDAGRunFromSpec200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`
}

func (response EnqueueDAGRunFromSpec200JSONResponse) VisitEnqueueDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGRunFromSpec400JSONResponse Error

func (response EnqueueDAGRunFromSpec400JSONResponse) VisitEnqueueDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGRunFromSpec409JSONResponse Error

func (response EnqueueDAGRunFromSpec409JSONResponse) VisitEnqueueDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGRunFromSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response EnqueueDAGRunFromSpecdefaultJSONResponse) VisitEnqueueDAGRunFromSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListDAGRunsByNameRequestObject struct {
	Name   DAGRunName `json:"name"`
	Params ListDAGRunsByNameParams
}

type ListDAGRunsByNameResponseObject interface {
	VisitListDAGRunsByNameResponse(w http.ResponseWriter) error
}

type ListDAGRunsByName200JSONResponse DAGRunsPageResponse

func (response ListDAGRunsByName200JSONResponse) VisitListDAGRunsByNameResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListDAGRunsByName400JSONResponse Error

func (response ListDAGRunsByName400JSONResponse) VisitListDAGRunsByNameResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ListDAGRunsByNamedefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListDAGRunsByNamedefaultJSONResponse) VisitListDAGRunsByNameResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDAGRunRequestObject struct {
	Name     DAGName          `json:"name"`
	DagRunId DAGRunConcreteId `json:"dagRunId"`
	Params   DeleteDAGRunParams
}

type DeleteDAGRunResponseObject interface {
	VisitDeleteDAGRunResponse(w http.ResponseWriter) error
}

type DeleteDAGRun204Response struct {
}

func (response DeleteDAGRun204Response) VisitDeleteDAGRunResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDAGRun400JSONResponse Error

func (response DeleteDAGRun400JSONResponse) VisitDeleteDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGRun404JSONResponse Error

func (response DeleteDAGRun404JSONResponse) VisitDeleteDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDAGRundefaultJSONResponse) VisitDeleteDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunDetailsRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunDetailsParams
}

type GetDAGRunDetailsResponseObject interface {
	VisitGetDAGRunDetailsResponse(w http.ResponseWriter) error
}

type GetDAGRunDetails200JSONResponse struct {
	// DagRunDetails Detailed status of a DAG-run including sub DAG-run nodes
	DagRunDetails DAGRunDetails `json:"dagRunDetails"`
}

func (response GetDAGRunDetails200JSONResponse) VisitGetDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunDetails404JSONResponse Error

func (response GetDAGRunDetails404JSONResponse) VisitGetDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunDetailsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunDetailsdefaultJSONResponse) VisitGetDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunArtifactsRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunArtifactsParams
}

type GetDAGRunArtifactsResponseObject interface {
	VisitGetDAGRunArtifactsResponse(w http.ResponseWriter) error
}

type GetDAGRunArtifacts200JSONResponse ArtifactTreeResponse

func (response GetDAGRunArtifacts200JSONResponse) VisitGetDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunArtifacts404JSONResponse Error

func (response GetDAGRunArtifacts404JSONResponse) VisitGetDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunArtifactsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunArtifactsdefaultJSONResponse) VisitGetDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadDAGRunArtifactRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   DownloadDAGRunArtifactParams
}

type DownloadDAGRunArtifactResponseObject interface {
	VisitDownloadDAGRunArtifactResponse(w http.ResponseWriter) error
}

type DownloadDAGRunArtifact200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadDAGRunArtifact200ApplicationoctetStreamResponse struct {
	Body          io.Reader
	Headers       DownloadDAGRunArtifact200ResponseHeaders
	ContentLength int64
}

func (response DownloadDAGRunArtifact200ApplicationoctetStreamResponse) VisitDownloadDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/octet-stream")
	if response.ContentLength != 0 {
		w.Header().Set("Content-Length", fmt.Sprint(response.ContentLength))
	}
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	if closer, ok := response.Body.(io.ReadCloser); ok {
		defer closer.Close()
	}
	_, err := io.Copy(w, response.Body)
	return err
}

type DownloadDAGRunArtifact404JSONResponse Error

func (response DownloadDAGRunArtifact404JSONResponse) VisitDownloadDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadDAGRunArtifactdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadDAGRunArtifactdefaultJSONResponse) VisitDownloadDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunArtifactPreviewRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunArtifactPreviewParams
}

type GetDAGRunArtifactPreviewResponseObject interface {
	VisitGetDAGRunArtifactPreviewResponse(w http.ResponseWriter) error
}

type GetDAGRunArtifactPreview200JSONResponse ArtifactPreviewResponse

func (response GetDAGRunArtifactPreview200JSONResponse) VisitGetDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunArtifactPreview404JSONResponse Error

func (response GetDAGRunArtifactPreview404JSONResponse) VisitGetDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunArtifactPreviewdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunArtifactPreviewdefaultJSONResponse) VisitGetDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DequeueDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   DequeueDAGRunParams
}

type DequeueDAGRunResponseObject interface {
	VisitDequeueDAGRunResponse(w http.ResponseWriter) error
}

type DequeueDAGRun200Response struct {
}

func (response DequeueDAGRun200Response) VisitDequeueDAGRunResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type DequeueDAGRun404JSONResponse Error

func (response DequeueDAGRun404JSONResponse) VisitDequeueDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DequeueDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DequeueDAGRundefaultJSONResponse) VisitDequeueDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type EditRetryDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   EditRetryDAGRunParams
	Body     *EditRetryDAGRunJSONRequestBody
}

type EditRetryDAGRunResponseObject interface {
	VisitEditRetryDAGRunResponse(w http.ResponseWriter) error
}

type EditRetryDAGRun200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// Queued Indicates whether the run was queued instead of starting immediately.
	Queued       bool     `json:"queued"`
	SkippedSteps []string `json:"skippedSteps"`
	StartedSteps []string `json:"startedSteps"`
}

func (response EditRetryDAGRun200JSONResponse) VisitEditRetryDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type EditRetryDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response EditRetryDAGRundefaultJSONResponse) VisitEditRetryDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type PreviewEditRetryDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   PreviewEditRetryDAGRunParams
	Body     *PreviewEditRetryDAGRunJSONRequestBody
}

type PreviewEditRetryDAGRunResponseObject interface {
	VisitPreviewEditRetryDAGRunResponse(w http.ResponseWriter) error
}

type PreviewEditRetryDAGRun200JSONResponse struct {
	// DagName Resolved DAG name for the edited retry.
	DagName string `json:"dagName"`

	// Errors Validation errors that must be fixed before launching.
	Errors []string `json:"errors"`

	// IneligibleSteps Previous completed steps that cannot be skipped with the edited specification.
	IneligibleSteps []struct {
		Reason   string `json:"reason"`
		StepName string `json:"stepName"`
	} `json:"ineligibleSteps"`

	// RunnableSteps Steps that will be started if not skipped.
	RunnableSteps []string `json:"runnableSteps"`

	// SkippedSteps Default steps selected to be skipped.
	SkippedSteps []string `json:"skippedSteps"`

	// Steps Resolved edited DAG steps in execution order for preview rendering.
	Steps []Step `json:"steps"`

	// Warnings Non-blocking warnings for the edited retry.
	Warnings []string `json:"warnings"`
}

func (response PreviewEditRetryDAGRun200JSONResponse) VisitPreviewEditRetryDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type PreviewEditRetryDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response PreviewEditRetryDAGRundefaultJSONResponse) VisitPreviewEditRetryDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunLogRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunLogParams
}

type GetDAGRunLogResponseObject interface {
	VisitGetDAGRunLogResponse(w http.ResponseWriter) error
}

type GetDAGRunLog200JSONResponse Log

func (response GetDAGRunLog200JSONResponse) VisitGetDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunLog404JSONResponse Error

func (response GetDAGRunLog404JSONResponse) VisitGetDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunLogdefaultJSONResponse) VisitGetDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadDAGRunLogRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   DownloadDAGRunLogParams
}

type DownloadDAGRunLogResponseObject interface {
	VisitDownloadDAGRunLogResponse(w http.ResponseWriter) error
}

type DownloadDAGRunLog200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadDAGRunLog200TextResponse struct {
	Body    string
	Headers DownloadDAGRunLog200ResponseHeaders
}

func (response DownloadDAGRunLog200TextResponse) VisitDownloadDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "text/plain")
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	_, err := w.Write([]byte(response.Body))
	return err
}

type DownloadDAGRunLog404JSONResponse Error

func (response DownloadDAGRunLog404JSONResponse) VisitDownloadDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadDAGRunLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadDAGRunLogdefaultJSONResponse) VisitDownloadDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunOutputsRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunOutputsParams
}

type GetDAGRunOutputsResponseObject interface {
	VisitGetDAGRunOutputsResponse(w http.ResponseWriter) error
}

type GetDAGRunOutputs200JSONResponse DAGRunOutputs

func (response GetDAGRunOutputs200JSONResponse) VisitGetDAGRunOutputsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunOutputs404JSONResponse Error

func (response GetDAGRunOutputs404JSONResponse) VisitGetDAGRunOutputsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunOutputsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunOutputsdefaultJSONResponse) VisitGetDAGRunOutputsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RescheduleDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   RescheduleDAGRunParams
	Body     *RescheduleDAGRunJSONRequestBody
}

type RescheduleDAGRunResponseObject interface {
	VisitRescheduleDAGRunResponse(w http.ResponseWriter) error
}

type RescheduleDAGRun200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`

	// Queued Indicates whether the run was queued instead of starting immediately.
	Queued bool `json:"queued"`
}

func (response RescheduleDAGRun200JSONResponse) VisitRescheduleDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RescheduleDAGRun400JSONResponse Error

func (response RescheduleDAGRun400JSONResponse) VisitRescheduleDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RescheduleDAGRun404JSONResponse Error

func (response RescheduleDAGRun404JSONResponse) VisitRescheduleDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RescheduleDAGRun409JSONResponse Error

func (response RescheduleDAGRun409JSONResponse) VisitRescheduleDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type RescheduleDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RescheduleDAGRundefaultJSONResponse) VisitRescheduleDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RetryDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   RetryDAGRunParams
	Body     *RetryDAGRunJSONRequestBody
}

type RetryDAGRunResponseObject interface {
	VisitRetryDAGRunResponse(w http.ResponseWriter) error
}

type RetryDAGRun200Response struct {
}

func (response RetryDAGRun200Response) VisitRetryDAGRunResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type RetryDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RetryDAGRundefaultJSONResponse) VisitRetryDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunSpecRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetDAGRunSpecParams
}

type GetDAGRunSpecResponseObject interface {
	VisitGetDAGRunSpecResponse(w http.ResponseWriter) error
}

type GetDAGRunSpec200JSONResponse struct {
	// Spec The DAG spec in YAML format
	Spec string `json:"spec"`
}

func (response GetDAGRunSpec200JSONResponse) VisitGetDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunSpec404JSONResponse Error

func (response GetDAGRunSpec404JSONResponse) VisitGetDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunSpecdefaultJSONResponse) VisitGetDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ApproveDAGRunStepRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   ApproveDAGRunStepParams
	Body     *ApproveDAGRunStepJSONRequestBody
}

type ApproveDAGRunStepResponseObject interface {
	VisitApproveDAGRunStepResponse(w http.ResponseWriter) error
}

type ApproveDAGRunStep200JSONResponse ApproveStepResponse

func (response ApproveDAGRunStep200JSONResponse) VisitApproveDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ApproveDAGRunStep400JSONResponse Error

func (response ApproveDAGRunStep400JSONResponse) VisitApproveDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ApproveDAGRunStep404JSONResponse Error

func (response ApproveDAGRunStep404JSONResponse) VisitApproveDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ApproveDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ApproveDAGRunStepdefaultJSONResponse) VisitApproveDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunStepLogRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   GetDAGRunStepLogParams
}

type GetDAGRunStepLogResponseObject interface {
	VisitGetDAGRunStepLogResponse(w http.ResponseWriter) error
}

type GetDAGRunStepLog200JSONResponse Log

func (response GetDAGRunStepLog200JSONResponse) VisitGetDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunStepLog404JSONResponse Error

func (response GetDAGRunStepLog404JSONResponse) VisitGetDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunStepLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunStepLogdefaultJSONResponse) VisitGetDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadDAGRunStepLogRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   DownloadDAGRunStepLogParams
}

type DownloadDAGRunStepLogResponseObject interface {
	VisitDownloadDAGRunStepLogResponse(w http.ResponseWriter) error
}

type DownloadDAGRunStepLog200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadDAGRunStepLog200TextResponse struct {
	Body    string
	Headers DownloadDAGRunStepLog200ResponseHeaders
}

func (response DownloadDAGRunStepLog200TextResponse) VisitDownloadDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "text/plain")
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	_, err := w.Write([]byte(response.Body))
	return err
}

type DownloadDAGRunStepLog404JSONResponse Error

func (response DownloadDAGRunStepLog404JSONResponse) VisitDownloadDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadDAGRunStepLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadDAGRunStepLogdefaultJSONResponse) VisitDownloadDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGRunStepMessagesRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   GetDAGRunStepMessagesParams
}

type GetDAGRunStepMessagesResponseObject interface {
	VisitGetDAGRunStepMessagesResponse(w http.ResponseWriter) error
}

type GetDAGRunStepMessages200JSONResponse ChatMessagesResponse

func (response GetDAGRunStepMessages200JSONResponse) VisitGetDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunStepMessages404JSONResponse Error

func (response GetDAGRunStepMessages404JSONResponse) VisitGetDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGRunStepMessagesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGRunStepMessagesdefaultJSONResponse) VisitGetDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type PushBackDAGRunStepRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   PushBackDAGRunStepParams
	Body     *PushBackDAGRunStepJSONRequestBody
}

type PushBackDAGRunStepResponseObject interface {
	VisitPushBackDAGRunStepResponse(w http.ResponseWriter) error
}

type PushBackDAGRunStep200JSONResponse PushBackStepResponse

func (response PushBackDAGRunStep200JSONResponse) VisitPushBackDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type PushBackDAGRunStep400JSONResponse Error

func (response PushBackDAGRunStep400JSONResponse) VisitPushBackDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type PushBackDAGRunStep404JSONResponse Error

func (response PushBackDAGRunStep404JSONResponse) VisitPushBackDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type PushBackDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response PushBackDAGRunStepdefaultJSONResponse) VisitPushBackDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RejectDAGRunStepRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   RejectDAGRunStepParams
	Body     *RejectDAGRunStepJSONRequestBody
}

type RejectDAGRunStepResponseObject interface {
	VisitRejectDAGRunStepResponse(w http.ResponseWriter) error
}

type RejectDAGRunStep200JSONResponse RejectStepResponse

func (response RejectDAGRunStep200JSONResponse) VisitRejectDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RejectDAGRunStep400JSONResponse Error

func (response RejectDAGRunStep400JSONResponse) VisitRejectDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RejectDAGRunStep404JSONResponse Error

func (response RejectDAGRunStep404JSONResponse) VisitRejectDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RejectDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RejectDAGRunStepdefaultJSONResponse) VisitRejectDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDAGRunStepStatusRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	StepName StepName `json:"stepName"`
	Params   UpdateDAGRunStepStatusParams
	Body     *UpdateDAGRunStepStatusJSONRequestBody
}

type UpdateDAGRunStepStatusResponseObject interface {
	VisitUpdateDAGRunStepStatusResponse(w http.ResponseWriter) error
}

type UpdateDAGRunStepStatus200Response struct {
}

func (response UpdateDAGRunStepStatus200Response) VisitUpdateDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type UpdateDAGRunStepStatus400JSONResponse Error

func (response UpdateDAGRunStepStatus400JSONResponse) VisitUpdateDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGRunStepStatus404JSONResponse Error

func (response UpdateDAGRunStepStatus404JSONResponse) VisitUpdateDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGRunStepStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDAGRunStepStatusdefaultJSONResponse) VisitUpdateDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type TerminateDAGRunRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   TerminateDAGRunParams
}

type TerminateDAGRunResponseObject interface {
	VisitTerminateDAGRunResponse(w http.ResponseWriter) error
}

type TerminateDAGRun200Response struct {
}

func (response TerminateDAGRun200Response) VisitTerminateDAGRunResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type TerminateDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response TerminateDAGRundefaultJSONResponse) VisitTerminateDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunsRequestObject struct {
	Name     DAGName  `json:"name"`
	DagRunId DAGRunId `json:"dagRunId"`
	Params   GetSubDAGRunsParams
}

type GetSubDAGRunsResponseObject interface {
	VisitGetSubDAGRunsResponse(w http.ResponseWriter) error
}

type GetSubDAGRuns200JSONResponse struct {
	SubRuns []SubDAGRunDetail `json:"subRuns"`
}

func (response GetSubDAGRuns200JSONResponse) VisitGetSubDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRuns404JSONResponse Error

func (response GetSubDAGRuns404JSONResponse) VisitGetSubDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunsdefaultJSONResponse) VisitGetSubDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunDetailsRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      GetSubDAGRunDetailsParams
}

type GetSubDAGRunDetailsResponseObject interface {
	VisitGetSubDAGRunDetailsResponse(w http.ResponseWriter) error
}

type GetSubDAGRunDetails200JSONResponse struct {
	// DagRunDetails Detailed status of a DAG-run including sub DAG-run nodes
	DagRunDetails DAGRunDetails `json:"dagRunDetails"`
}

func (response GetSubDAGRunDetails200JSONResponse) VisitGetSubDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunDetails404JSONResponse Error

func (response GetSubDAGRunDetails404JSONResponse) VisitGetSubDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunDetailsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunDetailsdefaultJSONResponse) VisitGetSubDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunArtifactsRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      GetSubDAGRunArtifactsParams
}

type GetSubDAGRunArtifactsResponseObject interface {
	VisitGetSubDAGRunArtifactsResponse(w http.ResponseWriter) error
}

type GetSubDAGRunArtifacts200JSONResponse ArtifactTreeResponse

func (response GetSubDAGRunArtifacts200JSONResponse) VisitGetSubDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunArtifacts404JSONResponse Error

func (response GetSubDAGRunArtifacts404JSONResponse) VisitGetSubDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunArtifactsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunArtifactsdefaultJSONResponse) VisitGetSubDAGRunArtifactsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadSubDAGRunArtifactRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      DownloadSubDAGRunArtifactParams
}

type DownloadSubDAGRunArtifactResponseObject interface {
	VisitDownloadSubDAGRunArtifactResponse(w http.ResponseWriter) error
}

type DownloadSubDAGRunArtifact200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadSubDAGRunArtifact200ApplicationoctetStreamResponse struct {
	Body          io.Reader
	Headers       DownloadSubDAGRunArtifact200ResponseHeaders
	ContentLength int64
}

func (response DownloadSubDAGRunArtifact200ApplicationoctetStreamResponse) VisitDownloadSubDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/octet-stream")
	if response.ContentLength != 0 {
		w.Header().Set("Content-Length", fmt.Sprint(response.ContentLength))
	}
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	if closer, ok := response.Body.(io.ReadCloser); ok {
		defer closer.Close()
	}
	_, err := io.Copy(w, response.Body)
	return err
}

type DownloadSubDAGRunArtifact404JSONResponse Error

func (response DownloadSubDAGRunArtifact404JSONResponse) VisitDownloadSubDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadSubDAGRunArtifactdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadSubDAGRunArtifactdefaultJSONResponse) VisitDownloadSubDAGRunArtifactResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunArtifactPreviewRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      GetSubDAGRunArtifactPreviewParams
}

type GetSubDAGRunArtifactPreviewResponseObject interface {
	VisitGetSubDAGRunArtifactPreviewResponse(w http.ResponseWriter) error
}

type GetSubDAGRunArtifactPreview200JSONResponse ArtifactPreviewResponse

func (response GetSubDAGRunArtifactPreview200JSONResponse) VisitGetSubDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunArtifactPreview404JSONResponse Error

func (response GetSubDAGRunArtifactPreview404JSONResponse) VisitGetSubDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunArtifactPreviewdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunArtifactPreviewdefaultJSONResponse) VisitGetSubDAGRunArtifactPreviewResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunLogRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      GetSubDAGRunLogParams
}

type GetSubDAGRunLogResponseObject interface {
	VisitGetSubDAGRunLogResponse(w http.ResponseWriter) error
}

type GetSubDAGRunLog200JSONResponse Log

func (response GetSubDAGRunLog200JSONResponse) VisitGetSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunLog404JSONResponse Error

func (response GetSubDAGRunLog404JSONResponse) VisitGetSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunLogdefaultJSONResponse) VisitGetSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadSubDAGRunLogRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      DownloadSubDAGRunLogParams
}

type DownloadSubDAGRunLogResponseObject interface {
	VisitDownloadSubDAGRunLogResponse(w http.ResponseWriter) error
}

type DownloadSubDAGRunLog200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadSubDAGRunLog200TextResponse struct {
	Body    string
	Headers DownloadSubDAGRunLog200ResponseHeaders
}

func (response DownloadSubDAGRunLog200TextResponse) VisitDownloadSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "text/plain")
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	_, err := w.Write([]byte(response.Body))
	return err
}

type DownloadSubDAGRunLog404JSONResponse Error

func (response DownloadSubDAGRunLog404JSONResponse) VisitDownloadSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadSubDAGRunLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadSubDAGRunLogdefaultJSONResponse) VisitDownloadSubDAGRunLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunSpecRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	Params      GetSubDAGRunSpecParams
}

type GetSubDAGRunSpecResponseObject interface {
	VisitGetSubDAGRunSpecResponse(w http.ResponseWriter) error
}

type GetSubDAGRunSpec200JSONResponse struct {
	// Spec YAML specification of the sub-DAG
	Spec string `json:"spec"`
}

func (response GetSubDAGRunSpec200JSONResponse) VisitGetSubDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunSpec404JSONResponse Error

func (response GetSubDAGRunSpec404JSONResponse) VisitGetSubDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunSpecdefaultJSONResponse) VisitGetSubDAGRunSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ApproveSubDAGRunStepRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      ApproveSubDAGRunStepParams
	Body        *ApproveSubDAGRunStepJSONRequestBody
}

type ApproveSubDAGRunStepResponseObject interface {
	VisitApproveSubDAGRunStepResponse(w http.ResponseWriter) error
}

type ApproveSubDAGRunStep200JSONResponse ApproveStepResponse

func (response ApproveSubDAGRunStep200JSONResponse) VisitApproveSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ApproveSubDAGRunStep400JSONResponse Error

func (response ApproveSubDAGRunStep400JSONResponse) VisitApproveSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ApproveSubDAGRunStep404JSONResponse Error

func (response ApproveSubDAGRunStep404JSONResponse) VisitApproveSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ApproveSubDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ApproveSubDAGRunStepdefaultJSONResponse) VisitApproveSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunStepLogRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      GetSubDAGRunStepLogParams
}

type GetSubDAGRunStepLogResponseObject interface {
	VisitGetSubDAGRunStepLogResponse(w http.ResponseWriter) error
}

type GetSubDAGRunStepLog200JSONResponse Log

func (response GetSubDAGRunStepLog200JSONResponse) VisitGetSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunStepLog404JSONResponse Error

func (response GetSubDAGRunStepLog404JSONResponse) VisitGetSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunStepLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunStepLogdefaultJSONResponse) VisitGetSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DownloadSubDAGRunStepLogRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      DownloadSubDAGRunStepLogParams
}

type DownloadSubDAGRunStepLogResponseObject interface {
	VisitDownloadSubDAGRunStepLogResponse(w http.ResponseWriter) error
}

type DownloadSubDAGRunStepLog200ResponseHeaders struct {
	ContentDisposition string
}

type DownloadSubDAGRunStepLog200TextResponse struct {
	Body    string
	Headers DownloadSubDAGRunStepLog200ResponseHeaders
}

func (response DownloadSubDAGRunStepLog200TextResponse) VisitDownloadSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "text/plain")
	w.Header().Set("Content-Disposition", fmt.Sprint(response.Headers.ContentDisposition))
	w.WriteHeader(200)

	_, err := w.Write([]byte(response.Body))
	return err
}

type DownloadSubDAGRunStepLog404JSONResponse Error

func (response DownloadSubDAGRunStepLog404JSONResponse) VisitDownloadSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DownloadSubDAGRunStepLogdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DownloadSubDAGRunStepLogdefaultJSONResponse) VisitDownloadSubDAGRunStepLogResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSubDAGRunStepMessagesRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      GetSubDAGRunStepMessagesParams
}

type GetSubDAGRunStepMessagesResponseObject interface {
	VisitGetSubDAGRunStepMessagesResponse(w http.ResponseWriter) error
}

type GetSubDAGRunStepMessages200JSONResponse ChatMessagesResponse

func (response GetSubDAGRunStepMessages200JSONResponse) VisitGetSubDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunStepMessages404JSONResponse Error

func (response GetSubDAGRunStepMessages404JSONResponse) VisitGetSubDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSubDAGRunStepMessagesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSubDAGRunStepMessagesdefaultJSONResponse) VisitGetSubDAGRunStepMessagesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type PushBackSubDAGRunStepRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      PushBackSubDAGRunStepParams
	Body        *PushBackSubDAGRunStepJSONRequestBody
}

type PushBackSubDAGRunStepResponseObject interface {
	VisitPushBackSubDAGRunStepResponse(w http.ResponseWriter) error
}

type PushBackSubDAGRunStep200JSONResponse PushBackStepResponse

func (response PushBackSubDAGRunStep200JSONResponse) VisitPushBackSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type PushBackSubDAGRunStep400JSONResponse Error

func (response PushBackSubDAGRunStep400JSONResponse) VisitPushBackSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type PushBackSubDAGRunStep404JSONResponse Error

func (response PushBackSubDAGRunStep404JSONResponse) VisitPushBackSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type PushBackSubDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response PushBackSubDAGRunStepdefaultJSONResponse) VisitPushBackSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RejectSubDAGRunStepRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      RejectSubDAGRunStepParams
	Body        *RejectSubDAGRunStepJSONRequestBody
}

type RejectSubDAGRunStepResponseObject interface {
	VisitRejectSubDAGRunStepResponse(w http.ResponseWriter) error
}

type RejectSubDAGRunStep200JSONResponse RejectStepResponse

func (response RejectSubDAGRunStep200JSONResponse) VisitRejectSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RejectSubDAGRunStep400JSONResponse Error

func (response RejectSubDAGRunStep400JSONResponse) VisitRejectSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RejectSubDAGRunStep404JSONResponse Error

func (response RejectSubDAGRunStep404JSONResponse) VisitRejectSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RejectSubDAGRunStepdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RejectSubDAGRunStepdefaultJSONResponse) VisitRejectSubDAGRunStepResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateSubDAGRunStepStatusRequestObject struct {
	Name        DAGName  `json:"name"`
	DagRunId    DAGRunId `json:"dagRunId"`
	SubDAGRunId string   `json:"subDAGRunId"`
	StepName    StepName `json:"stepName"`
	Params      UpdateSubDAGRunStepStatusParams
	Body        *UpdateSubDAGRunStepStatusJSONRequestBody
}

type UpdateSubDAGRunStepStatusResponseObject interface {
	VisitUpdateSubDAGRunStepStatusResponse(w http.ResponseWriter) error
}

type UpdateSubDAGRunStepStatus200Response struct {
}

func (response UpdateSubDAGRunStepStatus200Response) VisitUpdateSubDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type UpdateSubDAGRunStepStatus400JSONResponse Error

func (response UpdateSubDAGRunStepStatus400JSONResponse) VisitUpdateSubDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSubDAGRunStepStatus404JSONResponse Error

func (response UpdateSubDAGRunStepStatus404JSONResponse) VisitUpdateSubDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSubDAGRunStepStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateSubDAGRunStepStatusdefaultJSONResponse) VisitUpdateSubDAGRunStepStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListDAGsRequestObject struct {
	Params ListDAGsParams
}

type ListDAGsResponseObject interface {
	VisitListDAGsResponse(w http.ResponseWriter) error
}

type ListDAGs200JSONResponse struct {
	// Dags List of DAG definitions with their status and metadata
	Dags []DAGFile `json:"dags"`

	// Errors List of errors encountered during the request
	Errors     []string   `json:"errors"`
	Pagination Pagination `json:"pagination"`
}

func (response ListDAGs200JSONResponse) VisitListDAGsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListDAGsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListDAGsdefaultJSONResponse) VisitListDAGsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateNewDAGRequestObject struct {
	Params CreateNewDAGParams
	Body   *CreateNewDAGJSONRequestBody
}

type CreateNewDAGResponseObject interface {
	VisitCreateNewDAGResponse(w http.ResponseWriter) error
}

type CreateNewDAG201JSONResponse struct {
	// Name Name of the newly created DAG
	Name string `json:"name"`
}

func (response CreateNewDAG201JSONResponse) VisitCreateNewDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateNewDAG400JSONResponse Error

func (response CreateNewDAG400JSONResponse) VisitCreateNewDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateNewDAGdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateNewDAGdefaultJSONResponse) VisitCreateNewDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAllDAGLabelsRequestObject struct {
	Params GetAllDAGLabelsParams
}

type GetAllDAGLabelsResponseObject interface {
	VisitGetAllDAGLabelsResponse(w http.ResponseWriter) error
}

type GetAllDAGLabels200JSONResponse ListLabelResponse

func (response GetAllDAGLabels200JSONResponse) VisitGetAllDAGLabelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAllDAGLabelsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAllDAGLabelsdefaultJSONResponse) VisitGetAllDAGLabelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SearchDAGsRequestObject struct {
	Params SearchDAGsParams
}

type SearchDAGsResponseObject interface {
	VisitSearchDAGsResponse(w http.ResponseWriter) error
}

type SearchDAGs200JSONResponse struct {
	// Errors Errors encountered during the search
	Errors []string `json:"errors"`

	// Results Search results matching the query
	Results []SearchResultItem `json:"results"`
}

func (response SearchDAGs200JSONResponse) VisitSearchDAGsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDAGsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDAGsdefaultJSONResponse) VisitSearchDAGsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAllDAGTagsRequestObject struct {
	Params GetAllDAGTagsParams
}

type GetAllDAGTagsResponseObject interface {
	VisitGetAllDAGTagsResponse(w http.ResponseWriter) error
}

type GetAllDAGTags200JSONResponse ListTagResponse

func (response GetAllDAGTags200JSONResponse) VisitGetAllDAGTagsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAllDAGTagsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAllDAGTagsdefaultJSONResponse) VisitGetAllDAGTagsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ValidateDAGSpecRequestObject struct {
	Params ValidateDAGSpecParams
	Body   *ValidateDAGSpecJSONRequestBody
}

type ValidateDAGSpecResponseObject interface {
	VisitValidateDAGSpecResponse(w http.ResponseWriter) error
}

type ValidateDAGSpec200JSONResponse struct {
	// Dag Detailed DAG configuration information
	Dag *DAGDetails `json:"dag,omitempty"`

	// Errors List of validation errors
	Errors []string `json:"errors"`

	// Valid True if the spec is valid (no errors)
	Valid bool `json:"valid"`
}

func (response ValidateDAGSpec200JSONResponse) VisitValidateDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ValidateDAGSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ValidateDAGSpecdefaultJSONResponse) VisitValidateDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDAGRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   DeleteDAGParams
}

type DeleteDAGResponseObject interface {
	VisitDeleteDAGResponse(w http.ResponseWriter) error
}

type DeleteDAG204Response struct {
}

func (response DeleteDAG204Response) VisitDeleteDAGResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDAG404JSONResponse Error

func (response DeleteDAG404JSONResponse) VisitDeleteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDAGdefaultJSONResponse) VisitDeleteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGDetailsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGDetailsParams
}

type GetDAGDetailsResponseObject interface {
	VisitGetDAGDetailsResponse(w http.ResponseWriter) error
}

type GetDAGDetails200JSONResponse struct {
	// Dag Detailed DAG configuration information
	Dag *DAGDetails `json:"dag,omitempty"`

	// EditorHints Editor-only metadata used to synthesize per-document schema hints
	EditorHints *DAGEditorHints `json:"editorHints,omitempty"`

	// Errors List of errors encountered during the request
	Errors []string `json:"errors"`

	// FilePath Absolute file path of the DAG file on disk
	FilePath *string `json:"filePath,omitempty"`

	// LatestDAGRun Detailed status of a DAG-run including sub DAG-run nodes
	LatestDAGRun DAGRunDetails `json:"latestDAGRun"`

	// LocalDags List of local DAGs that are part of this DAG
	LocalDags []LocalDag `json:"localDags"`

	// Spec The DAG specification in YAML format
	Spec *string `json:"spec,omitempty"`

	// Suspended Whether the DAG is suspended
	Suspended bool `json:"suspended"`
}

func (response GetDAGDetails200JSONResponse) VisitGetDAGDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGDetailsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGDetailsdefaultJSONResponse) VisitGetDAGDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGDAGRunHistoryRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGDAGRunHistoryParams
}

type GetDAGDAGRunHistoryResponseObject interface {
	VisitGetDAGDAGRunHistoryResponse(w http.ResponseWriter) error
}

type GetDAGDAGRunHistory200JSONResponse struct {
	// DagRuns List of historical DAG-runs created from this DAG
	DagRuns []DAGRunDetails `json:"dagRuns"`

	// GridData Grid data for visualization
	GridData []DAGGridItem `json:"gridData"`
}

func (response GetDAGDAGRunHistory200JSONResponse) VisitGetDAGDAGRunHistoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGDAGRunHistorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGDAGRunHistorydefaultJSONResponse) VisitGetDAGDAGRunHistoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGDAGRunDetailsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	DagRunId DAGRunId    `json:"dagRunId"`
	Params   GetDAGDAGRunDetailsParams
}

type GetDAGDAGRunDetailsResponseObject interface {
	VisitGetDAGDAGRunDetailsResponse(w http.ResponseWriter) error
}

type GetDAGDAGRunDetails200JSONResponse struct {
	// DagRun Detailed status of a DAG-run including sub DAG-run nodes
	DagRun DAGRunDetails `json:"dagRun"`
}

func (response GetDAGDAGRunDetails200JSONResponse) VisitGetDAGDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGDAGRunDetailsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGDAGRunDetailsdefaultJSONResponse) VisitGetDAGDAGRunDetailsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type EnqueueDAGDAGRunRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   EnqueueDAGDAGRunParams
	Body     *EnqueueDAGDAGRunJSONRequestBody
}

type EnqueueDAGDAGRunResponseObject interface {
	VisitEnqueueDAGDAGRunResponse(w http.ResponseWriter) error
}

type EnqueueDAGDAGRun200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`
}

func (response EnqueueDAGDAGRun200JSONResponse) VisitEnqueueDAGDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGDAGRun400JSONResponse Error

func (response EnqueueDAGDAGRun400JSONResponse) VisitEnqueueDAGDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGDAGRun409JSONResponse Error

func (response EnqueueDAGDAGRun409JSONResponse) VisitEnqueueDAGDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type EnqueueDAGDAGRundefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response EnqueueDAGDAGRundefaultJSONResponse) VisitEnqueueDAGDAGRunResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDAGIncidentsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   DeleteDAGIncidentsParams
}

type DeleteDAGIncidentsResponseObject interface {
	VisitDeleteDAGIncidentsResponse(w http.ResponseWriter) error
}

type DeleteDAGIncidents204Response struct {
}

func (response DeleteDAGIncidents204Response) VisitDeleteDAGIncidentsResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDAGIncidents403JSONResponse Error

func (response DeleteDAGIncidents403JSONResponse) VisitDeleteDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGIncidents404JSONResponse Error

func (response DeleteDAGIncidents404JSONResponse) VisitDeleteDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGIncidentsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDAGIncidentsdefaultJSONResponse) VisitDeleteDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGIncidentsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGIncidentsParams
}

type GetDAGIncidentsResponseObject interface {
	VisitGetDAGIncidentsResponse(w http.ResponseWriter) error
}

type GetDAGIncidents200JSONResponse IncidentPolicySet

func (response GetDAGIncidents200JSONResponse) VisitGetDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGIncidents403JSONResponse Error

func (response GetDAGIncidents403JSONResponse) VisitGetDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGIncidents404JSONResponse Error

func (response GetDAGIncidents404JSONResponse) VisitGetDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGIncidentsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGIncidentsdefaultJSONResponse) VisitGetDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDAGIncidentsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   UpdateDAGIncidentsParams
	Body     *UpdateDAGIncidentsJSONRequestBody
}

type UpdateDAGIncidentsResponseObject interface {
	VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error
}

type UpdateDAGIncidents200JSONResponse IncidentPolicySet

func (response UpdateDAGIncidents200JSONResponse) VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGIncidents400JSONResponse Error

func (response UpdateDAGIncidents400JSONResponse) VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGIncidents403JSONResponse Error

func (response UpdateDAGIncidents403JSONResponse) VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGIncidents404JSONResponse Error

func (response UpdateDAGIncidents404JSONResponse) VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGIncidentsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDAGIncidentsdefaultJSONResponse) VisitUpdateDAGIncidentsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDAGNotificationsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   DeleteDAGNotificationsParams
}

type DeleteDAGNotificationsResponseObject interface {
	VisitDeleteDAGNotificationsResponse(w http.ResponseWriter) error
}

type DeleteDAGNotifications204Response struct {
}

func (response DeleteDAGNotifications204Response) VisitDeleteDAGNotificationsResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDAGNotifications404JSONResponse Error

func (response DeleteDAGNotifications404JSONResponse) VisitDeleteDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGNotificationsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDAGNotificationsdefaultJSONResponse) VisitDeleteDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGNotificationsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGNotificationsParams
}

type GetDAGNotificationsResponseObject interface {
	VisitGetDAGNotificationsResponse(w http.ResponseWriter) error
}

type GetDAGNotifications200JSONResponse DAGNotificationSettings

func (response GetDAGNotifications200JSONResponse) VisitGetDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGNotifications404JSONResponse Error

func (response GetDAGNotifications404JSONResponse) VisitGetDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGNotificationsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGNotificationsdefaultJSONResponse) VisitGetDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDAGNotificationsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   UpdateDAGNotificationsParams
	Body     *UpdateDAGNotificationsJSONRequestBody
}

type UpdateDAGNotificationsResponseObject interface {
	VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error
}

type UpdateDAGNotifications200JSONResponse DAGNotificationSettings

func (response UpdateDAGNotifications200JSONResponse) VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGNotifications400JSONResponse Error

func (response UpdateDAGNotifications400JSONResponse) VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGNotifications403JSONResponse Error

func (response UpdateDAGNotifications403JSONResponse) VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGNotifications404JSONResponse Error

func (response UpdateDAGNotifications404JSONResponse) VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGNotificationsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDAGNotificationsdefaultJSONResponse) VisitUpdateDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type TestDAGNotificationsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   TestDAGNotificationsParams
	Body     *TestDAGNotificationsJSONRequestBody
}

type TestDAGNotificationsResponseObject interface {
	VisitTestDAGNotificationsResponse(w http.ResponseWriter) error
}

type TestDAGNotifications200JSONResponse TestDAGNotificationResponse

func (response TestDAGNotifications200JSONResponse) VisitTestDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type TestDAGNotifications400JSONResponse Error

func (response TestDAGNotifications400JSONResponse) VisitTestDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type TestDAGNotifications404JSONResponse Error

func (response TestDAGNotifications404JSONResponse) VisitTestDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type TestDAGNotificationsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response TestDAGNotificationsdefaultJSONResponse) VisitTestDAGNotificationsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RenameDAGRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   RenameDAGParams
	Body     *RenameDAGJSONRequestBody
}

type RenameDAGResponseObject interface {
	VisitRenameDAGResponse(w http.ResponseWriter) error
}

type RenameDAG200Response struct {
}

func (response RenameDAG200Response) VisitRenameDAGResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type RenameDAG400JSONResponse Error

func (response RenameDAG400JSONResponse) VisitRenameDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RenameDAG404JSONResponse Error

func (response RenameDAG404JSONResponse) VisitRenameDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RenameDAGdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RenameDAGdefaultJSONResponse) VisitRenameDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGSpecRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGSpecParams
}

type GetDAGSpecResponseObject interface {
	VisitGetDAGSpecResponse(w http.ResponseWriter) error
}

type GetDAGSpec200JSONResponse struct {
	// Dag Detailed DAG configuration information
	Dag *DAGDetails `json:"dag,omitempty"`

	// Errors List of errors in the spec
	Errors []string `json:"errors"`

	// Spec The DAG spec in YAML format
	Spec string `json:"spec"`
}

func (response GetDAGSpec200JSONResponse) VisitGetDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGSpecdefaultJSONResponse) VisitGetDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDAGSpecRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   UpdateDAGSpecParams
	Body     *UpdateDAGSpecJSONRequestBody
}

type UpdateDAGSpecResponseObject interface {
	VisitUpdateDAGSpecResponse(w http.ResponseWriter) error
}

type UpdateDAGSpec200JSONResponse struct {
	// Errors List of errors in the spec
	Errors []string `json:"errors"`
}

func (response UpdateDAGSpec200JSONResponse) VisitUpdateDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGSpecdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDAGSpecdefaultJSONResponse) VisitUpdateDAGSpecResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ExecuteDAGRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   ExecuteDAGParams
	Body     *ExecuteDAGJSONRequestBody
}

type ExecuteDAGResponseObject interface {
	VisitExecuteDAGResponse(w http.ResponseWriter) error
}

type ExecuteDAG200JSONResponse struct {
	// DagRunId Unique identifier for the DAG-run. The special value 'latest' can be used to reference the most recent DAG-run.
	DagRunId DAGRunId `json:"dagRunId"`
}

func (response ExecuteDAG200JSONResponse) VisitExecuteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAG400JSONResponse Error

func (response ExecuteDAG400JSONResponse) VisitExecuteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAG409JSONResponse Error

func (response ExecuteDAG409JSONResponse) VisitExecuteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ExecuteDAGdefaultJSONResponse) VisitExecuteDAGResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ExecuteDAGSyncRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   ExecuteDAGSyncParams
	Body     *ExecuteDAGSyncJSONRequestBody
}

type ExecuteDAGSyncResponseObject interface {
	VisitExecuteDAGSyncResponse(w http.ResponseWriter) error
}

type ExecuteDAGSync200JSONResponse struct {
	// DagRun Detailed status of a DAG-run including sub DAG-run nodes
	DagRun DAGRunDetails `json:"dagRun"`
}

func (response ExecuteDAGSync200JSONResponse) VisitExecuteDAGSyncResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGSync400JSONResponse Error

func (response ExecuteDAGSync400JSONResponse) VisitExecuteDAGSyncResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGSync408JSONResponse TimeoutError

func (response ExecuteDAGSync408JSONResponse) VisitExecuteDAGSyncResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(408)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGSync409JSONResponse Error

func (response ExecuteDAGSync409JSONResponse) VisitExecuteDAGSyncResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type ExecuteDAGSyncdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ExecuteDAGSyncdefaultJSONResponse) VisitExecuteDAGSyncResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type StopAllDAGRunsRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   StopAllDAGRunsParams
}

type StopAllDAGRunsResponseObject interface {
	VisitStopAllDAGRunsResponse(w http.ResponseWriter) error
}

type StopAllDAGRuns200JSONResponse struct {
	// Errors Errors encountered
	Errors []string `json:"errors"`
}

func (response StopAllDAGRuns200JSONResponse) VisitStopAllDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type StopAllDAGRuns404JSONResponse Error

func (response StopAllDAGRuns404JSONResponse) VisitStopAllDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type StopAllDAGRunsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response StopAllDAGRunsdefaultJSONResponse) VisitStopAllDAGRunsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDAGSuspensionStateRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   UpdateDAGSuspensionStateParams
	Body     *UpdateDAGSuspensionStateJSONRequestBody
}

type UpdateDAGSuspensionStateResponseObject interface {
	VisitUpdateDAGSuspensionStateResponse(w http.ResponseWriter) error
}

type UpdateDAGSuspensionState200Response struct {
}

func (response UpdateDAGSuspensionState200Response) VisitUpdateDAGSuspensionStateResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type UpdateDAGSuspensionState404JSONResponse Error

func (response UpdateDAGSuspensionState404JSONResponse) VisitUpdateDAGSuspensionStateResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDAGSuspensionStatedefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDAGSuspensionStatedefaultJSONResponse) VisitUpdateDAGSuspensionStateResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDAGWebhookRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   DeleteDAGWebhookParams
}

type DeleteDAGWebhookResponseObject interface {
	VisitDeleteDAGWebhookResponse(w http.ResponseWriter) error
}

type DeleteDAGWebhook204Response struct {
}

func (response DeleteDAGWebhook204Response) VisitDeleteDAGWebhookResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDAGWebhook404JSONResponse Error

func (response DeleteDAGWebhook404JSONResponse) VisitDeleteDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDAGWebhookdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDAGWebhookdefaultJSONResponse) VisitDeleteDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDAGWebhookRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   GetDAGWebhookParams
}

type GetDAGWebhookResponseObject interface {
	VisitGetDAGWebhookResponse(w http.ResponseWriter) error
}

type GetDAGWebhook200JSONResponse WebhookDetails

func (response GetDAGWebhook200JSONResponse) VisitGetDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGWebhook404JSONResponse Error

func (response GetDAGWebhook404JSONResponse) VisitGetDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDAGWebhookdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDAGWebhookdefaultJSONResponse) VisitGetDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateDAGWebhookRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   CreateDAGWebhookParams
}

type CreateDAGWebhookResponseObject interface {
	VisitCreateDAGWebhookResponse(w http.ResponseWriter) error
}

type CreateDAGWebhook201JSONResponse WebhookCreateResponse

func (response CreateDAGWebhook201JSONResponse) VisitCreateDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateDAGWebhook409JSONResponse Error

func (response CreateDAGWebhook409JSONResponse) VisitCreateDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateDAGWebhookdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateDAGWebhookdefaultJSONResponse) VisitCreateDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ConfigureDAGWebhookHMACRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   ConfigureDAGWebhookHMACParams
	Body     *ConfigureDAGWebhookHMACJSONRequestBody
}

type ConfigureDAGWebhookHMACResponseObject interface {
	VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error
}

type ConfigureDAGWebhookHMAC200JSONResponse WebhookDetails

func (response ConfigureDAGWebhookHMAC200JSONResponse) VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ConfigureDAGWebhookHMAC400JSONResponse Error

func (response ConfigureDAGWebhookHMAC400JSONResponse) VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ConfigureDAGWebhookHMAC404JSONResponse Error

func (response ConfigureDAGWebhookHMAC404JSONResponse) VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ConfigureDAGWebhookHMAC501JSONResponse Error

func (response ConfigureDAGWebhookHMAC501JSONResponse) VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(501)

	return json.NewEncoder(w).Encode(response)
}

type ConfigureDAGWebhookHMACdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ConfigureDAGWebhookHMACdefaultJSONResponse) VisitConfigureDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DisableDAGWebhookHMACRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   DisableDAGWebhookHMACParams
}

type DisableDAGWebhookHMACResponseObject interface {
	VisitDisableDAGWebhookHMACResponse(w http.ResponseWriter) error
}

type DisableDAGWebhookHMAC200JSONResponse WebhookDetails

func (response DisableDAGWebhookHMAC200JSONResponse) VisitDisableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DisableDAGWebhookHMAC404JSONResponse Error

func (response DisableDAGWebhookHMAC404JSONResponse) VisitDisableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DisableDAGWebhookHMAC501JSONResponse Error

func (response DisableDAGWebhookHMAC501JSONResponse) VisitDisableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(501)

	return json.NewEncoder(w).Encode(response)
}

type DisableDAGWebhookHMACdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DisableDAGWebhookHMACdefaultJSONResponse) VisitDisableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type EnableDAGWebhookHMACRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   EnableDAGWebhookHMACParams
	Body     *EnableDAGWebhookHMACJSONRequestBody
}

type EnableDAGWebhookHMACResponseObject interface {
	VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error
}

type EnableDAGWebhookHMAC200JSONResponse WebhookHMACSecretResponse

func (response EnableDAGWebhookHMAC200JSONResponse) VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type EnableDAGWebhookHMAC400JSONResponse Error

func (response EnableDAGWebhookHMAC400JSONResponse) VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type EnableDAGWebhookHMAC404JSONResponse Error

func (response EnableDAGWebhookHMAC404JSONResponse) VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type EnableDAGWebhookHMAC501JSONResponse Error

func (response EnableDAGWebhookHMAC501JSONResponse) VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(501)

	return json.NewEncoder(w).Encode(response)
}

type EnableDAGWebhookHMACdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response EnableDAGWebhookHMACdefaultJSONResponse) VisitEnableDAGWebhookHMACResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RegenerateDAGWebhookHMACSecretRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   RegenerateDAGWebhookHMACSecretParams
}

type RegenerateDAGWebhookHMACSecretResponseObject interface {
	VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error
}

type RegenerateDAGWebhookHMACSecret200JSONResponse WebhookHMACSecretResponse

func (response RegenerateDAGWebhookHMACSecret200JSONResponse) VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookHMACSecret400JSONResponse Error

func (response RegenerateDAGWebhookHMACSecret400JSONResponse) VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookHMACSecret404JSONResponse Error

func (response RegenerateDAGWebhookHMACSecret404JSONResponse) VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookHMACSecret501JSONResponse Error

func (response RegenerateDAGWebhookHMACSecret501JSONResponse) VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(501)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookHMACSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RegenerateDAGWebhookHMACSecretdefaultJSONResponse) VisitRegenerateDAGWebhookHMACSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RegenerateDAGWebhookTokenRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   RegenerateDAGWebhookTokenParams
}

type RegenerateDAGWebhookTokenResponseObject interface {
	VisitRegenerateDAGWebhookTokenResponse(w http.ResponseWriter) error
}

type RegenerateDAGWebhookToken200JSONResponse WebhookCreateResponse

func (response RegenerateDAGWebhookToken200JSONResponse) VisitRegenerateDAGWebhookTokenResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookToken404JSONResponse Error

func (response RegenerateDAGWebhookToken404JSONResponse) VisitRegenerateDAGWebhookTokenResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RegenerateDAGWebhookTokendefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RegenerateDAGWebhookTokendefaultJSONResponse) VisitRegenerateDAGWebhookTokenResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ToggleDAGWebhookRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   ToggleDAGWebhookParams
	Body     *ToggleDAGWebhookJSONRequestBody
}

type ToggleDAGWebhookResponseObject interface {
	VisitToggleDAGWebhookResponse(w http.ResponseWriter) error
}

type ToggleDAGWebhook200JSONResponse WebhookDetails

func (response ToggleDAGWebhook200JSONResponse) VisitToggleDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ToggleDAGWebhook404JSONResponse Error

func (response ToggleDAGWebhook404JSONResponse) VisitToggleDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ToggleDAGWebhookdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ToggleDAGWebhookdefaultJSONResponse) VisitToggleDAGWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListDocsRequestObject struct {
	Params ListDocsParams
}

type ListDocsResponseObject interface {
	VisitListDocsResponse(w http.ResponseWriter) error
}

type ListDocs200JSONResponse DocListResponse

func (response ListDocs200JSONResponse) VisitListDocsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListDocsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListDocsdefaultJSONResponse) VisitListDocsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateDocRequestObject struct {
	Params CreateDocParams
	Body   *CreateDocJSONRequestBody
}

type CreateDocResponseObject interface {
	VisitCreateDocResponse(w http.ResponseWriter) error
}

type CreateDoc201JSONResponse struct {
	Message *string `json:"message,omitempty"`
}

func (response CreateDoc201JSONResponse) VisitCreateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateDoc400JSONResponse Error

func (response CreateDoc400JSONResponse) VisitCreateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateDoc409JSONResponse Error

func (response CreateDoc409JSONResponse) VisitCreateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateDocdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateDocdefaultJSONResponse) VisitCreateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDocBatchRequestObject struct {
	Params DeleteDocBatchParams
	Body   *DeleteDocBatchJSONRequestBody
}

type DeleteDocBatchResponseObject interface {
	VisitDeleteDocBatchResponse(w http.ResponseWriter) error
}

type DeleteDocBatch200JSONResponse DocDeleteBatchResponse

func (response DeleteDocBatch200JSONResponse) VisitDeleteDocBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDocBatchdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDocBatchdefaultJSONResponse) VisitDeleteDocBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteDocRequestObject struct {
	Params DeleteDocParams
}

type DeleteDocResponseObject interface {
	VisitDeleteDocResponse(w http.ResponseWriter) error
}

type DeleteDoc204Response struct {
}

func (response DeleteDoc204Response) VisitDeleteDocResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteDoc404JSONResponse Error

func (response DeleteDoc404JSONResponse) VisitDeleteDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteDocdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteDocdefaultJSONResponse) VisitDeleteDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetDocRequestObject struct {
	Params GetDocParams
}

type GetDocResponseObject interface {
	VisitGetDocResponse(w http.ResponseWriter) error
}

type GetDoc200JSONResponse DocResponse

func (response GetDoc200JSONResponse) VisitGetDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetDoc404JSONResponse Error

func (response GetDoc404JSONResponse) VisitGetDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetDocdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetDocdefaultJSONResponse) VisitGetDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateDocRequestObject struct {
	Params UpdateDocParams
	Body   *UpdateDocJSONRequestBody
}

type UpdateDocResponseObject interface {
	VisitUpdateDocResponse(w http.ResponseWriter) error
}

type UpdateDoc200JSONResponse struct {
	Message *string `json:"message,omitempty"`
}

func (response UpdateDoc200JSONResponse) VisitUpdateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDoc404JSONResponse Error

func (response UpdateDoc404JSONResponse) VisitUpdateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateDocdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateDocdefaultJSONResponse) VisitUpdateDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type RenameDocRequestObject struct {
	Params RenameDocParams
	Body   *RenameDocJSONRequestBody
}

type RenameDocResponseObject interface {
	VisitRenameDocResponse(w http.ResponseWriter) error
}

type RenameDoc200JSONResponse struct {
	Message *string `json:"message,omitempty"`
}

func (response RenameDoc200JSONResponse) VisitRenameDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type RenameDoc404JSONResponse Error

func (response RenameDoc404JSONResponse) VisitRenameDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type RenameDoc409JSONResponse Error

func (response RenameDoc409JSONResponse) VisitRenameDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type RenameDocdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response RenameDocdefaultJSONResponse) VisitRenameDocResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SearchDocsRequestObject struct {
	Params SearchDocsParams
}

type SearchDocsResponseObject interface {
	VisitSearchDocsResponse(w http.ResponseWriter) error
}

type SearchDocs200JSONResponse DocSearchResponse

func (response SearchDocs200JSONResponse) VisitSearchDocsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocs400JSONResponse Error

func (response SearchDocs400JSONResponse) VisitSearchDocsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDocsdefaultJSONResponse) VisitSearchDocsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListEventLogsRequestObject struct {
	Params ListEventLogsParams
}

type ListEventLogsResponseObject interface {
	VisitListEventLogsResponse(w http.ResponseWriter) error
}

type ListEventLogs200JSONResponse EventLogsResponse

func (response ListEventLogs200JSONResponse) VisitListEventLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListEventLogs400JSONResponse Error

func (response ListEventLogs400JSONResponse) VisitListEventLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ListEventLogs401JSONResponse Error

func (response ListEventLogs401JSONResponse) VisitListEventLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListEventLogs403JSONResponse Error

func (response ListEventLogs403JSONResponse) VisitListEventLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListEventLogsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListEventLogsdefaultJSONResponse) VisitListEventLogsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetHealthStatusRequestObject struct {
}

type GetHealthStatusResponseObject interface {
	VisitGetHealthStatusResponse(w http.ResponseWriter) error
}

type GetHealthStatus200JSONResponse HealthResponse

func (response GetHealthStatus200JSONResponse) VisitGetHealthStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetHealthStatusdefaultResponse struct {
	StatusCode int
}

func (response GetHealthStatusdefaultResponse) VisitGetHealthStatusResponse(w http.ResponseWriter) error {
	w.WriteHeader(response.StatusCode)
	return nil
}

type ListIncidentPoliciesRequestObject struct {
	Params ListIncidentPoliciesParams
}

type ListIncidentPoliciesResponseObject interface {
	VisitListIncidentPoliciesResponse(w http.ResponseWriter) error
}

type ListIncidentPolicies200JSONResponse IncidentPolicySetListResponse

func (response ListIncidentPolicies200JSONResponse) VisitListIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListIncidentPolicies403JSONResponse Error

func (response ListIncidentPolicies403JSONResponse) VisitListIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListIncidentPoliciesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListIncidentPoliciesdefaultJSONResponse) VisitListIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetGlobalIncidentPoliciesRequestObject struct {
	Params GetGlobalIncidentPoliciesParams
}

type GetGlobalIncidentPoliciesResponseObject interface {
	VisitGetGlobalIncidentPoliciesResponse(w http.ResponseWriter) error
}

type GetGlobalIncidentPolicies200JSONResponse IncidentPolicySet

func (response GetGlobalIncidentPolicies200JSONResponse) VisitGetGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetGlobalIncidentPolicies403JSONResponse Error

func (response GetGlobalIncidentPolicies403JSONResponse) VisitGetGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetGlobalIncidentPoliciesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetGlobalIncidentPoliciesdefaultJSONResponse) VisitGetGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateGlobalIncidentPoliciesRequestObject struct {
	Params UpdateGlobalIncidentPoliciesParams
	Body   *UpdateGlobalIncidentPoliciesJSONRequestBody
}

type UpdateGlobalIncidentPoliciesResponseObject interface {
	VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error
}

type UpdateGlobalIncidentPolicies200JSONResponse IncidentPolicySet

func (response UpdateGlobalIncidentPolicies200JSONResponse) VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalIncidentPolicies400JSONResponse Error

func (response UpdateGlobalIncidentPolicies400JSONResponse) VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalIncidentPolicies403JSONResponse Error

func (response UpdateGlobalIncidentPolicies403JSONResponse) VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalIncidentPolicies404JSONResponse Error

func (response UpdateGlobalIncidentPolicies404JSONResponse) VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalIncidentPoliciesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateGlobalIncidentPoliciesdefaultJSONResponse) VisitUpdateGlobalIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetWorkspaceIncidentPoliciesRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        GetWorkspaceIncidentPoliciesParams
}

type GetWorkspaceIncidentPoliciesResponseObject interface {
	VisitGetWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error
}

type GetWorkspaceIncidentPolicies200JSONResponse IncidentPolicySet

func (response GetWorkspaceIncidentPolicies200JSONResponse) VisitGetWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceIncidentPolicies403JSONResponse Error

func (response GetWorkspaceIncidentPolicies403JSONResponse) VisitGetWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceIncidentPolicies404JSONResponse Error

func (response GetWorkspaceIncidentPolicies404JSONResponse) VisitGetWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceIncidentPoliciesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetWorkspaceIncidentPoliciesdefaultJSONResponse) VisitGetWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateWorkspaceIncidentPoliciesRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        UpdateWorkspaceIncidentPoliciesParams
	Body          *UpdateWorkspaceIncidentPoliciesJSONRequestBody
}

type UpdateWorkspaceIncidentPoliciesResponseObject interface {
	VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error
}

type UpdateWorkspaceIncidentPolicies200JSONResponse IncidentPolicySet

func (response UpdateWorkspaceIncidentPolicies200JSONResponse) VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceIncidentPolicies400JSONResponse Error

func (response UpdateWorkspaceIncidentPolicies400JSONResponse) VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceIncidentPolicies403JSONResponse Error

func (response UpdateWorkspaceIncidentPolicies403JSONResponse) VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceIncidentPolicies404JSONResponse Error

func (response UpdateWorkspaceIncidentPolicies404JSONResponse) VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceIncidentPoliciesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateWorkspaceIncidentPoliciesdefaultJSONResponse) VisitUpdateWorkspaceIncidentPoliciesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListIncidentProvidersRequestObject struct {
	Params ListIncidentProvidersParams
}

type ListIncidentProvidersResponseObject interface {
	VisitListIncidentProvidersResponse(w http.ResponseWriter) error
}

type ListIncidentProviders200JSONResponse IncidentProviderListResponse

func (response ListIncidentProviders200JSONResponse) VisitListIncidentProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListIncidentProviders403JSONResponse Error

func (response ListIncidentProviders403JSONResponse) VisitListIncidentProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListIncidentProvidersdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListIncidentProvidersdefaultJSONResponse) VisitListIncidentProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateIncidentProviderRequestObject struct {
	Params CreateIncidentProviderParams
	Body   *CreateIncidentProviderJSONRequestBody
}

type CreateIncidentProviderResponseObject interface {
	VisitCreateIncidentProviderResponse(w http.ResponseWriter) error
}

type CreateIncidentProvider201JSONResponse IncidentProvider

func (response CreateIncidentProvider201JSONResponse) VisitCreateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateIncidentProvider400JSONResponse Error

func (response CreateIncidentProvider400JSONResponse) VisitCreateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateIncidentProvider403JSONResponse Error

func (response CreateIncidentProvider403JSONResponse) VisitCreateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateIncidentProviderdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateIncidentProviderdefaultJSONResponse) VisitCreateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteIncidentProviderRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     DeleteIncidentProviderParams
}

type DeleteIncidentProviderResponseObject interface {
	VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error
}

type DeleteIncidentProvider204Response struct {
}

func (response DeleteIncidentProvider204Response) VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteIncidentProvider403JSONResponse Error

func (response DeleteIncidentProvider403JSONResponse) VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteIncidentProvider404JSONResponse Error

func (response DeleteIncidentProvider404JSONResponse) VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteIncidentProvider409JSONResponse Error

func (response DeleteIncidentProvider409JSONResponse) VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type DeleteIncidentProviderdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteIncidentProviderdefaultJSONResponse) VisitDeleteIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetIncidentProviderRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     GetIncidentProviderParams
}

type GetIncidentProviderResponseObject interface {
	VisitGetIncidentProviderResponse(w http.ResponseWriter) error
}

type GetIncidentProvider200JSONResponse IncidentProvider

func (response GetIncidentProvider200JSONResponse) VisitGetIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetIncidentProvider403JSONResponse Error

func (response GetIncidentProvider403JSONResponse) VisitGetIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetIncidentProvider404JSONResponse Error

func (response GetIncidentProvider404JSONResponse) VisitGetIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetIncidentProviderdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetIncidentProviderdefaultJSONResponse) VisitGetIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateIncidentProviderRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     UpdateIncidentProviderParams
	Body       *UpdateIncidentProviderJSONRequestBody
}

type UpdateIncidentProviderResponseObject interface {
	VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error
}

type UpdateIncidentProvider200JSONResponse IncidentProvider

func (response UpdateIncidentProvider200JSONResponse) VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateIncidentProvider400JSONResponse Error

func (response UpdateIncidentProvider400JSONResponse) VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateIncidentProvider403JSONResponse Error

func (response UpdateIncidentProvider403JSONResponse) VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateIncidentProvider404JSONResponse Error

func (response UpdateIncidentProvider404JSONResponse) VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateIncidentProviderdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateIncidentProviderdefaultJSONResponse) VisitUpdateIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type TestIncidentProviderRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     TestIncidentProviderParams
}

type TestIncidentProviderResponseObject interface {
	VisitTestIncidentProviderResponse(w http.ResponseWriter) error
}

type TestIncidentProvider200JSONResponse TestIncidentProviderResponse

func (response TestIncidentProvider200JSONResponse) VisitTestIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type TestIncidentProvider403JSONResponse Error

func (response TestIncidentProvider403JSONResponse) VisitTestIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type TestIncidentProvider404JSONResponse Error

func (response TestIncidentProvider404JSONResponse) VisitTestIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type TestIncidentProviderdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response TestIncidentProviderdefaultJSONResponse) VisitTestIncidentProviderResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ActivateLicenseRequestObject struct {
	Params ActivateLicenseParams
	Body   *ActivateLicenseJSONRequestBody
}

type ActivateLicenseResponseObject interface {
	VisitActivateLicenseResponse(w http.ResponseWriter) error
}

type ActivateLicense200JSONResponse struct {
	Expiry   *string   `json:"expiry,omitempty"`
	Features *[]string `json:"features,omitempty"`
	Plan     *string   `json:"plan,omitempty"`
}

func (response ActivateLicense200JSONResponse) VisitActivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ActivateLicense400JSONResponse Error

func (response ActivateLicense400JSONResponse) VisitActivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ActivateLicense403JSONResponse Error

func (response ActivateLicense403JSONResponse) VisitActivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ActivateLicensedefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ActivateLicensedefaultJSONResponse) VisitActivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeactivateLicenseRequestObject struct {
	Params DeactivateLicenseParams
}

type DeactivateLicenseResponseObject interface {
	VisitDeactivateLicenseResponse(w http.ResponseWriter) error
}

type DeactivateLicense200JSONResponse struct {
	Message *string `json:"message,omitempty"`
}

func (response DeactivateLicense200JSONResponse) VisitDeactivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DeactivateLicense400JSONResponse Error

func (response DeactivateLicense400JSONResponse) VisitDeactivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type DeactivateLicense403JSONResponse Error

func (response DeactivateLicense403JSONResponse) VisitDeactivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeactivateLicensedefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeactivateLicensedefaultJSONResponse) VisitDeactivateLicenseResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetMetricsRequestObject struct {
}

type GetMetricsResponseObject interface {
	VisitGetMetricsResponse(w http.ResponseWriter) error
}

type GetMetrics200TextResponse string

func (response GetMetrics200TextResponse) VisitGetMetricsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "text/plain")
	w.WriteHeader(200)

	_, err := w.Write([]byte(response))
	return err
}

type GetMetricsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetMetricsdefaultJSONResponse) VisitGetMetricsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListNotificationChannelsRequestObject struct {
	Params ListNotificationChannelsParams
}

type ListNotificationChannelsResponseObject interface {
	VisitListNotificationChannelsResponse(w http.ResponseWriter) error
}

type ListNotificationChannels200JSONResponse NotificationChannelListResponse

func (response ListNotificationChannels200JSONResponse) VisitListNotificationChannelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListNotificationChannels403JSONResponse Error

func (response ListNotificationChannels403JSONResponse) VisitListNotificationChannelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListNotificationChannelsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListNotificationChannelsdefaultJSONResponse) VisitListNotificationChannelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateNotificationChannelRequestObject struct {
	Params CreateNotificationChannelParams
	Body   *CreateNotificationChannelJSONRequestBody
}

type CreateNotificationChannelResponseObject interface {
	VisitCreateNotificationChannelResponse(w http.ResponseWriter) error
}

type CreateNotificationChannel201JSONResponse NotificationChannel

func (response CreateNotificationChannel201JSONResponse) VisitCreateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateNotificationChannel400JSONResponse Error

func (response CreateNotificationChannel400JSONResponse) VisitCreateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateNotificationChannel403JSONResponse Error

func (response CreateNotificationChannel403JSONResponse) VisitCreateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateNotificationChanneldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateNotificationChanneldefaultJSONResponse) VisitCreateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteNotificationChannelRequestObject struct {
	ChannelId string `json:"channelId"`
	Params    DeleteNotificationChannelParams
}

type DeleteNotificationChannelResponseObject interface {
	VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error
}

type DeleteNotificationChannel204Response struct {
}

func (response DeleteNotificationChannel204Response) VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteNotificationChannel403JSONResponse Error

func (response DeleteNotificationChannel403JSONResponse) VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteNotificationChannel404JSONResponse Error

func (response DeleteNotificationChannel404JSONResponse) VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteNotificationChannel409JSONResponse Error

func (response DeleteNotificationChannel409JSONResponse) VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type DeleteNotificationChanneldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteNotificationChanneldefaultJSONResponse) VisitDeleteNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetNotificationChannelRequestObject struct {
	ChannelId string `json:"channelId"`
	Params    GetNotificationChannelParams
}

type GetNotificationChannelResponseObject interface {
	VisitGetNotificationChannelResponse(w http.ResponseWriter) error
}

type GetNotificationChannel200JSONResponse NotificationChannel

func (response GetNotificationChannel200JSONResponse) VisitGetNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetNotificationChannel403JSONResponse Error

func (response GetNotificationChannel403JSONResponse) VisitGetNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetNotificationChannel404JSONResponse Error

func (response GetNotificationChannel404JSONResponse) VisitGetNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetNotificationChanneldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetNotificationChanneldefaultJSONResponse) VisitGetNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateNotificationChannelRequestObject struct {
	ChannelId string `json:"channelId"`
	Params    UpdateNotificationChannelParams
	Body      *UpdateNotificationChannelJSONRequestBody
}

type UpdateNotificationChannelResponseObject interface {
	VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error
}

type UpdateNotificationChannel200JSONResponse NotificationChannel

func (response UpdateNotificationChannel200JSONResponse) VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationChannel400JSONResponse Error

func (response UpdateNotificationChannel400JSONResponse) VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationChannel403JSONResponse Error

func (response UpdateNotificationChannel403JSONResponse) VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationChannel404JSONResponse Error

func (response UpdateNotificationChannel404JSONResponse) VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationChanneldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateNotificationChanneldefaultJSONResponse) VisitUpdateNotificationChannelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListNotificationRoutesRequestObject struct {
	Params ListNotificationRoutesParams
}

type ListNotificationRoutesResponseObject interface {
	VisitListNotificationRoutesResponse(w http.ResponseWriter) error
}

type ListNotificationRoutes200JSONResponse NotificationRouteSetListResponse

func (response ListNotificationRoutes200JSONResponse) VisitListNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListNotificationRoutes403JSONResponse Error

func (response ListNotificationRoutes403JSONResponse) VisitListNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListNotificationRoutesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListNotificationRoutesdefaultJSONResponse) VisitListNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetGlobalNotificationRoutesRequestObject struct {
	Params GetGlobalNotificationRoutesParams
}

type GetGlobalNotificationRoutesResponseObject interface {
	VisitGetGlobalNotificationRoutesResponse(w http.ResponseWriter) error
}

type GetGlobalNotificationRoutes200JSONResponse NotificationRouteSet

func (response GetGlobalNotificationRoutes200JSONResponse) VisitGetGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetGlobalNotificationRoutes403JSONResponse Error

func (response GetGlobalNotificationRoutes403JSONResponse) VisitGetGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetGlobalNotificationRoutesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetGlobalNotificationRoutesdefaultJSONResponse) VisitGetGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateGlobalNotificationRoutesRequestObject struct {
	Params UpdateGlobalNotificationRoutesParams
	Body   *UpdateGlobalNotificationRoutesJSONRequestBody
}

type UpdateGlobalNotificationRoutesResponseObject interface {
	VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error
}

type UpdateGlobalNotificationRoutes200JSONResponse NotificationRouteSet

func (response UpdateGlobalNotificationRoutes200JSONResponse) VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalNotificationRoutes400JSONResponse Error

func (response UpdateGlobalNotificationRoutes400JSONResponse) VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalNotificationRoutes403JSONResponse Error

func (response UpdateGlobalNotificationRoutes403JSONResponse) VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalNotificationRoutes404JSONResponse Error

func (response UpdateGlobalNotificationRoutes404JSONResponse) VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateGlobalNotificationRoutesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateGlobalNotificationRoutesdefaultJSONResponse) VisitUpdateGlobalNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetWorkspaceNotificationRoutesRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        GetWorkspaceNotificationRoutesParams
}

type GetWorkspaceNotificationRoutesResponseObject interface {
	VisitGetWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error
}

type GetWorkspaceNotificationRoutes200JSONResponse NotificationRouteSet

func (response GetWorkspaceNotificationRoutes200JSONResponse) VisitGetWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceNotificationRoutes403JSONResponse Error

func (response GetWorkspaceNotificationRoutes403JSONResponse) VisitGetWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceNotificationRoutes404JSONResponse Error

func (response GetWorkspaceNotificationRoutes404JSONResponse) VisitGetWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceNotificationRoutesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetWorkspaceNotificationRoutesdefaultJSONResponse) VisitGetWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateWorkspaceNotificationRoutesRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        UpdateWorkspaceNotificationRoutesParams
	Body          *UpdateWorkspaceNotificationRoutesJSONRequestBody
}

type UpdateWorkspaceNotificationRoutesResponseObject interface {
	VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error
}

type UpdateWorkspaceNotificationRoutes200JSONResponse NotificationRouteSet

func (response UpdateWorkspaceNotificationRoutes200JSONResponse) VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceNotificationRoutes400JSONResponse Error

func (response UpdateWorkspaceNotificationRoutes400JSONResponse) VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceNotificationRoutes403JSONResponse Error

func (response UpdateWorkspaceNotificationRoutes403JSONResponse) VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceNotificationRoutes404JSONResponse Error

func (response UpdateWorkspaceNotificationRoutes404JSONResponse) VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceNotificationRoutesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateWorkspaceNotificationRoutesdefaultJSONResponse) VisitUpdateWorkspaceNotificationRoutesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetNotificationSettingsRequestObject struct {
	Params GetNotificationSettingsParams
}

type GetNotificationSettingsResponseObject interface {
	VisitGetNotificationSettingsResponse(w http.ResponseWriter) error
}

type GetNotificationSettings200JSONResponse NotificationWorkspaceSettings

func (response GetNotificationSettings200JSONResponse) VisitGetNotificationSettingsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetNotificationSettingsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetNotificationSettingsdefaultJSONResponse) VisitGetNotificationSettingsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateNotificationSettingsRequestObject struct {
	Params UpdateNotificationSettingsParams
	Body   *UpdateNotificationSettingsJSONRequestBody
}

type UpdateNotificationSettingsResponseObject interface {
	VisitUpdateNotificationSettingsResponse(w http.ResponseWriter) error
}

type UpdateNotificationSettings200JSONResponse NotificationWorkspaceSettings

func (response UpdateNotificationSettings200JSONResponse) VisitUpdateNotificationSettingsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationSettings400JSONResponse Error

func (response UpdateNotificationSettings400JSONResponse) VisitUpdateNotificationSettingsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateNotificationSettingsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateNotificationSettingsdefaultJSONResponse) VisitUpdateNotificationSettingsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetOpenapiJsonRequestObject struct {
}

type GetOpenapiJsonResponseObject interface {
	VisitGetOpenapiJsonResponse(w http.ResponseWriter) error
}

type GetOpenapiJson200JSONResponse map[string]interface{}

func (response GetOpenapiJson200JSONResponse) VisitGetOpenapiJsonResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetOpenapiJson401JSONResponse Error

func (response GetOpenapiJson401JSONResponse) VisitGetOpenapiJsonResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetOpenapiJsondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetOpenapiJsondefaultJSONResponse) VisitGetOpenapiJsonResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListQueuesRequestObject struct {
	Params ListQueuesParams
}

type ListQueuesResponseObject interface {
	VisitListQueuesResponse(w http.ResponseWriter) error
}

type ListQueues200JSONResponse QueuesResponse

func (response ListQueues200JSONResponse) VisitListQueuesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListQueuesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListQueuesdefaultJSONResponse) VisitListQueuesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetQueueRequestObject struct {
	Name   string `json:"name"`
	Params GetQueueParams
}

type GetQueueResponseObject interface {
	VisitGetQueueResponse(w http.ResponseWriter) error
}

type GetQueue200JSONResponse Queue

func (response GetQueue200JSONResponse) VisitGetQueueResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetQueue404JSONResponse Error

func (response GetQueue404JSONResponse) VisitGetQueueResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetQueuedefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetQueuedefaultJSONResponse) VisitGetQueueResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListQueueItemsRequestObject struct {
	Name   string `json:"name"`
	Params ListQueueItemsParams
}

type ListQueueItemsResponseObject interface {
	VisitListQueueItemsResponse(w http.ResponseWriter) error
}

type ListQueueItems200JSONResponse QueuedDAGRunsPageResponse

func (response ListQueueItems200JSONResponse) VisitListQueueItemsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListQueueItems400JSONResponse Error

func (response ListQueueItems400JSONResponse) VisitListQueueItemsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ListQueueItemsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListQueueItemsdefaultJSONResponse) VisitListQueueItemsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListRemoteNodesRequestObject struct {
	Params ListRemoteNodesParams
}

type ListRemoteNodesResponseObject interface {
	VisitListRemoteNodesResponse(w http.ResponseWriter) error
}

type ListRemoteNodes200JSONResponse RemoteNodeListResponse

func (response ListRemoteNodes200JSONResponse) VisitListRemoteNodesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListRemoteNodes403JSONResponse Error

func (response ListRemoteNodes403JSONResponse) VisitListRemoteNodesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateRemoteNodeRequestObject struct {
	Params CreateRemoteNodeParams
	Body   *CreateRemoteNodeJSONRequestBody
}

type CreateRemoteNodeResponseObject interface {
	VisitCreateRemoteNodeResponse(w http.ResponseWriter) error
}

type CreateRemoteNode201JSONResponse RemoteNodeResponse

func (response CreateRemoteNode201JSONResponse) VisitCreateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateRemoteNode400JSONResponse Error

func (response CreateRemoteNode400JSONResponse) VisitCreateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateRemoteNode409JSONResponse Error

func (response CreateRemoteNode409JSONResponse) VisitCreateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type DeleteRemoteNodeRequestObject struct {
	RemoteNodeId RemoteNodeId `json:"remoteNodeId"`
	Params       DeleteRemoteNodeParams
}

type DeleteRemoteNodeResponseObject interface {
	VisitDeleteRemoteNodeResponse(w http.ResponseWriter) error
}

type DeleteRemoteNode204Response struct {
}

func (response DeleteRemoteNode204Response) VisitDeleteRemoteNodeResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteRemoteNode403JSONResponse Error

func (response DeleteRemoteNode403JSONResponse) VisitDeleteRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteRemoteNode404JSONResponse Error

func (response DeleteRemoteNode404JSONResponse) VisitDeleteRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetRemoteNodeRequestObject struct {
	RemoteNodeId RemoteNodeId `json:"remoteNodeId"`
	Params       GetRemoteNodeParams
}

type GetRemoteNodeResponseObject interface {
	VisitGetRemoteNodeResponse(w http.ResponseWriter) error
}

type GetRemoteNode200JSONResponse RemoteNodeResponse

func (response GetRemoteNode200JSONResponse) VisitGetRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetRemoteNode404JSONResponse Error

func (response GetRemoteNode404JSONResponse) VisitGetRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateRemoteNodeRequestObject struct {
	RemoteNodeId RemoteNodeId `json:"remoteNodeId"`
	Params       UpdateRemoteNodeParams
	Body         *UpdateRemoteNodeJSONRequestBody
}

type UpdateRemoteNodeResponseObject interface {
	VisitUpdateRemoteNodeResponse(w http.ResponseWriter) error
}

type UpdateRemoteNode200JSONResponse RemoteNodeResponse

func (response UpdateRemoteNode200JSONResponse) VisitUpdateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateRemoteNode403JSONResponse Error

func (response UpdateRemoteNode403JSONResponse) VisitUpdateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateRemoteNode404JSONResponse Error

func (response UpdateRemoteNode404JSONResponse) VisitUpdateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateRemoteNode409JSONResponse Error

func (response UpdateRemoteNode409JSONResponse) VisitUpdateRemoteNodeResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type TestRemoteNodeConnectionRequestObject struct {
	RemoteNodeId RemoteNodeId `json:"remoteNodeId"`
	Params       TestRemoteNodeConnectionParams
}

type TestRemoteNodeConnectionResponseObject interface {
	VisitTestRemoteNodeConnectionResponse(w http.ResponseWriter) error
}

type TestRemoteNodeConnection200JSONResponse TestRemoteNodeConnectionResponse

func (response TestRemoteNodeConnection200JSONResponse) VisitTestRemoteNodeConnectionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type TestRemoteNodeConnection404JSONResponse Error

func (response TestRemoteNodeConnection404JSONResponse) VisitTestRemoteNodeConnectionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type SearchDAGFeedRequestObject struct {
	Params SearchDAGFeedParams
}

type SearchDAGFeedResponseObject interface {
	VisitSearchDAGFeedResponse(w http.ResponseWriter) error
}

type SearchDAGFeed200JSONResponse DAGSearchFeedResponse

func (response SearchDAGFeed200JSONResponse) VisitSearchDAGFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDAGFeed400JSONResponse Error

func (response SearchDAGFeed400JSONResponse) VisitSearchDAGFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SearchDAGFeeddefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDAGFeeddefaultJSONResponse) VisitSearchDAGFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SearchDagMatchesRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   SearchDagMatchesParams
}

type SearchDagMatchesResponseObject interface {
	VisitSearchDagMatchesResponse(w http.ResponseWriter) error
}

type SearchDagMatches200JSONResponse SearchMatchesResponse

func (response SearchDagMatches200JSONResponse) VisitSearchDagMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDagMatches400JSONResponse Error

func (response SearchDagMatches400JSONResponse) VisitSearchDagMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SearchDagMatches404JSONResponse Error

func (response SearchDagMatches404JSONResponse) VisitSearchDagMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type SearchDagMatchesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDagMatchesdefaultJSONResponse) VisitSearchDagMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SearchDocFeedRequestObject struct {
	Params SearchDocFeedParams
}

type SearchDocFeedResponseObject interface {
	VisitSearchDocFeedResponse(w http.ResponseWriter) error
}

type SearchDocFeed200JSONResponse DocSearchFeedResponse

func (response SearchDocFeed200JSONResponse) VisitSearchDocFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocFeed400JSONResponse Error

func (response SearchDocFeed400JSONResponse) VisitSearchDocFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocFeeddefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDocFeeddefaultJSONResponse) VisitSearchDocFeedResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SearchDocMatchesRequestObject struct {
	Params SearchDocMatchesParams
}

type SearchDocMatchesResponseObject interface {
	VisitSearchDocMatchesResponse(w http.ResponseWriter) error
}

type SearchDocMatches200JSONResponse SearchMatchesResponse

func (response SearchDocMatches200JSONResponse) VisitSearchDocMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocMatches400JSONResponse Error

func (response SearchDocMatches400JSONResponse) VisitSearchDocMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocMatches404JSONResponse Error

func (response SearchDocMatches404JSONResponse) VisitSearchDocMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type SearchDocMatchesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SearchDocMatchesdefaultJSONResponse) VisitSearchDocMatchesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListSecretsRequestObject struct {
	Params ListSecretsParams
}

type ListSecretsResponseObject interface {
	VisitListSecretsResponse(w http.ResponseWriter) error
}

type ListSecrets200JSONResponse SecretListResponse

func (response ListSecrets200JSONResponse) VisitListSecretsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListSecrets401JSONResponse Error

func (response ListSecrets401JSONResponse) VisitListSecretsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListSecrets403JSONResponse Error

func (response ListSecrets403JSONResponse) VisitListSecretsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListSecretsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListSecretsdefaultJSONResponse) VisitListSecretsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateSecretRequestObject struct {
	Params CreateSecretParams
	Body   *CreateSecretJSONRequestBody
}

type CreateSecretResponseObject interface {
	VisitCreateSecretResponse(w http.ResponseWriter) error
}

type CreateSecret201JSONResponse SecretResponse

func (response CreateSecret201JSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateSecret400JSONResponse Error

func (response CreateSecret400JSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateSecret401JSONResponse Error

func (response CreateSecret401JSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateSecret403JSONResponse Error

func (response CreateSecret403JSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateSecret409JSONResponse Error

func (response CreateSecret409JSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateSecretdefaultJSONResponse) VisitCreateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteSecretRequestObject struct {
	SecretId string `json:"secretId"`
	Params   DeleteSecretParams
}

type DeleteSecretResponseObject interface {
	VisitDeleteSecretResponse(w http.ResponseWriter) error
}

type DeleteSecret204Response struct {
}

func (response DeleteSecret204Response) VisitDeleteSecretResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteSecret401JSONResponse Error

func (response DeleteSecret401JSONResponse) VisitDeleteSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSecret403JSONResponse Error

func (response DeleteSecret403JSONResponse) VisitDeleteSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSecret404JSONResponse Error

func (response DeleteSecret404JSONResponse) VisitDeleteSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteSecretdefaultJSONResponse) VisitDeleteSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSecretRequestObject struct {
	SecretId string `json:"secretId"`
	Params   GetSecretParams
}

type GetSecretResponseObject interface {
	VisitGetSecretResponse(w http.ResponseWriter) error
}

type GetSecret200JSONResponse SecretResponse

func (response GetSecret200JSONResponse) VisitGetSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSecret401JSONResponse Error

func (response GetSecret401JSONResponse) VisitGetSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetSecret403JSONResponse Error

func (response GetSecret403JSONResponse) VisitGetSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetSecret404JSONResponse Error

func (response GetSecret404JSONResponse) VisitGetSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSecretdefaultJSONResponse) VisitGetSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateSecretRequestObject struct {
	SecretId string `json:"secretId"`
	Params   UpdateSecretParams
	Body     *UpdateSecretJSONRequestBody
}

type UpdateSecretResponseObject interface {
	VisitUpdateSecretResponse(w http.ResponseWriter) error
}

type UpdateSecret200JSONResponse SecretResponse

func (response UpdateSecret200JSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSecret400JSONResponse Error

func (response UpdateSecret400JSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSecret401JSONResponse Error

func (response UpdateSecret401JSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSecret403JSONResponse Error

func (response UpdateSecret403JSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSecret404JSONResponse Error

func (response UpdateSecret404JSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateSecretdefaultJSONResponse) VisitUpdateSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DisableSecretRequestObject struct {
	SecretId string `json:"secretId"`
	Params   DisableSecretParams
}

type DisableSecretResponseObject interface {
	VisitDisableSecretResponse(w http.ResponseWriter) error
}

type DisableSecret200JSONResponse SecretResponse

func (response DisableSecret200JSONResponse) VisitDisableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DisableSecret401JSONResponse Error

func (response DisableSecret401JSONResponse) VisitDisableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DisableSecret403JSONResponse Error

func (response DisableSecret403JSONResponse) VisitDisableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DisableSecret404JSONResponse Error

func (response DisableSecret404JSONResponse) VisitDisableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DisableSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DisableSecretdefaultJSONResponse) VisitDisableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type EnableSecretRequestObject struct {
	SecretId string `json:"secretId"`
	Params   EnableSecretParams
}

type EnableSecretResponseObject interface {
	VisitEnableSecretResponse(w http.ResponseWriter) error
}

type EnableSecret200JSONResponse SecretResponse

func (response EnableSecret200JSONResponse) VisitEnableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type EnableSecret401JSONResponse Error

func (response EnableSecret401JSONResponse) VisitEnableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type EnableSecret403JSONResponse Error

func (response EnableSecret403JSONResponse) VisitEnableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type EnableSecret404JSONResponse Error

func (response EnableSecret404JSONResponse) VisitEnableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type EnableSecretdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response EnableSecretdefaultJSONResponse) VisitEnableSecretResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type WriteSecretVersionRequestObject struct {
	SecretId string `json:"secretId"`
	Params   WriteSecretVersionParams
	Body     *WriteSecretVersionJSONRequestBody
}

type WriteSecretVersionResponseObject interface {
	VisitWriteSecretVersionResponse(w http.ResponseWriter) error
}

type WriteSecretVersion200JSONResponse SecretResponse

func (response WriteSecretVersion200JSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type WriteSecretVersion400JSONResponse Error

func (response WriteSecretVersion400JSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type WriteSecretVersion401JSONResponse Error

func (response WriteSecretVersion401JSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type WriteSecretVersion403JSONResponse Error

func (response WriteSecretVersion403JSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type WriteSecretVersion404JSONResponse Error

func (response WriteSecretVersion404JSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type WriteSecretVersiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response WriteSecretVersiondefaultJSONResponse) VisitWriteSecretVersionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetCoordinatorStatusRequestObject struct {
	Params GetCoordinatorStatusParams
}

type GetCoordinatorStatusResponseObject interface {
	VisitGetCoordinatorStatusResponse(w http.ResponseWriter) error
}

type GetCoordinatorStatus200JSONResponse CoordinatorStatusResponse

func (response GetCoordinatorStatus200JSONResponse) VisitGetCoordinatorStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetCoordinatorStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetCoordinatorStatusdefaultJSONResponse) VisitGetCoordinatorStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetResourceHistoryRequestObject struct {
	Params GetResourceHistoryParams
}

type GetResourceHistoryResponseObject interface {
	VisitGetResourceHistoryResponse(w http.ResponseWriter) error
}

type GetResourceHistory200JSONResponse ResourceHistory

func (response GetResourceHistory200JSONResponse) VisitGetResourceHistoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetResourceHistorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetResourceHistorydefaultJSONResponse) VisitGetResourceHistoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSchedulerStatusRequestObject struct {
	Params GetSchedulerStatusParams
}

type GetSchedulerStatusResponseObject interface {
	VisitGetSchedulerStatusResponse(w http.ResponseWriter) error
}

type GetSchedulerStatus200JSONResponse SchedulerStatusResponse

func (response GetSchedulerStatus200JSONResponse) VisitGetSchedulerStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSchedulerStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSchedulerStatusdefaultJSONResponse) VisitGetSchedulerStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetTunnelStatusRequestObject struct {
	Params GetTunnelStatusParams
}

type GetTunnelStatusResponseObject interface {
	VisitGetTunnelStatusResponse(w http.ResponseWriter) error
}

type GetTunnelStatus200JSONResponse TunnelStatusResponse

func (response GetTunnelStatus200JSONResponse) VisitGetTunnelStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetTunnelStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetTunnelStatusdefaultJSONResponse) VisitGetTunnelStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAgentConfigRequestObject struct {
	Params GetAgentConfigParams
}

type GetAgentConfigResponseObject interface {
	VisitGetAgentConfigResponse(w http.ResponseWriter) error
}

type GetAgentConfig200JSONResponse AgentConfigResponse

func (response GetAgentConfig200JSONResponse) VisitGetAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentConfig401JSONResponse Error

func (response GetAgentConfig401JSONResponse) VisitGetAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentConfig403JSONResponse Error

func (response GetAgentConfig403JSONResponse) VisitGetAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAgentConfigdefaultJSONResponse) VisitGetAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAgentConfigRequestObject struct {
	Params UpdateAgentConfigParams
	Body   *UpdateAgentConfigJSONRequestBody
}

type UpdateAgentConfigResponseObject interface {
	VisitUpdateAgentConfigResponse(w http.ResponseWriter) error
}

type UpdateAgentConfig200JSONResponse AgentConfigResponse

func (response UpdateAgentConfig200JSONResponse) VisitUpdateAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentConfig400JSONResponse Error

func (response UpdateAgentConfig400JSONResponse) VisitUpdateAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentConfig401JSONResponse Error

func (response UpdateAgentConfig401JSONResponse) VisitUpdateAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentConfig403JSONResponse Error

func (response UpdateAgentConfig403JSONResponse) VisitUpdateAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAgentConfigdefaultJSONResponse) VisitUpdateAgentConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAgentAuthProvidersRequestObject struct {
	Params ListAgentAuthProvidersParams
}

type ListAgentAuthProvidersResponseObject interface {
	VisitListAgentAuthProvidersResponse(w http.ResponseWriter) error
}

type ListAgentAuthProviders200JSONResponse ListAgentAuthProvidersResponse

func (response ListAgentAuthProviders200JSONResponse) VisitListAgentAuthProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentAuthProviders401JSONResponse Error

func (response ListAgentAuthProviders401JSONResponse) VisitListAgentAuthProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentAuthProviders403JSONResponse Error

func (response ListAgentAuthProviders403JSONResponse) VisitListAgentAuthProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentAuthProvidersdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAgentAuthProvidersdefaultJSONResponse) VisitListAgentAuthProvidersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DisconnectAgentAuthProviderLoginRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     DisconnectAgentAuthProviderLoginParams
}

type DisconnectAgentAuthProviderLoginResponseObject interface {
	VisitDisconnectAgentAuthProviderLoginResponse(w http.ResponseWriter) error
}

type DisconnectAgentAuthProviderLogin204Response struct {
}

func (response DisconnectAgentAuthProviderLogin204Response) VisitDisconnectAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DisconnectAgentAuthProviderLogin401JSONResponse Error

func (response DisconnectAgentAuthProviderLogin401JSONResponse) VisitDisconnectAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DisconnectAgentAuthProviderLogin403JSONResponse Error

func (response DisconnectAgentAuthProviderLogin403JSONResponse) VisitDisconnectAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DisconnectAgentAuthProviderLogindefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DisconnectAgentAuthProviderLogindefaultJSONResponse) VisitDisconnectAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type StartAgentAuthProviderLoginRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     StartAgentAuthProviderLoginParams
}

type StartAgentAuthProviderLoginResponseObject interface {
	VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error
}

type StartAgentAuthProviderLogin200JSONResponse StartAgentAuthProviderLoginResponse

func (response StartAgentAuthProviderLogin200JSONResponse) VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type StartAgentAuthProviderLogin400JSONResponse Error

func (response StartAgentAuthProviderLogin400JSONResponse) VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type StartAgentAuthProviderLogin401JSONResponse Error

func (response StartAgentAuthProviderLogin401JSONResponse) VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type StartAgentAuthProviderLogin403JSONResponse Error

func (response StartAgentAuthProviderLogin403JSONResponse) VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type StartAgentAuthProviderLogindefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response StartAgentAuthProviderLogindefaultJSONResponse) VisitStartAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CompleteAgentAuthProviderLoginRequestObject struct {
	ProviderId string `json:"providerId"`
	Params     CompleteAgentAuthProviderLoginParams
	Body       *CompleteAgentAuthProviderLoginJSONRequestBody
}

type CompleteAgentAuthProviderLoginResponseObject interface {
	VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error
}

type CompleteAgentAuthProviderLogin200JSONResponse CompleteAgentAuthProviderLoginResponse

func (response CompleteAgentAuthProviderLogin200JSONResponse) VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type CompleteAgentAuthProviderLogin400JSONResponse Error

func (response CompleteAgentAuthProviderLogin400JSONResponse) VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CompleteAgentAuthProviderLogin401JSONResponse Error

func (response CompleteAgentAuthProviderLogin401JSONResponse) VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CompleteAgentAuthProviderLogin403JSONResponse Error

func (response CompleteAgentAuthProviderLogin403JSONResponse) VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CompleteAgentAuthProviderLogindefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CompleteAgentAuthProviderLogindefaultJSONResponse) VisitCompleteAgentAuthProviderLoginResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SetDefaultAgentModelRequestObject struct {
	Params SetDefaultAgentModelParams
	Body   *SetDefaultAgentModelJSONRequestBody
}

type SetDefaultAgentModelResponseObject interface {
	VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error
}

type SetDefaultAgentModel200JSONResponse SetDefaultModelResponse

func (response SetDefaultAgentModel200JSONResponse) VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SetDefaultAgentModel401JSONResponse Error

func (response SetDefaultAgentModel401JSONResponse) VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type SetDefaultAgentModel403JSONResponse Error

func (response SetDefaultAgentModel403JSONResponse) VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type SetDefaultAgentModel404JSONResponse Error

func (response SetDefaultAgentModel404JSONResponse) VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type SetDefaultAgentModeldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SetDefaultAgentModeldefaultJSONResponse) VisitSetDefaultAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteAgentMemoryRequestObject struct {
	Params DeleteAgentMemoryParams
}

type DeleteAgentMemoryResponseObject interface {
	VisitDeleteAgentMemoryResponse(w http.ResponseWriter) error
}

type DeleteAgentMemory200Response struct {
}

func (response DeleteAgentMemory200Response) VisitDeleteAgentMemoryResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type DeleteAgentMemory401JSONResponse Error

func (response DeleteAgentMemory401JSONResponse) VisitDeleteAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentMemory403JSONResponse Error

func (response DeleteAgentMemory403JSONResponse) VisitDeleteAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteAgentMemorydefaultJSONResponse) VisitDeleteAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAgentMemoryRequestObject struct {
	Params GetAgentMemoryParams
}

type GetAgentMemoryResponseObject interface {
	VisitGetAgentMemoryResponse(w http.ResponseWriter) error
}

type GetAgentMemory200JSONResponse AgentMemoryResponse

func (response GetAgentMemory200JSONResponse) VisitGetAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentMemory401JSONResponse Error

func (response GetAgentMemory401JSONResponse) VisitGetAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentMemory403JSONResponse Error

func (response GetAgentMemory403JSONResponse) VisitGetAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAgentMemorydefaultJSONResponse) VisitGetAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAgentMemoryRequestObject struct {
	Params UpdateAgentMemoryParams
	Body   *UpdateAgentMemoryJSONRequestBody
}

type UpdateAgentMemoryResponseObject interface {
	VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error
}

type UpdateAgentMemory200Response struct {
}

func (response UpdateAgentMemory200Response) VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type UpdateAgentMemory400JSONResponse Error

func (response UpdateAgentMemory400JSONResponse) VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentMemory401JSONResponse Error

func (response UpdateAgentMemory401JSONResponse) VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentMemory403JSONResponse Error

func (response UpdateAgentMemory403JSONResponse) VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAgentMemorydefaultJSONResponse) VisitUpdateAgentMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteAgentDAGMemoryRequestObject struct {
	DagName DAGName `json:"dagName"`
	Params  DeleteAgentDAGMemoryParams
}

type DeleteAgentDAGMemoryResponseObject interface {
	VisitDeleteAgentDAGMemoryResponse(w http.ResponseWriter) error
}

type DeleteAgentDAGMemory200Response struct {
}

func (response DeleteAgentDAGMemory200Response) VisitDeleteAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type DeleteAgentDAGMemory401JSONResponse Error

func (response DeleteAgentDAGMemory401JSONResponse) VisitDeleteAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentDAGMemory403JSONResponse Error

func (response DeleteAgentDAGMemory403JSONResponse) VisitDeleteAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentDAGMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteAgentDAGMemorydefaultJSONResponse) VisitDeleteAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAgentDAGMemoryRequestObject struct {
	DagName DAGName `json:"dagName"`
	Params  GetAgentDAGMemoryParams
}

type GetAgentDAGMemoryResponseObject interface {
	VisitGetAgentDAGMemoryResponse(w http.ResponseWriter) error
}

type GetAgentDAGMemory200JSONResponse AgentDAGMemoryResponse

func (response GetAgentDAGMemory200JSONResponse) VisitGetAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentDAGMemory401JSONResponse Error

func (response GetAgentDAGMemory401JSONResponse) VisitGetAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentDAGMemory403JSONResponse Error

func (response GetAgentDAGMemory403JSONResponse) VisitGetAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentDAGMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAgentDAGMemorydefaultJSONResponse) VisitGetAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAgentDAGMemoryRequestObject struct {
	DagName DAGName `json:"dagName"`
	Params  UpdateAgentDAGMemoryParams
	Body    *UpdateAgentDAGMemoryJSONRequestBody
}

type UpdateAgentDAGMemoryResponseObject interface {
	VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error
}

type UpdateAgentDAGMemory200Response struct {
}

func (response UpdateAgentDAGMemory200Response) VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.WriteHeader(200)
	return nil
}

type UpdateAgentDAGMemory400JSONResponse Error

func (response UpdateAgentDAGMemory400JSONResponse) VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentDAGMemory401JSONResponse Error

func (response UpdateAgentDAGMemory401JSONResponse) VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentDAGMemory403JSONResponse Error

func (response UpdateAgentDAGMemory403JSONResponse) VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentDAGMemorydefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAgentDAGMemorydefaultJSONResponse) VisitUpdateAgentDAGMemoryResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListModelPresetsRequestObject struct {
	Params ListModelPresetsParams
}

type ListModelPresetsResponseObject interface {
	VisitListModelPresetsResponse(w http.ResponseWriter) error
}

type ListModelPresets200JSONResponse ListModelPresetsResponse

func (response ListModelPresets200JSONResponse) VisitListModelPresetsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListModelPresets401JSONResponse Error

func (response ListModelPresets401JSONResponse) VisitListModelPresetsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListModelPresets403JSONResponse Error

func (response ListModelPresets403JSONResponse) VisitListModelPresetsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListModelPresetsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListModelPresetsdefaultJSONResponse) VisitListModelPresetsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAgentModelsRequestObject struct {
	Params ListAgentModelsParams
}

type ListAgentModelsResponseObject interface {
	VisitListAgentModelsResponse(w http.ResponseWriter) error
}

type ListAgentModels200JSONResponse ListModelsResponse

func (response ListAgentModels200JSONResponse) VisitListAgentModelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentModels401JSONResponse Error

func (response ListAgentModels401JSONResponse) VisitListAgentModelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentModels403JSONResponse Error

func (response ListAgentModels403JSONResponse) VisitListAgentModelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentModelsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAgentModelsdefaultJSONResponse) VisitListAgentModelsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateAgentModelRequestObject struct {
	Params CreateAgentModelParams
	Body   *CreateAgentModelJSONRequestBody
}

type CreateAgentModelResponseObject interface {
	VisitCreateAgentModelResponse(w http.ResponseWriter) error
}

type CreateAgentModel201JSONResponse ModelConfigResponse

func (response CreateAgentModel201JSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentModel400JSONResponse Error

func (response CreateAgentModel400JSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentModel401JSONResponse Error

func (response CreateAgentModel401JSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentModel403JSONResponse Error

func (response CreateAgentModel403JSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentModel409JSONResponse Error

func (response CreateAgentModel409JSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentModeldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateAgentModeldefaultJSONResponse) VisitCreateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteAgentModelRequestObject struct {
	ModelId string `json:"modelId"`
	Params  DeleteAgentModelParams
}

type DeleteAgentModelResponseObject interface {
	VisitDeleteAgentModelResponse(w http.ResponseWriter) error
}

type DeleteAgentModel204Response struct {
}

func (response DeleteAgentModel204Response) VisitDeleteAgentModelResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteAgentModel401JSONResponse Error

func (response DeleteAgentModel401JSONResponse) VisitDeleteAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentModel403JSONResponse Error

func (response DeleteAgentModel403JSONResponse) VisitDeleteAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentModel404JSONResponse Error

func (response DeleteAgentModel404JSONResponse) VisitDeleteAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentModeldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteAgentModeldefaultJSONResponse) VisitDeleteAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAgentModelRequestObject struct {
	ModelId string `json:"modelId"`
	Params  UpdateAgentModelParams
	Body    *UpdateAgentModelJSONRequestBody
}

type UpdateAgentModelResponseObject interface {
	VisitUpdateAgentModelResponse(w http.ResponseWriter) error
}

type UpdateAgentModel200JSONResponse ModelConfigResponse

func (response UpdateAgentModel200JSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentModel400JSONResponse Error

func (response UpdateAgentModel400JSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentModel401JSONResponse Error

func (response UpdateAgentModel401JSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentModel403JSONResponse Error

func (response UpdateAgentModel403JSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentModel404JSONResponse Error

func (response UpdateAgentModel404JSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentModeldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAgentModeldefaultJSONResponse) VisitUpdateAgentModelResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAgentSoulsRequestObject struct {
	Params ListAgentSoulsParams
}

type ListAgentSoulsResponseObject interface {
	VisitListAgentSoulsResponse(w http.ResponseWriter) error
}

type ListAgentSouls200JSONResponse ListSoulsResponse

func (response ListAgentSouls200JSONResponse) VisitListAgentSoulsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentSouls401JSONResponse Error

func (response ListAgentSouls401JSONResponse) VisitListAgentSoulsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentSouls403JSONResponse Error

func (response ListAgentSouls403JSONResponse) VisitListAgentSoulsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentSoulsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAgentSoulsdefaultJSONResponse) VisitListAgentSoulsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateAgentSoulRequestObject struct {
	Params CreateAgentSoulParams
	Body   *CreateAgentSoulJSONRequestBody
}

type CreateAgentSoulResponseObject interface {
	VisitCreateAgentSoulResponse(w http.ResponseWriter) error
}

type CreateAgentSoul201JSONResponse SoulResponse

func (response CreateAgentSoul201JSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSoul400JSONResponse Error

func (response CreateAgentSoul400JSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSoul401JSONResponse Error

func (response CreateAgentSoul401JSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSoul403JSONResponse Error

func (response CreateAgentSoul403JSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSoul409JSONResponse Error

func (response CreateAgentSoul409JSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateAgentSouldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateAgentSouldefaultJSONResponse) VisitCreateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteAgentSoulRequestObject struct {
	SoulId SoulId `json:"soulId"`
	Params DeleteAgentSoulParams
}

type DeleteAgentSoulResponseObject interface {
	VisitDeleteAgentSoulResponse(w http.ResponseWriter) error
}

type DeleteAgentSoul204Response struct {
}

func (response DeleteAgentSoul204Response) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteAgentSoul400JSONResponse Error

func (response DeleteAgentSoul400JSONResponse) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentSoul401JSONResponse Error

func (response DeleteAgentSoul401JSONResponse) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentSoul403JSONResponse Error

func (response DeleteAgentSoul403JSONResponse) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentSoul404JSONResponse Error

func (response DeleteAgentSoul404JSONResponse) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteAgentSouldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteAgentSouldefaultJSONResponse) VisitDeleteAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetAgentSoulRequestObject struct {
	SoulId SoulId `json:"soulId"`
	Params GetAgentSoulParams
}

type GetAgentSoulResponseObject interface {
	VisitGetAgentSoulResponse(w http.ResponseWriter) error
}

type GetAgentSoul200JSONResponse SoulResponse

func (response GetAgentSoul200JSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSoul400JSONResponse Error

func (response GetAgentSoul400JSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSoul401JSONResponse Error

func (response GetAgentSoul401JSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSoul403JSONResponse Error

func (response GetAgentSoul403JSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSoul404JSONResponse Error

func (response GetAgentSoul404JSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetAgentSouldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetAgentSouldefaultJSONResponse) VisitGetAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateAgentSoulRequestObject struct {
	SoulId SoulId `json:"soulId"`
	Params UpdateAgentSoulParams
	Body   *UpdateAgentSoulJSONRequestBody
}

type UpdateAgentSoulResponseObject interface {
	VisitUpdateAgentSoulResponse(w http.ResponseWriter) error
}

type UpdateAgentSoul200JSONResponse SoulResponse

func (response UpdateAgentSoul200JSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentSoul400JSONResponse Error

func (response UpdateAgentSoul400JSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentSoul401JSONResponse Error

func (response UpdateAgentSoul401JSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentSoul403JSONResponse Error

func (response UpdateAgentSoul403JSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentSoul404JSONResponse Error

func (response UpdateAgentSoul404JSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateAgentSouldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateAgentSouldefaultJSONResponse) VisitUpdateAgentSoulResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListAgentToolsRequestObject struct {
	Params ListAgentToolsParams
}

type ListAgentToolsResponseObject interface {
	VisitListAgentToolsResponse(w http.ResponseWriter) error
}

type ListAgentTools200JSONResponse ListAgentToolsResponse

func (response ListAgentTools200JSONResponse) VisitListAgentToolsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentTools401JSONResponse Error

func (response ListAgentTools401JSONResponse) VisitListAgentToolsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentTools403JSONResponse Error

func (response ListAgentTools403JSONResponse) VisitListAgentToolsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListAgentToolsdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListAgentToolsdefaultJSONResponse) VisitListAgentToolsResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetBaseConfigRequestObject struct {
	Params GetBaseConfigParams
}

type GetBaseConfigResponseObject interface {
	VisitGetBaseConfigResponse(w http.ResponseWriter) error
}

type GetBaseConfig200JSONResponse struct {
	// Errors List of validation errors in the configuration
	Errors []string `json:"errors"`

	// Spec The base configuration in YAML format
	Spec string `json:"spec"`
}

func (response GetBaseConfig200JSONResponse) VisitGetBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetBaseConfig401JSONResponse Error

func (response GetBaseConfig401JSONResponse) VisitGetBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetBaseConfig403JSONResponse Error

func (response GetBaseConfig403JSONResponse) VisitGetBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetBaseConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetBaseConfigdefaultJSONResponse) VisitGetBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateBaseConfigRequestObject struct {
	Params UpdateBaseConfigParams
	Body   *UpdateBaseConfigJSONRequestBody
}

type UpdateBaseConfigResponseObject interface {
	VisitUpdateBaseConfigResponse(w http.ResponseWriter) error
}

type UpdateBaseConfig200JSONResponse struct {
	// Errors List of validation warnings
	Errors []string `json:"errors"`
}

func (response UpdateBaseConfig200JSONResponse) VisitUpdateBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateBaseConfig400JSONResponse Error

func (response UpdateBaseConfig400JSONResponse) VisitUpdateBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateBaseConfig401JSONResponse Error

func (response UpdateBaseConfig401JSONResponse) VisitUpdateBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateBaseConfig403JSONResponse Error

func (response UpdateBaseConfig403JSONResponse) VisitUpdateBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateBaseConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateBaseConfigdefaultJSONResponse) VisitUpdateBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetWorkspaceBaseConfigRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        GetWorkspaceBaseConfigParams
}

type GetWorkspaceBaseConfigResponseObject interface {
	VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error
}

type GetWorkspaceBaseConfig200JSONResponse struct {
	// Errors List of validation errors in the configuration
	Errors []string `json:"errors"`

	// Spec The workspace base configuration in YAML format
	Spec string `json:"spec"`
}

func (response GetWorkspaceBaseConfig200JSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceBaseConfig400JSONResponse Error

func (response GetWorkspaceBaseConfig400JSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceBaseConfig401JSONResponse Error

func (response GetWorkspaceBaseConfig401JSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceBaseConfig403JSONResponse Error

func (response GetWorkspaceBaseConfig403JSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceBaseConfig404JSONResponse Error

func (response GetWorkspaceBaseConfig404JSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceBaseConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetWorkspaceBaseConfigdefaultJSONResponse) VisitGetWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateWorkspaceBaseConfigRequestObject struct {
	WorkspaceName WorkspaceName `json:"workspaceName"`
	Params        UpdateWorkspaceBaseConfigParams
	Body          *UpdateWorkspaceBaseConfigJSONRequestBody
}

type UpdateWorkspaceBaseConfigResponseObject interface {
	VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error
}

type UpdateWorkspaceBaseConfig200JSONResponse struct {
	// Errors List of validation warnings
	Errors []string `json:"errors"`
}

func (response UpdateWorkspaceBaseConfig200JSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceBaseConfig400JSONResponse Error

func (response UpdateWorkspaceBaseConfig400JSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceBaseConfig401JSONResponse Error

func (response UpdateWorkspaceBaseConfig401JSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceBaseConfig403JSONResponse Error

func (response UpdateWorkspaceBaseConfig403JSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceBaseConfig404JSONResponse Error

func (response UpdateWorkspaceBaseConfig404JSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceBaseConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateWorkspaceBaseConfigdefaultJSONResponse) VisitUpdateWorkspaceBaseConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncCleanupRequestObject struct {
	Params SyncCleanupParams
}

type SyncCleanupResponseObject interface {
	VisitSyncCleanupResponse(w http.ResponseWriter) error
}

type SyncCleanup200JSONResponse struct {
	// Forgotten List of forgotten item IDs
	Forgotten []string `json:"forgotten"`

	// Message Summary message
	Message string `json:"message"`
}

func (response SyncCleanup200JSONResponse) VisitSyncCleanupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncCleanupdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncCleanupdefaultJSONResponse) VisitSyncCleanupResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSyncConfigRequestObject struct {
	Params GetSyncConfigParams
}

type GetSyncConfigResponseObject interface {
	VisitGetSyncConfigResponse(w http.ResponseWriter) error
}

type GetSyncConfig200JSONResponse SyncConfigResponse

func (response GetSyncConfig200JSONResponse) VisitGetSyncConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSyncConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSyncConfigdefaultJSONResponse) VisitGetSyncConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateSyncConfigRequestObject struct {
	Params UpdateSyncConfigParams
	Body   *UpdateSyncConfigJSONRequestBody
}

type UpdateSyncConfigResponseObject interface {
	VisitUpdateSyncConfigResponse(w http.ResponseWriter) error
}

type UpdateSyncConfig200JSONResponse SyncConfigResponse

func (response UpdateSyncConfig200JSONResponse) VisitUpdateSyncConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateSyncConfigdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateSyncConfigdefaultJSONResponse) VisitUpdateSyncConfigResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncDeleteBatchRequestObject struct {
	Params SyncDeleteBatchParams
	Body   *SyncDeleteBatchJSONRequestBody
}

type SyncDeleteBatchResponseObject interface {
	VisitSyncDeleteBatchResponse(w http.ResponseWriter) error
}

type SyncDeleteBatch200JSONResponse struct {
	// Deleted List of deleted item IDs
	Deleted []string `json:"deleted"`

	// Message Summary message
	Message string `json:"message"`
}

func (response SyncDeleteBatch200JSONResponse) VisitSyncDeleteBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncDeleteBatch400JSONResponse Error

func (response SyncDeleteBatch400JSONResponse) VisitSyncDeleteBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SyncDeleteBatch404JSONResponse Error

func (response SyncDeleteBatch404JSONResponse) VisitSyncDeleteBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type SyncDeleteBatchdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncDeleteBatchdefaultJSONResponse) VisitSyncDeleteBatchResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncDeleteMissingRequestObject struct {
	Params SyncDeleteMissingParams
	Body   *SyncDeleteMissingJSONRequestBody
}

type SyncDeleteMissingResponseObject interface {
	VisitSyncDeleteMissingResponse(w http.ResponseWriter) error
}

type SyncDeleteMissing200JSONResponse struct {
	// Deleted List of deleted item IDs
	Deleted []string `json:"deleted"`

	// Message Summary message
	Message string `json:"message"`
}

func (response SyncDeleteMissing200JSONResponse) VisitSyncDeleteMissingResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncDeleteMissing400JSONResponse Error

func (response SyncDeleteMissing400JSONResponse) VisitSyncDeleteMissingResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type SyncDeleteMissingdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncDeleteMissingdefaultJSONResponse) VisitSyncDeleteMissingResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteSyncItemRequestObject struct {
	ItemId string `json:"itemId"`
	Params DeleteSyncItemParams
	Body   *DeleteSyncItemJSONRequestBody
}

type DeleteSyncItemResponseObject interface {
	VisitDeleteSyncItemResponse(w http.ResponseWriter) error
}

type DeleteSyncItem200JSONResponse SuccessResponse

func (response DeleteSyncItem200JSONResponse) VisitDeleteSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSyncItem400JSONResponse Error

func (response DeleteSyncItem400JSONResponse) VisitDeleteSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSyncItem404JSONResponse Error

func (response DeleteSyncItem404JSONResponse) VisitDeleteSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteSyncItemdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteSyncItemdefaultJSONResponse) VisitDeleteSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSyncItemDiffRequestObject struct {
	ItemId string `json:"itemId"`
	Params GetSyncItemDiffParams
}

type GetSyncItemDiffResponseObject interface {
	VisitGetSyncItemDiffResponse(w http.ResponseWriter) error
}

type GetSyncItemDiff200JSONResponse SyncItemDiffResponse

func (response GetSyncItemDiff200JSONResponse) VisitGetSyncItemDiffResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSyncItemDiff404JSONResponse Error

func (response GetSyncItemDiff404JSONResponse) VisitGetSyncItemDiffResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetSyncItemDiffdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSyncItemDiffdefaultJSONResponse) VisitGetSyncItemDiffResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DiscardSyncItemChangesRequestObject struct {
	ItemId string `json:"itemId"`
	Params DiscardSyncItemChangesParams
}

type DiscardSyncItemChangesResponseObject interface {
	VisitDiscardSyncItemChangesResponse(w http.ResponseWriter) error
}

type DiscardSyncItemChanges200JSONResponse SuccessResponse

func (response DiscardSyncItemChanges200JSONResponse) VisitDiscardSyncItemChangesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type DiscardSyncItemChanges404JSONResponse Error

func (response DiscardSyncItemChanges404JSONResponse) VisitDiscardSyncItemChangesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DiscardSyncItemChangesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DiscardSyncItemChangesdefaultJSONResponse) VisitDiscardSyncItemChangesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ForgetSyncItemRequestObject struct {
	ItemId string `json:"itemId"`
	Params ForgetSyncItemParams
}

type ForgetSyncItemResponseObject interface {
	VisitForgetSyncItemResponse(w http.ResponseWriter) error
}

type ForgetSyncItem200JSONResponse SuccessResponse

func (response ForgetSyncItem200JSONResponse) VisitForgetSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ForgetSyncItem400JSONResponse Error

func (response ForgetSyncItem400JSONResponse) VisitForgetSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ForgetSyncItem404JSONResponse Error

func (response ForgetSyncItem404JSONResponse) VisitForgetSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ForgetSyncItemdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ForgetSyncItemdefaultJSONResponse) VisitForgetSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type MoveSyncItemRequestObject struct {
	ItemId string `json:"itemId"`
	Params MoveSyncItemParams
	Body   *MoveSyncItemJSONRequestBody
}

type MoveSyncItemResponseObject interface {
	VisitMoveSyncItemResponse(w http.ResponseWriter) error
}

type MoveSyncItem200JSONResponse SuccessResponse

func (response MoveSyncItem200JSONResponse) VisitMoveSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type MoveSyncItem400JSONResponse Error

func (response MoveSyncItem400JSONResponse) VisitMoveSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type MoveSyncItem404JSONResponse Error

func (response MoveSyncItem404JSONResponse) VisitMoveSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type MoveSyncItem409JSONResponse SyncConflictResponse

func (response MoveSyncItem409JSONResponse) VisitMoveSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type MoveSyncItemdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response MoveSyncItemdefaultJSONResponse) VisitMoveSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type PublishSyncItemRequestObject struct {
	ItemId string `json:"itemId"`
	Params PublishSyncItemParams
	Body   *PublishSyncItemJSONRequestBody
}

type PublishSyncItemResponseObject interface {
	VisitPublishSyncItemResponse(w http.ResponseWriter) error
}

type PublishSyncItem200JSONResponse SyncResultResponse

func (response PublishSyncItem200JSONResponse) VisitPublishSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type PublishSyncItem404JSONResponse Error

func (response PublishSyncItem404JSONResponse) VisitPublishSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type PublishSyncItem409JSONResponse SyncConflictResponse

func (response PublishSyncItem409JSONResponse) VisitPublishSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type PublishSyncItemdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response PublishSyncItemdefaultJSONResponse) VisitPublishSyncItemResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncPublishAllRequestObject struct {
	Params SyncPublishAllParams
	Body   *SyncPublishAllJSONRequestBody
}

type SyncPublishAllResponseObject interface {
	VisitSyncPublishAllResponse(w http.ResponseWriter) error
}

type SyncPublishAll200JSONResponse SyncResultResponse

func (response SyncPublishAll200JSONResponse) VisitSyncPublishAllResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncPublishAlldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncPublishAlldefaultJSONResponse) VisitSyncPublishAllResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncPullRequestObject struct {
	Params SyncPullParams
}

type SyncPullResponseObject interface {
	VisitSyncPullResponse(w http.ResponseWriter) error
}

type SyncPull200JSONResponse SyncResultResponse

func (response SyncPull200JSONResponse) VisitSyncPullResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncPulldefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncPulldefaultJSONResponse) VisitSyncPullResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetSyncStatusRequestObject struct {
	Params GetSyncStatusParams
}

type GetSyncStatusResponseObject interface {
	VisitGetSyncStatusResponse(w http.ResponseWriter) error
}

type GetSyncStatus200JSONResponse SyncStatusResponse

func (response GetSyncStatus200JSONResponse) VisitGetSyncStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetSyncStatusdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetSyncStatusdefaultJSONResponse) VisitGetSyncStatusResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type SyncTestConnectionRequestObject struct {
	Params SyncTestConnectionParams
}

type SyncTestConnectionResponseObject interface {
	VisitSyncTestConnectionResponse(w http.ResponseWriter) error
}

type SyncTestConnection200JSONResponse SyncConnectionTestResponse

func (response SyncTestConnection200JSONResponse) VisitSyncTestConnectionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type SyncTestConnectiondefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response SyncTestConnectiondefaultJSONResponse) VisitSyncTestConnectionResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListUsersRequestObject struct {
}

type ListUsersResponseObject interface {
	VisitListUsersResponse(w http.ResponseWriter) error
}

type ListUsers200JSONResponse UsersListResponse

func (response ListUsers200JSONResponse) VisitListUsersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListUsers401JSONResponse Error

func (response ListUsers401JSONResponse) VisitListUsersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ListUsers403JSONResponse Error

func (response ListUsers403JSONResponse) VisitListUsersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ListUsersdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListUsersdefaultJSONResponse) VisitListUsersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateUserRequestObject struct {
	Body *CreateUserJSONRequestBody
}

type CreateUserResponseObject interface {
	VisitCreateUserResponse(w http.ResponseWriter) error
}

type CreateUser201JSONResponse UserResponse

func (response CreateUser201JSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateUser400JSONResponse Error

func (response CreateUser400JSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateUser401JSONResponse Error

func (response CreateUser401JSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type CreateUser403JSONResponse Error

func (response CreateUser403JSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type CreateUser409JSONResponse Error

func (response CreateUser409JSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type CreateUserdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response CreateUserdefaultJSONResponse) VisitCreateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type DeleteUserRequestObject struct {
	UserId UserId `json:"userId"`
}

type DeleteUserResponseObject interface {
	VisitDeleteUserResponse(w http.ResponseWriter) error
}

type DeleteUser204Response struct {
}

func (response DeleteUser204Response) VisitDeleteUserResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteUser401JSONResponse Error

func (response DeleteUser401JSONResponse) VisitDeleteUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type DeleteUser403JSONResponse Error

func (response DeleteUser403JSONResponse) VisitDeleteUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type DeleteUser404JSONResponse Error

func (response DeleteUser404JSONResponse) VisitDeleteUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type DeleteUserdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response DeleteUserdefaultJSONResponse) VisitDeleteUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetUserRequestObject struct {
	UserId UserId `json:"userId"`
}

type GetUserResponseObject interface {
	VisitGetUserResponse(w http.ResponseWriter) error
}

type GetUser200JSONResponse UserResponse

func (response GetUser200JSONResponse) VisitGetUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetUser401JSONResponse Error

func (response GetUser401JSONResponse) VisitGetUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type GetUser403JSONResponse Error

func (response GetUser403JSONResponse) VisitGetUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type GetUser404JSONResponse Error

func (response GetUser404JSONResponse) VisitGetUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetUserdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetUserdefaultJSONResponse) VisitGetUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type UpdateUserRequestObject struct {
	UserId UserId `json:"userId"`
	Body   *UpdateUserJSONRequestBody
}

type UpdateUserResponseObject interface {
	VisitUpdateUserResponse(w http.ResponseWriter) error
}

type UpdateUser200JSONResponse UserResponse

func (response UpdateUser200JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUser400JSONResponse Error

func (response UpdateUser400JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUser401JSONResponse Error

func (response UpdateUser401JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUser403JSONResponse Error

func (response UpdateUser403JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUser404JSONResponse Error

func (response UpdateUser404JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUser409JSONResponse Error

func (response UpdateUser409JSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type UpdateUserdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response UpdateUserdefaultJSONResponse) VisitUpdateUserResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ResetUserPasswordRequestObject struct {
	UserId UserId `json:"userId"`
	Body   *ResetUserPasswordJSONRequestBody
}

type ResetUserPasswordResponseObject interface {
	VisitResetUserPasswordResponse(w http.ResponseWriter) error
}

type ResetUserPassword200JSONResponse SuccessResponse

func (response ResetUserPassword200JSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ResetUserPassword400JSONResponse Error

func (response ResetUserPassword400JSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type ResetUserPassword401JSONResponse Error

func (response ResetUserPassword401JSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type ResetUserPassword403JSONResponse Error

func (response ResetUserPassword403JSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type ResetUserPassword404JSONResponse Error

func (response ResetUserPassword404JSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type ResetUserPassworddefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ResetUserPassworddefaultJSONResponse) VisitResetUserPasswordResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListWebhooksRequestObject struct {
	Params ListWebhooksParams
}

type ListWebhooksResponseObject interface {
	VisitListWebhooksResponse(w http.ResponseWriter) error
}

type ListWebhooks200JSONResponse WebhookListResponse

func (response ListWebhooks200JSONResponse) VisitListWebhooksResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListWebhooksdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListWebhooksdefaultJSONResponse) VisitListWebhooksResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type TriggerWebhookRequestObject struct {
	FileName DAGFileName `json:"fileName"`
	Params   TriggerWebhookParams
	Body     *TriggerWebhookJSONRequestBody
}

type TriggerWebhookResponseObject interface {
	VisitTriggerWebhookResponse(w http.ResponseWriter) error
}

type TriggerWebhook200JSONResponse WebhookResponse

func (response TriggerWebhook200JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhook400JSONResponse Error

func (response TriggerWebhook400JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhook401JSONResponse Error

func (response TriggerWebhook401JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(401)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhook403JSONResponse Error

func (response TriggerWebhook403JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(403)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhook404JSONResponse Error

func (response TriggerWebhook404JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhook409JSONResponse Error

func (response TriggerWebhook409JSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type TriggerWebhookdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response TriggerWebhookdefaultJSONResponse) VisitTriggerWebhookResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type GetWorkersRequestObject struct {
	Params GetWorkersParams
}

type GetWorkersResponseObject interface {
	VisitGetWorkersResponse(w http.ResponseWriter) error
}

type GetWorkers200JSONResponse WorkersListResponse

func (response GetWorkers200JSONResponse) VisitGetWorkersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkers503JSONResponse Error

func (response GetWorkers503JSONResponse) VisitGetWorkersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(503)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkersdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response GetWorkersdefaultJSONResponse) VisitGetWorkersResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type ListWorkspacesRequestObject struct {
	Params ListWorkspacesParams
}

type ListWorkspacesResponseObject interface {
	VisitListWorkspacesResponse(w http.ResponseWriter) error
}

type ListWorkspaces200JSONResponse WorkspaceListResponse

func (response ListWorkspaces200JSONResponse) VisitListWorkspacesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type ListWorkspacesdefaultJSONResponse struct {
	Body       Error
	StatusCode int
}

func (response ListWorkspacesdefaultJSONResponse) VisitListWorkspacesResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(response.StatusCode)

	return json.NewEncoder(w).Encode(response.Body)
}

type CreateWorkspaceRequestObject struct {
	Params CreateWorkspaceParams
	Body   *CreateWorkspaceJSONRequestBody
}

type CreateWorkspaceResponseObject interface {
	VisitCreateWorkspaceResponse(w http.ResponseWriter) error
}

type CreateWorkspace201JSONResponse WorkspaceResponse

func (response CreateWorkspace201JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(201)

	return json.NewEncoder(w).Encode(response)
}

type CreateWorkspace400JSONResponse Error

func (response CreateWorkspace400JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(400)

	return json.NewEncoder(w).Encode(response)
}

type CreateWorkspace409JSONResponse Error

func (response CreateWorkspace409JSONResponse) VisitCreateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

type DeleteWorkspaceRequestObject struct {
	WorkspaceId string `json:"workspaceId"`
	Params      DeleteWorkspaceParams
}

type DeleteWorkspaceResponseObject interface {
	VisitDeleteWorkspaceResponse(w http.ResponseWriter) error
}

type DeleteWorkspace204Response struct {
}

func (response DeleteWorkspace204Response) VisitDeleteWorkspaceResponse(w http.ResponseWriter) error {
	w.WriteHeader(204)
	return nil
}

type DeleteWorkspace404JSONResponse Error

func (response DeleteWorkspace404JSONResponse) VisitDeleteWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspaceRequestObject struct {
	WorkspaceId string `json:"workspaceId"`
	Params      GetWorkspaceParams
}

type GetWorkspaceResponseObject interface {
	VisitGetWorkspaceResponse(w http.ResponseWriter) error
}

type GetWorkspace200JSONResponse WorkspaceResponse

func (response GetWorkspace200JSONResponse) VisitGetWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type GetWorkspace404JSONResponse Error

func (response GetWorkspace404JSONResponse) VisitGetWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspaceRequestObject struct {
	WorkspaceId string `json:"workspaceId"`
	Params      UpdateWorkspaceParams
	Body        *UpdateWorkspaceJSONRequestBody
}

type UpdateWorkspaceResponseObject interface {
	VisitUpdateWorkspaceResponse(w http.ResponseWriter) error
}

type UpdateWorkspace200JSONResponse WorkspaceResponse

func (response UpdateWorkspace200JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(200)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspace404JSONResponse Error

func (response UpdateWorkspace404JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(404)

	return json.NewEncoder(w).Encode(response)
}

type UpdateWorkspace409JSONResponse Error

func (response UpdateWorkspace409JSONResponse) VisitUpdateWorkspaceResponse(w http.ResponseWriter) error {
	w.Header().Set("Content-Type", "application/json")
	w.WriteHeader(409)

	return json.NewEncoder(w).Encode(response)
}

// StrictServerInterface represents all server handlers.
type StrictServerInterface interface {
	// List agent sessions
	// (GET /agent/sessions)
	ListAgentSessions(ctx context.Context, request ListAgentSessionsRequestObject) (ListAgentSessionsResponseObject, error)
	// Create agent session
	// (POST /agent/sessions)
	CreateAgentSession(ctx context.Context, request CreateAgentSessionRequestObject) (CreateAgentSessionResponseObject, error)
	// Get agent session
	// (GET /agent/sessions/{sessionId})
	GetAgentSession(ctx context.Context, request GetAgentSessionRequestObject) (GetAgentSessionResponseObject, error)
	// Cancel agent session
	// (POST /agent/sessions/{sessionId}/cancel)
	CancelAgentSession(ctx context.Context, request CancelAgentSessionRequestObject) (CancelAgentSessionResponseObject, error)
	// Send message to agent session
	// (POST /agent/sessions/{sessionId}/chat)
	ChatAgentSession(ctx context.Context, request ChatAgentSessionRequestObject) (ChatAgentSessionResponseObject, error)
	// Respond to agent prompt
	// (POST /agent/sessions/{sessionId}/respond)
	RespondAgentSession(ctx context.Context, request RespondAgentSessionRequestObject) (RespondAgentSessionResponseObject, error)
	// List all API keys
	// (GET /api-keys)
	ListAPIKeys(ctx context.Context, request ListAPIKeysRequestObject) (ListAPIKeysResponseObject, error)
	// Create API key
	// (POST /api-keys)
	CreateAPIKey(ctx context.Context, request CreateAPIKeyRequestObject) (CreateAPIKeyResponseObject, error)
	// Delete API key
	// (DELETE /api-keys/{keyId})
	DeleteAPIKey(ctx context.Context, request DeleteAPIKeyRequestObject) (DeleteAPIKeyResponseObject, error)
	// Get API key
	// (GET /api-keys/{keyId})
	GetAPIKey(ctx context.Context, request GetAPIKeyRequestObject) (GetAPIKeyResponseObject, error)
	// Update API key
	// (PATCH /api-keys/{keyId})
	UpdateAPIKey(ctx context.Context, request UpdateAPIKeyRequestObject) (UpdateAPIKeyResponseObject, error)
	// List audit log entries
	// (GET /audit)
	ListAuditLogs(ctx context.Context, request ListAuditLogsRequestObject) (ListAuditLogsResponseObject, error)
	// Change current user's password
	// (POST /auth/change-password)
	ChangePassword(ctx context.Context, request ChangePasswordRequestObject) (ChangePasswordResponseObject, error)
	// Authenticate user and obtain JWT token
	// (POST /auth/login)
	Login(ctx context.Context, request LoginRequestObject) (LoginResponseObject, error)
	// Get current authenticated user
	// (GET /auth/me)
	GetCurrentUser(ctx context.Context, request GetCurrentUserRequestObject) (GetCurrentUserResponseObject, error)
	// Create initial admin account
	// (POST /auth/setup)
	Setup(ctx context.Context, request SetupRequestObject) (SetupResponseObject, error)
	// List all DAG-runs
	// (GET /dag-runs)
	ListDAGRuns(ctx context.Context, request ListDAGRunsRequestObject) (ListDAGRunsResponseObject, error)
	// Create and execute a DAG-run from inline spec
	// (POST /dag-runs)
	ExecuteDAGRunFromSpec(ctx context.Context, request ExecuteDAGRunFromSpecRequestObject) (ExecuteDAGRunFromSpecResponseObject, error)
	// Enqueue a DAG-run from inline spec
	// (POST /dag-runs/enqueue)
	EnqueueDAGRunFromSpec(ctx context.Context, request EnqueueDAGRunFromSpecRequestObject) (EnqueueDAGRunFromSpecResponseObject, error)
	// List all DAG-runs with a specific name
	// (GET /dag-runs/{name})
	ListDAGRunsByName(ctx context.Context, request ListDAGRunsByNameRequestObject) (ListDAGRunsByNameResponseObject, error)
	// Delete a DAG-run
	// (DELETE /dag-runs/{name}/{dagRunId})
	DeleteDAGRun(ctx context.Context, request DeleteDAGRunRequestObject) (DeleteDAGRunResponseObject, error)
	// Retrieve detailed status of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId})
	GetDAGRunDetails(ctx context.Context, request GetDAGRunDetailsRequestObject) (GetDAGRunDetailsResponseObject, error)
	// List artifacts for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts)
	GetDAGRunArtifacts(ctx context.Context, request GetDAGRunArtifactsRequestObject) (GetDAGRunArtifactsResponseObject, error)
	// Download an artifact for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts/download)
	DownloadDAGRunArtifact(ctx context.Context, request DownloadDAGRunArtifactRequestObject) (DownloadDAGRunArtifactResponseObject, error)
	// Preview an artifact for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/artifacts/preview)
	GetDAGRunArtifactPreview(ctx context.Context, request GetDAGRunArtifactPreviewRequestObject) (GetDAGRunArtifactPreviewResponseObject, error)
	// Dequeue a queued DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/dequeue)
	DequeueDAGRun(ctx context.Context, request DequeueDAGRunRequestObject) (DequeueDAGRunResponseObject, error)
	// Run edited DAG retry
	// (POST /dag-runs/{name}/{dagRunId}/edit-retry)
	EditRetryDAGRun(ctx context.Context, request EditRetryDAGRunRequestObject) (EditRetryDAGRunResponseObject, error)
	// Preview edited DAG-run retry
	// (POST /dag-runs/{name}/{dagRunId}/edit-retry/preview)
	PreviewEditRetryDAGRun(ctx context.Context, request PreviewEditRetryDAGRunRequestObject) (PreviewEditRetryDAGRunResponseObject, error)
	// Retrieve full execution log of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/log)
	GetDAGRunLog(ctx context.Context, request GetDAGRunLogRequestObject) (GetDAGRunLogResponseObject, error)
	// Download full execution log of a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/log/download)
	DownloadDAGRunLog(ctx context.Context, request DownloadDAGRunLogRequestObject) (DownloadDAGRunLogResponseObject, error)
	// Retrieve collected outputs from a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/outputs)
	GetDAGRunOutputs(ctx context.Context, request GetDAGRunOutputsRequestObject) (GetDAGRunOutputsResponseObject, error)
	// Reschedule DAG-run with a new run ID
	// (POST /dag-runs/{name}/{dagRunId}/reschedule)
	RescheduleDAGRun(ctx context.Context, request RescheduleDAGRunRequestObject) (RescheduleDAGRunResponseObject, error)
	// Retry DAG-run execution
	// (POST /dag-runs/{name}/{dagRunId}/retry)
	RetryDAGRun(ctx context.Context, request RetryDAGRunRequestObject) (RetryDAGRunResponseObject, error)
	// Retrieve DAG specification for a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/spec)
	GetDAGRunSpec(ctx context.Context, request GetDAGRunSpecRequestObject) (GetDAGRunSpecResponseObject, error)
	// Approve a waiting step
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/approve)
	ApproveDAGRunStep(ctx context.Context, request ApproveDAGRunStepRequestObject) (ApproveDAGRunStepResponseObject, error)
	// Retrieve log for a specific step in a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log)
	GetDAGRunStepLog(ctx context.Context, request GetDAGRunStepLogRequestObject) (GetDAGRunStepLogResponseObject, error)
	// Download log for a specific step in a DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/log/download)
	DownloadDAGRunStepLog(ctx context.Context, request DownloadDAGRunStepLogRequestObject) (DownloadDAGRunStepLogResponseObject, error)
	// Retrieve chat messages for a step
	// (GET /dag-runs/{name}/{dagRunId}/steps/{stepName}/messages)
	GetDAGRunStepMessages(ctx context.Context, request GetDAGRunStepMessagesRequestObject) (GetDAGRunStepMessagesResponseObject, error)
	// Push back a waiting step for re-execution with feedback
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/push-back)
	PushBackDAGRunStep(ctx context.Context, request PushBackDAGRunStepRequestObject) (PushBackDAGRunStepResponseObject, error)
	// Reject a waiting step
	// (POST /dag-runs/{name}/{dagRunId}/steps/{stepName}/reject)
	RejectDAGRunStep(ctx context.Context, request RejectDAGRunStepRequestObject) (RejectDAGRunStepResponseObject, error)
	// Manually update a step's execution status
	// (PATCH /dag-runs/{name}/{dagRunId}/steps/{stepName}/status)
	UpdateDAGRunStepStatus(ctx context.Context, request UpdateDAGRunStepStatusRequestObject) (UpdateDAGRunStepStatusResponseObject, error)
	// Terminate or cancel a DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/stop)
	TerminateDAGRun(ctx context.Context, request TerminateDAGRunRequestObject) (TerminateDAGRunResponseObject, error)
	// Get sub DAG runs with timing info
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs)
	GetSubDAGRuns(ctx context.Context, request GetSubDAGRunsRequestObject) (GetSubDAGRunsResponseObject, error)
	// Retrieve detailed status of a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId})
	GetSubDAGRunDetails(ctx context.Context, request GetSubDAGRunDetailsRequestObject) (GetSubDAGRunDetailsResponseObject, error)
	// List artifacts for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts)
	GetSubDAGRunArtifacts(ctx context.Context, request GetSubDAGRunArtifactsRequestObject) (GetSubDAGRunArtifactsResponseObject, error)
	// Download an artifact for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/download)
	DownloadSubDAGRunArtifact(ctx context.Context, request DownloadSubDAGRunArtifactRequestObject) (DownloadSubDAGRunArtifactResponseObject, error)
	// Preview an artifact for a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/artifacts/preview)
	GetSubDAGRunArtifactPreview(ctx context.Context, request GetSubDAGRunArtifactPreviewRequestObject) (GetSubDAGRunArtifactPreviewResponseObject, error)
	// Retrieve log for a specific sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log)
	GetSubDAGRunLog(ctx context.Context, request GetSubDAGRunLogRequestObject) (GetSubDAGRunLogResponseObject, error)
	// Download log for a specific sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/log/download)
	DownloadSubDAGRunLog(ctx context.Context, request DownloadSubDAGRunLogRequestObject) (DownloadSubDAGRunLogResponseObject, error)
	// Get Sub-DAG Run Specification
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/spec)
	GetSubDAGRunSpec(ctx context.Context, request GetSubDAGRunSpecRequestObject) (GetSubDAGRunSpecResponseObject, error)
	// Approve a waiting step in a sub DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/approve)
	ApproveSubDAGRunStep(ctx context.Context, request ApproveSubDAGRunStepRequestObject) (ApproveSubDAGRunStepResponseObject, error)
	// Retrieve log for a specific step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log)
	GetSubDAGRunStepLog(ctx context.Context, request GetSubDAGRunStepLogRequestObject) (GetSubDAGRunStepLogResponseObject, error)
	// Download log for a specific step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/log/download)
	DownloadSubDAGRunStepLog(ctx context.Context, request DownloadSubDAGRunStepLogRequestObject) (DownloadSubDAGRunStepLogResponseObject, error)
	// Retrieve chat messages for a step in a sub DAG-run
	// (GET /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/messages)
	GetSubDAGRunStepMessages(ctx context.Context, request GetSubDAGRunStepMessagesRequestObject) (GetSubDAGRunStepMessagesResponseObject, error)
	// Push back a waiting step in a sub DAG-run for re-execution with feedback
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/push-back)
	PushBackSubDAGRunStep(ctx context.Context, request PushBackSubDAGRunStepRequestObject) (PushBackSubDAGRunStepResponseObject, error)
	// Reject a waiting step in a sub DAG-run
	// (POST /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/reject)
	RejectSubDAGRunStep(ctx context.Context, request RejectSubDAGRunStepRequestObject) (RejectSubDAGRunStepResponseObject, error)
	// Manually update a step's execution status in a sub DAG-run
	// (PATCH /dag-runs/{name}/{dagRunId}/sub-dag-runs/{subDAGRunId}/steps/{stepName}/status)
	UpdateSubDAGRunStepStatus(ctx context.Context, request UpdateSubDAGRunStepStatusRequestObject) (UpdateSubDAGRunStepStatusResponseObject, error)
	// List all available DAGs
	// (GET /dags)
	ListDAGs(ctx context.Context, request ListDAGsRequestObject) (ListDAGsResponseObject, error)
	// Create a new DAG definition
	// (POST /dags)
	CreateNewDAG(ctx context.Context, request CreateNewDAGRequestObject) (CreateNewDAGResponseObject, error)
	// List all available DAG labels
	// (GET /dags/labels)
	GetAllDAGLabels(ctx context.Context, request GetAllDAGLabelsRequestObject) (GetAllDAGLabelsResponseObject, error)
	// Search DAGs
	// (GET /dags/search)
	SearchDAGs(ctx context.Context, request SearchDAGsRequestObject) (SearchDAGsResponseObject, error)
	// List all available DAG tags
	// (GET /dags/tags)
	GetAllDAGTags(ctx context.Context, request GetAllDAGTagsRequestObject) (GetAllDAGTagsResponseObject, error)
	// Validate a DAG specification
	// (POST /dags/validate)
	ValidateDAGSpec(ctx context.Context, request ValidateDAGSpecRequestObject) (ValidateDAGSpecResponseObject, error)
	// Delete an existing DAG
	// (DELETE /dags/{fileName})
	DeleteDAG(ctx context.Context, request DeleteDAGRequestObject) (DeleteDAGResponseObject, error)
	// Retrieve comprehensive DAG information
	// (GET /dags/{fileName})
	GetDAGDetails(ctx context.Context, request GetDAGDetailsRequestObject) (GetDAGDetailsResponseObject, error)
	// Retrieve execution history of a DAG
	// (GET /dags/{fileName}/dag-runs)
	GetDAGDAGRunHistory(ctx context.Context, request GetDAGDAGRunHistoryRequestObject) (GetDAGDAGRunHistoryResponseObject, error)
	// Get detailed status of a specific DAG-run
	// (GET /dags/{fileName}/dag-runs/{dagRunId})
	GetDAGDAGRunDetails(ctx context.Context, request GetDAGDAGRunDetailsRequestObject) (GetDAGDAGRunDetailsResponseObject, error)
	// Enqueue a DAG-run from DAG
	// (POST /dags/{fileName}/enqueue)
	EnqueueDAGDAGRun(ctx context.Context, request EnqueueDAGDAGRunRequestObject) (EnqueueDAGDAGRunResponseObject, error)
	// Delete DAG incident routing
	// (DELETE /dags/{fileName}/incidents)
	DeleteDAGIncidents(ctx context.Context, request DeleteDAGIncidentsRequestObject) (DeleteDAGIncidentsResponseObject, error)
	// Get DAG incident routing
	// (GET /dags/{fileName}/incidents)
	GetDAGIncidents(ctx context.Context, request GetDAGIncidentsRequestObject) (GetDAGIncidentsResponseObject, error)
	// Update DAG incident routing
	// (PUT /dags/{fileName}/incidents)
	UpdateDAGIncidents(ctx context.Context, request UpdateDAGIncidentsRequestObject) (UpdateDAGIncidentsResponseObject, error)
	// Delete DAG notification settings
	// (DELETE /dags/{fileName}/notifications)
	DeleteDAGNotifications(ctx context.Context, request DeleteDAGNotificationsRequestObject) (DeleteDAGNotificationsResponseObject, error)
	// Get DAG notification settings
	// (GET /dags/{fileName}/notifications)
	GetDAGNotifications(ctx context.Context, request GetDAGNotificationsRequestObject) (GetDAGNotificationsResponseObject, error)
	// Update DAG notification settings
	// (PUT /dags/{fileName}/notifications)
	UpdateDAGNotifications(ctx context.Context, request UpdateDAGNotificationsRequestObject) (UpdateDAGNotificationsResponseObject, error)
	// Send a test DAG notification
	// (POST /dags/{fileName}/notifications/test)
	TestDAGNotifications(ctx context.Context, request TestDAGNotificationsRequestObject) (TestDAGNotificationsResponseObject, error)
	// Change DAG file ID
	// (POST /dags/{fileName}/rename)
	RenameDAG(ctx context.Context, request RenameDAGRequestObject) (RenameDAGResponseObject, error)
	// Retrieve DAG specification
	// (GET /dags/{fileName}/spec)
	GetDAGSpec(ctx context.Context, request GetDAGSpecRequestObject) (GetDAGSpecResponseObject, error)
	// Update DAG spec
	// (PUT /dags/{fileName}/spec)
	UpdateDAGSpec(ctx context.Context, request UpdateDAGSpecRequestObject) (UpdateDAGSpecResponseObject, error)
	// Create and execute a DAG-run from DAG
	// (POST /dags/{fileName}/start)
	ExecuteDAG(ctx context.Context, request ExecuteDAGRequestObject) (ExecuteDAGResponseObject, error)
	// Execute DAG synchronously and wait for completion
	// (POST /dags/{fileName}/start-sync)
	ExecuteDAGSync(ctx context.Context, request ExecuteDAGSyncRequestObject) (ExecuteDAGSyncResponseObject, error)
	// Stop all running instances of a DAG
	// (POST /dags/{fileName}/stop-all)
	StopAllDAGRuns(ctx context.Context, request StopAllDAGRunsRequestObject) (StopAllDAGRunsResponseObject, error)
	// Toggle DAG suspension state
	// (POST /dags/{fileName}/suspend)
	UpdateDAGSuspensionState(ctx context.Context, request UpdateDAGSuspensionStateRequestObject) (UpdateDAGSuspensionStateResponseObject, error)
	// Delete webhook for DAG
	// (DELETE /dags/{fileName}/webhook)
	DeleteDAGWebhook(ctx context.Context, request DeleteDAGWebhookRequestObject) (DeleteDAGWebhookResponseObject, error)
	// Get webhook for DAG
	// (GET /dags/{fileName}/webhook)
	GetDAGWebhook(ctx context.Context, request GetDAGWebhookRequestObject) (GetDAGWebhookResponseObject, error)
	// Create webhook for DAG
	// (POST /dags/{fileName}/webhook)
	CreateDAGWebhook(ctx context.Context, request CreateDAGWebhookRequestObject) (CreateDAGWebhookResponseObject, error)
	// Configure webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/configure)
	ConfigureDAGWebhookHMAC(ctx context.Context, request ConfigureDAGWebhookHMACRequestObject) (ConfigureDAGWebhookHMACResponseObject, error)
	// Disable webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/disable)
	DisableDAGWebhookHMAC(ctx context.Context, request DisableDAGWebhookHMACRequestObject) (DisableDAGWebhookHMACResponseObject, error)
	// Enable webhook HMAC
	// (POST /dags/{fileName}/webhook/hmac/enable)
	EnableDAGWebhookHMAC(ctx context.Context, request EnableDAGWebhookHMACRequestObject) (EnableDAGWebhookHMACResponseObject, error)
	// Regenerate webhook HMAC secret
	// (POST /dags/{fileName}/webhook/hmac/regenerate)
	RegenerateDAGWebhookHMACSecret(ctx context.Context, request RegenerateDAGWebhookHMACSecretRequestObject) (RegenerateDAGWebhookHMACSecretResponseObject, error)
	// Regenerate webhook token
	// (POST /dags/{fileName}/webhook/regenerate)
	RegenerateDAGWebhookToken(ctx context.Context, request RegenerateDAGWebhookTokenRequestObject) (RegenerateDAGWebhookTokenResponseObject, error)
	// Toggle webhook enabled state
	// (POST /dags/{fileName}/webhook/toggle)
	ToggleDAGWebhook(ctx context.Context, request ToggleDAGWebhookRequestObject) (ToggleDAGWebhookResponseObject, error)
	// List documents
	// (GET /docs)
	ListDocs(ctx context.Context, request ListDocsRequestObject) (ListDocsResponseObject, error)
	// Create document
	// (POST /docs)
	CreateDoc(ctx context.Context, request CreateDocRequestObject) (CreateDocResponseObject, error)
	// Delete multiple documents or directories
	// (POST /docs/delete-batch)
	DeleteDocBatch(ctx context.Context, request DeleteDocBatchRequestObject) (DeleteDocBatchResponseObject, error)
	// Delete document
	// (DELETE /docs/doc)
	DeleteDoc(ctx context.Context, request DeleteDocRequestObject) (DeleteDocResponseObject, error)
	// Get document
	// (GET /docs/doc)
	GetDoc(ctx context.Context, request GetDocRequestObject) (GetDocResponseObject, error)
	// Update document
	// (PATCH /docs/doc)
	UpdateDoc(ctx context.Context, request UpdateDocRequestObject) (UpdateDocResponseObject, error)
	// Rename document or directory
	// (POST /docs/doc/rename)
	RenameDoc(ctx context.Context, request RenameDocRequestObject) (RenameDocResponseObject, error)
	// Search documents
	// (GET /docs/search)
	SearchDocs(ctx context.Context, request SearchDocsRequestObject) (SearchDocsResponseObject, error)
	// List centralized event log entries
	// (GET /event-logs)
	ListEventLogs(ctx context.Context, request ListEventLogsRequestObject) (ListEventLogsResponseObject, error)
	// Check server health status
	// (GET /health)
	GetHealthStatus(ctx context.Context, request GetHealthStatusRequestObject) (GetHealthStatusResponseObject, error)
	// List incident routing
	// (GET /incident-policies)
	ListIncidentPolicies(ctx context.Context, request ListIncidentPoliciesRequestObject) (ListIncidentPoliciesResponseObject, error)
	// Get global incident routing
	// (GET /incident-policies/global)
	GetGlobalIncidentPolicies(ctx context.Context, request GetGlobalIncidentPoliciesRequestObject) (GetGlobalIncidentPoliciesResponseObject, error)
	// Update global incident routing
	// (PUT /incident-policies/global)
	UpdateGlobalIncidentPolicies(ctx context.Context, request UpdateGlobalIncidentPoliciesRequestObject) (UpdateGlobalIncidentPoliciesResponseObject, error)
	// Get workspace incident routing
	// (GET /incident-policies/workspaces/{workspaceName})
	GetWorkspaceIncidentPolicies(ctx context.Context, request GetWorkspaceIncidentPoliciesRequestObject) (GetWorkspaceIncidentPoliciesResponseObject, error)
	// Update workspace incident routing
	// (PUT /incident-policies/workspaces/{workspaceName})
	UpdateWorkspaceIncidentPolicies(ctx context.Context, request UpdateWorkspaceIncidentPoliciesRequestObject) (UpdateWorkspaceIncidentPoliciesResponseObject, error)
	// List incident providers
	// (GET /incident-providers)
	ListIncidentProviders(ctx context.Context, request ListIncidentProvidersRequestObject) (ListIncidentProvidersResponseObject, error)
	// Create incident provider
	// (POST /incident-providers)
	CreateIncidentProvider(ctx context.Context, request CreateIncidentProviderRequestObject) (CreateIncidentProviderResponseObject, error)
	// Delete incident provider
	// (DELETE /incident-providers/{providerId})
	DeleteIncidentProvider(ctx context.Context, request DeleteIncidentProviderRequestObject) (DeleteIncidentProviderResponseObject, error)
	// Get incident provider
	// (GET /incident-providers/{providerId})
	GetIncidentProvider(ctx context.Context, request GetIncidentProviderRequestObject) (GetIncidentProviderResponseObject, error)
	// Update incident provider
	// (PUT /incident-providers/{providerId})
	UpdateIncidentProvider(ctx context.Context, request UpdateIncidentProviderRequestObject) (UpdateIncidentProviderResponseObject, error)
	// Send a test incident
	// (POST /incident-providers/{providerId}/test)
	TestIncidentProvider(ctx context.Context, request TestIncidentProviderRequestObject) (TestIncidentProviderResponseObject, error)
	// Activate a license key
	// (POST /license/activate)
	ActivateLicense(ctx context.Context, request ActivateLicenseRequestObject) (ActivateLicenseResponseObject, error)
	// Deactivate the current license
	// (POST /license/deactivate)
	DeactivateLicense(ctx context.Context, request DeactivateLicenseRequestObject) (DeactivateLicenseResponseObject, error)
	// Get Prometheus metrics
	// (GET /metrics)
	GetMetrics(ctx context.Context, request GetMetricsRequestObject) (GetMetricsResponseObject, error)
	// List notification channels
	// (GET /notification-channels)
	ListNotificationChannels(ctx context.Context, request ListNotificationChannelsRequestObject) (ListNotificationChannelsResponseObject, error)
	// Create notification channel
	// (POST /notification-channels)
	CreateNotificationChannel(ctx context.Context, request CreateNotificationChannelRequestObject) (CreateNotificationChannelResponseObject, error)
	// Delete notification channel
	// (DELETE /notification-channels/{channelId})
	DeleteNotificationChannel(ctx context.Context, request DeleteNotificationChannelRequestObject) (DeleteNotificationChannelResponseObject, error)
	// Get notification channel
	// (GET /notification-channels/{channelId})
	GetNotificationChannel(ctx context.Context, request GetNotificationChannelRequestObject) (GetNotificationChannelResponseObject, error)
	// Update notification channel
	// (PUT /notification-channels/{channelId})
	UpdateNotificationChannel(ctx context.Context, request UpdateNotificationChannelRequestObject) (UpdateNotificationChannelResponseObject, error)
	// List notification routes
	// (GET /notification-routes)
	ListNotificationRoutes(ctx context.Context, request ListNotificationRoutesRequestObject) (ListNotificationRoutesResponseObject, error)
	// Get global notification routes
	// (GET /notification-routes/global)
	GetGlobalNotificationRoutes(ctx context.Context, request GetGlobalNotificationRoutesRequestObject) (GetGlobalNotificationRoutesResponseObject, error)
	// Update global notification routes
	// (PUT /notification-routes/global)
	UpdateGlobalNotificationRoutes(ctx context.Context, request UpdateGlobalNotificationRoutesRequestObject) (UpdateGlobalNotificationRoutesResponseObject, error)
	// Get workspace notification routes
	// (GET /notification-routes/workspaces/{workspaceName})
	GetWorkspaceNotificationRoutes(ctx context.Context, request GetWorkspaceNotificationRoutesRequestObject) (GetWorkspaceNotificationRoutesResponseObject, error)
	// Update workspace notification routes
	// (PUT /notification-routes/workspaces/{workspaceName})
	UpdateWorkspaceNotificationRoutes(ctx context.Context, request UpdateWorkspaceNotificationRoutesRequestObject) (UpdateWorkspaceNotificationRoutesResponseObject, error)
	// Get notification settings
	// (GET /notification-settings)
	GetNotificationSettings(ctx context.Context, request GetNotificationSettingsRequestObject) (GetNotificationSettingsResponseObject, error)
	// Update notification settings
	// (PUT /notification-settings)
	UpdateNotificationSettings(ctx context.Context, request UpdateNotificationSettingsRequestObject) (UpdateNotificationSettingsResponseObject, error)
	// Get the OpenAPI document
	// (GET /openapi.json)
	GetOpenapiJson(ctx context.Context, request GetOpenapiJsonRequestObject) (GetOpenapiJsonResponseObject, error)
	// List all execution queues with summary statistics
	// (GET /queues)
	ListQueues(ctx context.Context, request ListQueuesRequestObject) (ListQueuesResponseObject, error)
	// Get summary information for a specific queue
	// (GET /queues/{name})
	GetQueue(ctx context.Context, request GetQueueRequestObject) (GetQueueResponseObject, error)
	// Get queued items for a specific queue
	// (GET /queues/{name}/items)
	ListQueueItems(ctx context.Context, request ListQueueItemsRequestObject) (ListQueueItemsResponseObject, error)
	// List all remote nodes
	// (GET /remote-nodes)
	ListRemoteNodes(ctx context.Context, request ListRemoteNodesRequestObject) (ListRemoteNodesResponseObject, error)
	// Create a new remote node
	// (POST /remote-nodes)
	CreateRemoteNode(ctx context.Context, request CreateRemoteNodeRequestObject) (CreateRemoteNodeResponseObject, error)
	// Delete a remote node
	// (DELETE /remote-nodes/{remoteNodeId})
	DeleteRemoteNode(ctx context.Context, request DeleteRemoteNodeRequestObject) (DeleteRemoteNodeResponseObject, error)
	// Get a remote node
	// (GET /remote-nodes/{remoteNodeId})
	GetRemoteNode(ctx context.Context, request GetRemoteNodeRequestObject) (GetRemoteNodeResponseObject, error)
	// Update a remote node
	// (PATCH /remote-nodes/{remoteNodeId})
	UpdateRemoteNode(ctx context.Context, request UpdateRemoteNodeRequestObject) (UpdateRemoteNodeResponseObject, error)
	// Test remote node connection
	// (POST /remote-nodes/{remoteNodeId}/test-connection)
	TestRemoteNodeConnection(ctx context.Context, request TestRemoteNodeConnectionRequestObject) (TestRemoteNodeConnectionResponseObject, error)
	// Search DAGs
	// (GET /search/dags)
	SearchDAGFeed(ctx context.Context, request SearchDAGFeedRequestObject) (SearchDAGFeedResponseObject, error)
	// Search DAG match snippets
	// (GET /search/dags/{fileName}/matches)
	SearchDagMatches(ctx context.Context, request SearchDagMatchesRequestObject) (SearchDagMatchesResponseObject, error)
	// Search documents
	// (GET /search/docs)
	SearchDocFeed(ctx context.Context, request SearchDocFeedRequestObject) (SearchDocFeedResponseObject, error)
	// Search document match snippets
	// (GET /search/docs/matches)
	SearchDocMatches(ctx context.Context, request SearchDocMatchesRequestObject) (SearchDocMatchesResponseObject, error)
	// List secrets
	// (GET /secrets)
	ListSecrets(ctx context.Context, request ListSecretsRequestObject) (ListSecretsResponseObject, error)
	// Create a secret
	// (POST /secrets)
	CreateSecret(ctx context.Context, request CreateSecretRequestObject) (CreateSecretResponseObject, error)
	// Delete secret
	// (DELETE /secrets/{secretId})
	DeleteSecret(ctx context.Context, request DeleteSecretRequestObject) (DeleteSecretResponseObject, error)
	// Get secret
	// (GET /secrets/{secretId})
	GetSecret(ctx context.Context, request GetSecretRequestObject) (GetSecretResponseObject, error)
	// Update secret metadata
	// (PATCH /secrets/{secretId})
	UpdateSecret(ctx context.Context, request UpdateSecretRequestObject) (UpdateSecretResponseObject, error)
	// Disable secret
	// (POST /secrets/{secretId}/disable)
	DisableSecret(ctx context.Context, request DisableSecretRequestObject) (DisableSecretResponseObject, error)
	// Enable secret
	// (POST /secrets/{secretId}/enable)
	EnableSecret(ctx context.Context, request EnableSecretRequestObject) (EnableSecretResponseObject, error)
	// Write a new secret value version
	// (POST /secrets/{secretId}/versions)
	WriteSecretVersion(ctx context.Context, request WriteSecretVersionRequestObject) (WriteSecretVersionResponseObject, error)
	// Get coordinator service status
	// (GET /services/coordinator)
	GetCoordinatorStatus(ctx context.Context, request GetCoordinatorStatusRequestObject) (GetCoordinatorStatusResponseObject, error)
	// Get resource usage history
	// (GET /services/resources/history)
	GetResourceHistory(ctx context.Context, request GetResourceHistoryRequestObject) (GetResourceHistoryResponseObject, error)
	// Get scheduler service status
	// (GET /services/scheduler)
	GetSchedulerStatus(ctx context.Context, request GetSchedulerStatusRequestObject) (GetSchedulerStatusResponseObject, error)
	// Get tunnel service status
	// (GET /services/tunnel)
	GetTunnelStatus(ctx context.Context, request GetTunnelStatusRequestObject) (GetTunnelStatusResponseObject, error)
	// Get agent configuration
	// (GET /settings/agent)
	GetAgentConfig(ctx context.Context, request GetAgentConfigRequestObject) (GetAgentConfigResponseObject, error)
	// Update agent configuration
	// (PATCH /settings/agent)
	UpdateAgentConfig(ctx context.Context, request UpdateAgentConfigRequestObject) (UpdateAgentConfigResponseObject, error)
	// List agent auth providers
	// (GET /settings/agent/auth/providers)
	ListAgentAuthProviders(ctx context.Context, request ListAgentAuthProvidersRequestObject) (ListAgentAuthProvidersResponseObject, error)
	// Disconnect agent auth provider login
	// (DELETE /settings/agent/auth/providers/{providerId}/login)
	DisconnectAgentAuthProviderLogin(ctx context.Context, request DisconnectAgentAuthProviderLoginRequestObject) (DisconnectAgentAuthProviderLoginResponseObject, error)
	// Start agent auth provider login
	// (POST /settings/agent/auth/providers/{providerId}/login)
	StartAgentAuthProviderLogin(ctx context.Context, request StartAgentAuthProviderLoginRequestObject) (StartAgentAuthProviderLoginResponseObject, error)
	// Complete agent auth provider login
	// (POST /settings/agent/auth/providers/{providerId}/login/complete)
	CompleteAgentAuthProviderLogin(ctx context.Context, request CompleteAgentAuthProviderLoginRequestObject) (CompleteAgentAuthProviderLoginResponseObject, error)
	// Set default agent model
	// (PUT /settings/agent/default-model)
	SetDefaultAgentModel(ctx context.Context, request SetDefaultAgentModelRequestObject) (SetDefaultAgentModelResponseObject, error)
	// Clear global agent memory
	// (DELETE /settings/agent/memory)
	DeleteAgentMemory(ctx context.Context, request DeleteAgentMemoryRequestObject) (DeleteAgentMemoryResponseObject, error)
	// Get agent memory
	// (GET /settings/agent/memory)
	GetAgentMemory(ctx context.Context, request GetAgentMemoryRequestObject) (GetAgentMemoryResponseObject, error)
	// Update global agent memory
	// (PUT /settings/agent/memory)
	UpdateAgentMemory(ctx context.Context, request UpdateAgentMemoryRequestObject) (UpdateAgentMemoryResponseObject, error)
	// Clear DAG-specific agent memory
	// (DELETE /settings/agent/memory/dags/{dagName})
	DeleteAgentDAGMemory(ctx context.Context, request DeleteAgentDAGMemoryRequestObject) (DeleteAgentDAGMemoryResponseObject, error)
	// Get DAG-specific agent memory
	// (GET /settings/agent/memory/dags/{dagName})
	GetAgentDAGMemory(ctx context.Context, request GetAgentDAGMemoryRequestObject) (GetAgentDAGMemoryResponseObject, error)
	// Update DAG-specific agent memory
	// (PUT /settings/agent/memory/dags/{dagName})
	UpdateAgentDAGMemory(ctx context.Context, request UpdateAgentDAGMemoryRequestObject) (UpdateAgentDAGMemoryResponseObject, error)
	// List model presets
	// (GET /settings/agent/model-presets)
	ListModelPresets(ctx context.Context, request ListModelPresetsRequestObject) (ListModelPresetsResponseObject, error)
	// List agent models
	// (GET /settings/agent/models)
	ListAgentModels(ctx context.Context, request ListAgentModelsRequestObject) (ListAgentModelsResponseObject, error)
	// Create agent model
	// (POST /settings/agent/models)
	CreateAgentModel(ctx context.Context, request CreateAgentModelRequestObject) (CreateAgentModelResponseObject, error)
	// Delete agent model
	// (DELETE /settings/agent/models/{modelId})
	DeleteAgentModel(ctx context.Context, request DeleteAgentModelRequestObject) (DeleteAgentModelResponseObject, error)
	// Update agent model
	// (PATCH /settings/agent/models/{modelId})
	UpdateAgentModel(ctx context.Context, request UpdateAgentModelRequestObject) (UpdateAgentModelResponseObject, error)
	// List agent souls
	// (GET /settings/agent/souls)
	ListAgentSouls(ctx context.Context, request ListAgentSoulsRequestObject) (ListAgentSoulsResponseObject, error)
	// Create agent soul
	// (POST /settings/agent/souls)
	CreateAgentSoul(ctx context.Context, request CreateAgentSoulRequestObject) (CreateAgentSoulResponseObject, error)
	// Delete agent soul
	// (DELETE /settings/agent/souls/{soulId})
	DeleteAgentSoul(ctx context.Context, request DeleteAgentSoulRequestObject) (DeleteAgentSoulResponseObject, error)
	// Get agent soul
	// (GET /settings/agent/souls/{soulId})
	GetAgentSoul(ctx context.Context, request GetAgentSoulRequestObject) (GetAgentSoulResponseObject, error)
	// Update agent soul
	// (PATCH /settings/agent/souls/{soulId})
	UpdateAgentSoul(ctx context.Context, request UpdateAgentSoulRequestObject) (UpdateAgentSoulResponseObject, error)
	// List agent tools
	// (GET /settings/agent/tools)
	ListAgentTools(ctx context.Context, request ListAgentToolsRequestObject) (ListAgentToolsResponseObject, error)
	// Get base configuration
	// (GET /settings/base-config)
	GetBaseConfig(ctx context.Context, request GetBaseConfigRequestObject) (GetBaseConfigResponseObject, error)
	// Update base configuration
	// (PUT /settings/base-config)
	UpdateBaseConfig(ctx context.Context, request UpdateBaseConfigRequestObject) (UpdateBaseConfigResponseObject, error)
	// Get workspace base configuration
	// (GET /settings/workspaces/{workspaceName}/base-config)
	GetWorkspaceBaseConfig(ctx context.Context, request GetWorkspaceBaseConfigRequestObject) (GetWorkspaceBaseConfigResponseObject, error)
	// Update workspace base configuration
	// (PUT /settings/workspaces/{workspaceName}/base-config)
	UpdateWorkspaceBaseConfig(ctx context.Context, request UpdateWorkspaceBaseConfigRequestObject) (UpdateWorkspaceBaseConfigResponseObject, error)
	// Cleanup missing sync items
	// (POST /sync/cleanup)
	SyncCleanup(ctx context.Context, request SyncCleanupRequestObject) (SyncCleanupResponseObject, error)
	// Get Git sync configuration
	// (GET /sync/config)
	GetSyncConfig(ctx context.Context, request GetSyncConfigRequestObject) (GetSyncConfigResponseObject, error)
	// Update Git sync configuration
	// (PUT /sync/config)
	UpdateSyncConfig(ctx context.Context, request UpdateSyncConfigRequestObject) (UpdateSyncConfigResponseObject, error)
	// Delete selected sync items
	// (POST /sync/delete-batch)
	SyncDeleteBatch(ctx context.Context, request SyncDeleteBatchRequestObject) (SyncDeleteBatchResponseObject, error)
	// Delete all missing sync items
	// (POST /sync/delete-missing)
	SyncDeleteMissing(ctx context.Context, request SyncDeleteMissingRequestObject) (SyncDeleteMissingResponseObject, error)
	// Delete a sync item
	// (POST /sync/items/{itemId}/delete)
	DeleteSyncItem(ctx context.Context, request DeleteSyncItemRequestObject) (DeleteSyncItemResponseObject, error)
	// Get diff for a sync item
	// (GET /sync/items/{itemId}/diff)
	GetSyncItemDiff(ctx context.Context, request GetSyncItemDiffRequestObject) (GetSyncItemDiffResponseObject, error)
	// Discard local changes for a sync item
	// (POST /sync/items/{itemId}/discard)
	DiscardSyncItemChanges(ctx context.Context, request DiscardSyncItemChangesRequestObject) (DiscardSyncItemChangesResponseObject, error)
	// Forget a sync item
	// (POST /sync/items/{itemId}/forget)
	ForgetSyncItem(ctx context.Context, request ForgetSyncItemRequestObject) (ForgetSyncItemResponseObject, error)
	// Move a sync item
	// (POST /sync/items/{itemId}/move)
	MoveSyncItem(ctx context.Context, request MoveSyncItemRequestObject) (MoveSyncItemResponseObject, error)
	// Publish a single sync item
	// (POST /sync/items/{itemId}/publish)
	PublishSyncItem(ctx context.Context, request PublishSyncItemRequestObject) (PublishSyncItemResponseObject, error)
	// Publish selected DAGs
	// (POST /sync/publish-all)
	SyncPublishAll(ctx context.Context, request SyncPublishAllRequestObject) (SyncPublishAllResponseObject, error)
	// Pull changes from remote repository
	// (POST /sync/pull)
	SyncPull(ctx context.Context, request SyncPullRequestObject) (SyncPullResponseObject, error)
	// Get Git sync status
	// (GET /sync/status)
	GetSyncStatus(ctx context.Context, request GetSyncStatusRequestObject) (GetSyncStatusResponseObject, error)
	// Test connection to remote repository
	// (POST /sync/test-connection)
	SyncTestConnection(ctx context.Context, request SyncTestConnectionRequestObject) (SyncTestConnectionResponseObject, error)
	// List all users
	// (GET /users)
	ListUsers(ctx context.Context, request ListUsersRequestObject) (ListUsersResponseObject, error)
	// Create a new user
	// (POST /users)
	CreateUser(ctx context.Context, request CreateUserRequestObject) (CreateUserResponseObject, error)
	// Delete user
	// (DELETE /users/{userId})
	DeleteUser(ctx context.Context, request DeleteUserRequestObject) (DeleteUserResponseObject, error)
	// Get user by ID
	// (GET /users/{userId})
	GetUser(ctx context.Context, request GetUserRequestObject) (GetUserResponseObject, error)
	// Update user
	// (PATCH /users/{userId})
	UpdateUser(ctx context.Context, request UpdateUserRequestObject) (UpdateUserResponseObject, error)
	// Reset user's password
	// (POST /users/{userId}/reset-password)
	ResetUserPassword(ctx context.Context, request ResetUserPasswordRequestObject) (ResetUserPasswordResponseObject, error)
	// List all webhooks
	// (GET /webhooks)
	ListWebhooks(ctx context.Context, request ListWebhooksRequestObject) (ListWebhooksResponseObject, error)
	// Trigger DAG execution via webhook
	// (POST /webhooks/{fileName})
	TriggerWebhook(ctx context.Context, request TriggerWebhookRequestObject) (TriggerWebhookResponseObject, error)
	// List distributed workers
	// (GET /workers)
	GetWorkers(ctx context.Context, request GetWorkersRequestObject) (GetWorkersResponseObject, error)
	// List all workspaces
	// (GET /workspaces)
	ListWorkspaces(ctx context.Context, request ListWorkspacesRequestObject) (ListWorkspacesResponseObject, error)
	// Create a workspace
	// (POST /workspaces)
	CreateWorkspace(ctx context.Context, request CreateWorkspaceRequestObject) (CreateWorkspaceResponseObject, error)
	// Delete a workspace
	// (DELETE /workspaces/{workspaceId})
	DeleteWorkspace(ctx context.Context, request DeleteWorkspaceRequestObject) (DeleteWorkspaceResponseObject, error)
	// Get workspace by ID
	// (GET /workspaces/{workspaceId})
	GetWorkspace(ctx context.Context, request GetWorkspaceRequestObject) (GetWorkspaceResponseObject, error)
	// Update a workspace
	// (PATCH /workspaces/{workspaceId})
	UpdateWorkspace(ctx context.Context, request UpdateWorkspaceRequestObject) (UpdateWorkspaceResponseObject, error)
}

type StrictHandlerFunc = strictnethttp.StrictHTTPHandlerFunc
type StrictMiddlewareFunc = strictnethttp.StrictHTTPMiddlewareFunc

type StrictHTTPServerOptions struct {
	RequestErrorHandlerFunc  func(w http.ResponseWriter, r *http.Request, err error)
	ResponseErrorHandlerFunc func(w http.ResponseWriter, r *http.Request, err error)
}

func NewStrictHandler(ssi StrictServerInterface, middlewares []StrictMiddlewareFunc) ServerInterface {
	return &strictHandler{ssi: ssi, middlewares: middlewares, options: StrictHTTPServerOptions{
		RequestErrorHandlerFunc: func(w http.ResponseWriter, r *http.Request, err error) {
			http.Error(w, err.Error(), http.StatusBadRequest)
		},
		ResponseErrorHandlerFunc: func(w http.ResponseWriter, r *http.Request, err error) {
			http.Error(w, err.Error(), http.StatusInternalServerError)
		},
	}}
}

func NewStrictHandlerWithOptions(ssi StrictServerInterface, middlewares []StrictMiddlewareFunc, options StrictHTTPServerOptions) ServerInterface {
	return &strictHandler{ssi: ssi, middlewares: middlewares, options: options}
}

type strictHandler struct {
	ssi         StrictServerInterface
	middlewares []StrictMiddlewareFunc
	options     StrictHTTPServerOptions
}

// ListAgentSessions operation middleware
func (sh *strictHandler) ListAgentSessions(w http.ResponseWriter, r *http.Request, params ListAgentSessionsParams) {
	var request ListAgentSessionsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAgentSessions(ctx, request.(ListAgentSessionsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAgentSessions")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAgentSessionsResponseObject); ok {
		if err := validResponse.VisitListAgentSessionsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateAgentSession operation middleware
func (sh *strictHandler) CreateAgentSession(w http.ResponseWriter, r *http.Request, params CreateAgentSessionParams) {
	var request CreateAgentSessionRequestObject

	request.Params = params

	var body CreateAgentSessionJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateAgentSession(ctx, request.(CreateAgentSessionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateAgentSession")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateAgentSessionResponseObject); ok {
		if err := validResponse.VisitCreateAgentSessionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAgentSession operation middleware
func (sh *strictHandler) GetAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params GetAgentSessionParams) {
	var request GetAgentSessionRequestObject

	request.SessionId = sessionId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAgentSession(ctx, request.(GetAgentSessionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAgentSession")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAgentSessionResponseObject); ok {
		if err := validResponse.VisitGetAgentSessionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CancelAgentSession operation middleware
func (sh *strictHandler) CancelAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params CancelAgentSessionParams) {
	var request CancelAgentSessionRequestObject

	request.SessionId = sessionId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CancelAgentSession(ctx, request.(CancelAgentSessionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CancelAgentSession")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CancelAgentSessionResponseObject); ok {
		if err := validResponse.VisitCancelAgentSessionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ChatAgentSession operation middleware
func (sh *strictHandler) ChatAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params ChatAgentSessionParams) {
	var request ChatAgentSessionRequestObject

	request.SessionId = sessionId
	request.Params = params

	var body ChatAgentSessionJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ChatAgentSession(ctx, request.(ChatAgentSessionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ChatAgentSession")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ChatAgentSessionResponseObject); ok {
		if err := validResponse.VisitChatAgentSessionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RespondAgentSession operation middleware
func (sh *strictHandler) RespondAgentSession(w http.ResponseWriter, r *http.Request, sessionId AgentSessionId, params RespondAgentSessionParams) {
	var request RespondAgentSessionRequestObject

	request.SessionId = sessionId
	request.Params = params

	var body RespondAgentSessionJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RespondAgentSession(ctx, request.(RespondAgentSessionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RespondAgentSession")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RespondAgentSessionResponseObject); ok {
		if err := validResponse.VisitRespondAgentSessionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAPIKeys operation middleware
func (sh *strictHandler) ListAPIKeys(w http.ResponseWriter, r *http.Request) {
	var request ListAPIKeysRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAPIKeys(ctx, request.(ListAPIKeysRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAPIKeys")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAPIKeysResponseObject); ok {
		if err := validResponse.VisitListAPIKeysResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateAPIKey operation middleware
func (sh *strictHandler) CreateAPIKey(w http.ResponseWriter, r *http.Request) {
	var request CreateAPIKeyRequestObject

	var body CreateAPIKeyJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateAPIKey(ctx, request.(CreateAPIKeyRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateAPIKey")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateAPIKeyResponseObject); ok {
		if err := validResponse.VisitCreateAPIKeyResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteAPIKey operation middleware
func (sh *strictHandler) DeleteAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	var request DeleteAPIKeyRequestObject

	request.KeyId = keyId

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteAPIKey(ctx, request.(DeleteAPIKeyRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteAPIKey")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteAPIKeyResponseObject); ok {
		if err := validResponse.VisitDeleteAPIKeyResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAPIKey operation middleware
func (sh *strictHandler) GetAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	var request GetAPIKeyRequestObject

	request.KeyId = keyId

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAPIKey(ctx, request.(GetAPIKeyRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAPIKey")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAPIKeyResponseObject); ok {
		if err := validResponse.VisitGetAPIKeyResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAPIKey operation middleware
func (sh *strictHandler) UpdateAPIKey(w http.ResponseWriter, r *http.Request, keyId APIKeyId) {
	var request UpdateAPIKeyRequestObject

	request.KeyId = keyId

	var body UpdateAPIKeyJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAPIKey(ctx, request.(UpdateAPIKeyRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAPIKey")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAPIKeyResponseObject); ok {
		if err := validResponse.VisitUpdateAPIKeyResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAuditLogs operation middleware
func (sh *strictHandler) ListAuditLogs(w http.ResponseWriter, r *http.Request, params ListAuditLogsParams) {
	var request ListAuditLogsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAuditLogs(ctx, request.(ListAuditLogsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAuditLogs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAuditLogsResponseObject); ok {
		if err := validResponse.VisitListAuditLogsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ChangePassword operation middleware
func (sh *strictHandler) ChangePassword(w http.ResponseWriter, r *http.Request) {
	var request ChangePasswordRequestObject

	var body ChangePasswordJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ChangePassword(ctx, request.(ChangePasswordRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ChangePassword")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ChangePasswordResponseObject); ok {
		if err := validResponse.VisitChangePasswordResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// Login operation middleware
func (sh *strictHandler) Login(w http.ResponseWriter, r *http.Request) {
	var request LoginRequestObject

	var body LoginJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.Login(ctx, request.(LoginRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "Login")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(LoginResponseObject); ok {
		if err := validResponse.VisitLoginResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetCurrentUser operation middleware
func (sh *strictHandler) GetCurrentUser(w http.ResponseWriter, r *http.Request) {
	var request GetCurrentUserRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetCurrentUser(ctx, request.(GetCurrentUserRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetCurrentUser")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetCurrentUserResponseObject); ok {
		if err := validResponse.VisitGetCurrentUserResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// Setup operation middleware
func (sh *strictHandler) Setup(w http.ResponseWriter, r *http.Request, params SetupParams) {
	var request SetupRequestObject

	request.Params = params

	var body SetupJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.Setup(ctx, request.(SetupRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "Setup")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SetupResponseObject); ok {
		if err := validResponse.VisitSetupResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListDAGRuns operation middleware
func (sh *strictHandler) ListDAGRuns(w http.ResponseWriter, r *http.Request, params ListDAGRunsParams) {
	var request ListDAGRunsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListDAGRuns(ctx, request.(ListDAGRunsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListDAGRuns")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListDAGRunsResponseObject); ok {
		if err := validResponse.VisitListDAGRunsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ExecuteDAGRunFromSpec operation middleware
func (sh *strictHandler) ExecuteDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params ExecuteDAGRunFromSpecParams) {
	var request ExecuteDAGRunFromSpecRequestObject

	request.Params = params

	var body ExecuteDAGRunFromSpecJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ExecuteDAGRunFromSpec(ctx, request.(ExecuteDAGRunFromSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ExecuteDAGRunFromSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ExecuteDAGRunFromSpecResponseObject); ok {
		if err := validResponse.VisitExecuteDAGRunFromSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// EnqueueDAGRunFromSpec operation middleware
func (sh *strictHandler) EnqueueDAGRunFromSpec(w http.ResponseWriter, r *http.Request, params EnqueueDAGRunFromSpecParams) {
	var request EnqueueDAGRunFromSpecRequestObject

	request.Params = params

	var body EnqueueDAGRunFromSpecJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.EnqueueDAGRunFromSpec(ctx, request.(EnqueueDAGRunFromSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "EnqueueDAGRunFromSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(EnqueueDAGRunFromSpecResponseObject); ok {
		if err := validResponse.VisitEnqueueDAGRunFromSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListDAGRunsByName operation middleware
func (sh *strictHandler) ListDAGRunsByName(w http.ResponseWriter, r *http.Request, name DAGRunName, params ListDAGRunsByNameParams) {
	var request ListDAGRunsByNameRequestObject

	request.Name = name
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListDAGRunsByName(ctx, request.(ListDAGRunsByNameRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListDAGRunsByName")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListDAGRunsByNameResponseObject); ok {
		if err := validResponse.VisitListDAGRunsByNameResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDAGRun operation middleware
func (sh *strictHandler) DeleteDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunConcreteId, params DeleteDAGRunParams) {
	var request DeleteDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDAGRun(ctx, request.(DeleteDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDAGRunResponseObject); ok {
		if err := validResponse.VisitDeleteDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunDetails operation middleware
func (sh *strictHandler) GetDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunDetailsParams) {
	var request GetDAGRunDetailsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunDetails(ctx, request.(GetDAGRunDetailsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunDetails")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunDetailsResponseObject); ok {
		if err := validResponse.VisitGetDAGRunDetailsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunArtifacts operation middleware
func (sh *strictHandler) GetDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactsParams) {
	var request GetDAGRunArtifactsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunArtifacts(ctx, request.(GetDAGRunArtifactsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunArtifacts")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunArtifactsResponseObject); ok {
		if err := validResponse.VisitGetDAGRunArtifactsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadDAGRunArtifact operation middleware
func (sh *strictHandler) DownloadDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunArtifactParams) {
	var request DownloadDAGRunArtifactRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadDAGRunArtifact(ctx, request.(DownloadDAGRunArtifactRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadDAGRunArtifact")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadDAGRunArtifactResponseObject); ok {
		if err := validResponse.VisitDownloadDAGRunArtifactResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunArtifactPreview operation middleware
func (sh *strictHandler) GetDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunArtifactPreviewParams) {
	var request GetDAGRunArtifactPreviewRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunArtifactPreview(ctx, request.(GetDAGRunArtifactPreviewRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunArtifactPreview")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunArtifactPreviewResponseObject); ok {
		if err := validResponse.VisitGetDAGRunArtifactPreviewResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DequeueDAGRun operation middleware
func (sh *strictHandler) DequeueDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DequeueDAGRunParams) {
	var request DequeueDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DequeueDAGRun(ctx, request.(DequeueDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DequeueDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DequeueDAGRunResponseObject); ok {
		if err := validResponse.VisitDequeueDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// EditRetryDAGRun operation middleware
func (sh *strictHandler) EditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params EditRetryDAGRunParams) {
	var request EditRetryDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	var body EditRetryDAGRunJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.EditRetryDAGRun(ctx, request.(EditRetryDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "EditRetryDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(EditRetryDAGRunResponseObject); ok {
		if err := validResponse.VisitEditRetryDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// PreviewEditRetryDAGRun operation middleware
func (sh *strictHandler) PreviewEditRetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params PreviewEditRetryDAGRunParams) {
	var request PreviewEditRetryDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	var body PreviewEditRetryDAGRunJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.PreviewEditRetryDAGRun(ctx, request.(PreviewEditRetryDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "PreviewEditRetryDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(PreviewEditRetryDAGRunResponseObject); ok {
		if err := validResponse.VisitPreviewEditRetryDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunLog operation middleware
func (sh *strictHandler) GetDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunLogParams) {
	var request GetDAGRunLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunLog(ctx, request.(GetDAGRunLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunLogResponseObject); ok {
		if err := validResponse.VisitGetDAGRunLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadDAGRunLog operation middleware
func (sh *strictHandler) DownloadDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params DownloadDAGRunLogParams) {
	var request DownloadDAGRunLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadDAGRunLog(ctx, request.(DownloadDAGRunLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadDAGRunLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadDAGRunLogResponseObject); ok {
		if err := validResponse.VisitDownloadDAGRunLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunOutputs operation middleware
func (sh *strictHandler) GetDAGRunOutputs(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunOutputsParams) {
	var request GetDAGRunOutputsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunOutputs(ctx, request.(GetDAGRunOutputsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunOutputs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunOutputsResponseObject); ok {
		if err := validResponse.VisitGetDAGRunOutputsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RescheduleDAGRun operation middleware
func (sh *strictHandler) RescheduleDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RescheduleDAGRunParams) {
	var request RescheduleDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	var body RescheduleDAGRunJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RescheduleDAGRun(ctx, request.(RescheduleDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RescheduleDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RescheduleDAGRunResponseObject); ok {
		if err := validResponse.VisitRescheduleDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RetryDAGRun operation middleware
func (sh *strictHandler) RetryDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params RetryDAGRunParams) {
	var request RetryDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	var body RetryDAGRunJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RetryDAGRun(ctx, request.(RetryDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RetryDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RetryDAGRunResponseObject); ok {
		if err := validResponse.VisitRetryDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunSpec operation middleware
func (sh *strictHandler) GetDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetDAGRunSpecParams) {
	var request GetDAGRunSpecRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunSpec(ctx, request.(GetDAGRunSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunSpecResponseObject); ok {
		if err := validResponse.VisitGetDAGRunSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ApproveDAGRunStep operation middleware
func (sh *strictHandler) ApproveDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params ApproveDAGRunStepParams) {
	var request ApproveDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	var body ApproveDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ApproveDAGRunStep(ctx, request.(ApproveDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ApproveDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ApproveDAGRunStepResponseObject); ok {
		if err := validResponse.VisitApproveDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunStepLog operation middleware
func (sh *strictHandler) GetDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepLogParams) {
	var request GetDAGRunStepLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunStepLog(ctx, request.(GetDAGRunStepLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunStepLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunStepLogResponseObject); ok {
		if err := validResponse.VisitGetDAGRunStepLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadDAGRunStepLog operation middleware
func (sh *strictHandler) DownloadDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params DownloadDAGRunStepLogParams) {
	var request DownloadDAGRunStepLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadDAGRunStepLog(ctx, request.(DownloadDAGRunStepLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadDAGRunStepLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadDAGRunStepLogResponseObject); ok {
		if err := validResponse.VisitDownloadDAGRunStepLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGRunStepMessages operation middleware
func (sh *strictHandler) GetDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params GetDAGRunStepMessagesParams) {
	var request GetDAGRunStepMessagesRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGRunStepMessages(ctx, request.(GetDAGRunStepMessagesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGRunStepMessages")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGRunStepMessagesResponseObject); ok {
		if err := validResponse.VisitGetDAGRunStepMessagesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// PushBackDAGRunStep operation middleware
func (sh *strictHandler) PushBackDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params PushBackDAGRunStepParams) {
	var request PushBackDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	var body PushBackDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.PushBackDAGRunStep(ctx, request.(PushBackDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "PushBackDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(PushBackDAGRunStepResponseObject); ok {
		if err := validResponse.VisitPushBackDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RejectDAGRunStep operation middleware
func (sh *strictHandler) RejectDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params RejectDAGRunStepParams) {
	var request RejectDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	var body RejectDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RejectDAGRunStep(ctx, request.(RejectDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RejectDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RejectDAGRunStepResponseObject); ok {
		if err := validResponse.VisitRejectDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDAGRunStepStatus operation middleware
func (sh *strictHandler) UpdateDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, stepName StepName, params UpdateDAGRunStepStatusParams) {
	var request UpdateDAGRunStepStatusRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.StepName = stepName
	request.Params = params

	var body UpdateDAGRunStepStatusJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDAGRunStepStatus(ctx, request.(UpdateDAGRunStepStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDAGRunStepStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDAGRunStepStatusResponseObject); ok {
		if err := validResponse.VisitUpdateDAGRunStepStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// TerminateDAGRun operation middleware
func (sh *strictHandler) TerminateDAGRun(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params TerminateDAGRunParams) {
	var request TerminateDAGRunRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.TerminateDAGRun(ctx, request.(TerminateDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "TerminateDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(TerminateDAGRunResponseObject); ok {
		if err := validResponse.VisitTerminateDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRuns operation middleware
func (sh *strictHandler) GetSubDAGRuns(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, params GetSubDAGRunsParams) {
	var request GetSubDAGRunsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRuns(ctx, request.(GetSubDAGRunsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRuns")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunsResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunDetails operation middleware
func (sh *strictHandler) GetSubDAGRunDetails(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunDetailsParams) {
	var request GetSubDAGRunDetailsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunDetails(ctx, request.(GetSubDAGRunDetailsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunDetails")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunDetailsResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunDetailsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunArtifacts operation middleware
func (sh *strictHandler) GetSubDAGRunArtifacts(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactsParams) {
	var request GetSubDAGRunArtifactsRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunArtifacts(ctx, request.(GetSubDAGRunArtifactsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunArtifacts")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunArtifactsResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunArtifactsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadSubDAGRunArtifact operation middleware
func (sh *strictHandler) DownloadSubDAGRunArtifact(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunArtifactParams) {
	var request DownloadSubDAGRunArtifactRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadSubDAGRunArtifact(ctx, request.(DownloadSubDAGRunArtifactRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadSubDAGRunArtifact")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadSubDAGRunArtifactResponseObject); ok {
		if err := validResponse.VisitDownloadSubDAGRunArtifactResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunArtifactPreview operation middleware
func (sh *strictHandler) GetSubDAGRunArtifactPreview(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunArtifactPreviewParams) {
	var request GetSubDAGRunArtifactPreviewRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunArtifactPreview(ctx, request.(GetSubDAGRunArtifactPreviewRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunArtifactPreview")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunArtifactPreviewResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunArtifactPreviewResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunLog operation middleware
func (sh *strictHandler) GetSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunLogParams) {
	var request GetSubDAGRunLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunLog(ctx, request.(GetSubDAGRunLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunLogResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadSubDAGRunLog operation middleware
func (sh *strictHandler) DownloadSubDAGRunLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params DownloadSubDAGRunLogParams) {
	var request DownloadSubDAGRunLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadSubDAGRunLog(ctx, request.(DownloadSubDAGRunLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadSubDAGRunLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadSubDAGRunLogResponseObject); ok {
		if err := validResponse.VisitDownloadSubDAGRunLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunSpec operation middleware
func (sh *strictHandler) GetSubDAGRunSpec(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, params GetSubDAGRunSpecParams) {
	var request GetSubDAGRunSpecRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunSpec(ctx, request.(GetSubDAGRunSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunSpecResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ApproveSubDAGRunStep operation middleware
func (sh *strictHandler) ApproveSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params ApproveSubDAGRunStepParams) {
	var request ApproveSubDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	var body ApproveSubDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ApproveSubDAGRunStep(ctx, request.(ApproveSubDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ApproveSubDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ApproveSubDAGRunStepResponseObject); ok {
		if err := validResponse.VisitApproveSubDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunStepLog operation middleware
func (sh *strictHandler) GetSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepLogParams) {
	var request GetSubDAGRunStepLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunStepLog(ctx, request.(GetSubDAGRunStepLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunStepLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunStepLogResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunStepLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DownloadSubDAGRunStepLog operation middleware
func (sh *strictHandler) DownloadSubDAGRunStepLog(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params DownloadSubDAGRunStepLogParams) {
	var request DownloadSubDAGRunStepLogRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DownloadSubDAGRunStepLog(ctx, request.(DownloadSubDAGRunStepLogRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DownloadSubDAGRunStepLog")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DownloadSubDAGRunStepLogResponseObject); ok {
		if err := validResponse.VisitDownloadSubDAGRunStepLogResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSubDAGRunStepMessages operation middleware
func (sh *strictHandler) GetSubDAGRunStepMessages(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params GetSubDAGRunStepMessagesParams) {
	var request GetSubDAGRunStepMessagesRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSubDAGRunStepMessages(ctx, request.(GetSubDAGRunStepMessagesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSubDAGRunStepMessages")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSubDAGRunStepMessagesResponseObject); ok {
		if err := validResponse.VisitGetSubDAGRunStepMessagesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// PushBackSubDAGRunStep operation middleware
func (sh *strictHandler) PushBackSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params PushBackSubDAGRunStepParams) {
	var request PushBackSubDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	var body PushBackSubDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.PushBackSubDAGRunStep(ctx, request.(PushBackSubDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "PushBackSubDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(PushBackSubDAGRunStepResponseObject); ok {
		if err := validResponse.VisitPushBackSubDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RejectSubDAGRunStep operation middleware
func (sh *strictHandler) RejectSubDAGRunStep(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params RejectSubDAGRunStepParams) {
	var request RejectSubDAGRunStepRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	var body RejectSubDAGRunStepJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RejectSubDAGRunStep(ctx, request.(RejectSubDAGRunStepRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RejectSubDAGRunStep")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RejectSubDAGRunStepResponseObject); ok {
		if err := validResponse.VisitRejectSubDAGRunStepResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateSubDAGRunStepStatus operation middleware
func (sh *strictHandler) UpdateSubDAGRunStepStatus(w http.ResponseWriter, r *http.Request, name DAGName, dagRunId DAGRunId, subDAGRunId string, stepName StepName, params UpdateSubDAGRunStepStatusParams) {
	var request UpdateSubDAGRunStepStatusRequestObject

	request.Name = name
	request.DagRunId = dagRunId
	request.SubDAGRunId = subDAGRunId
	request.StepName = stepName
	request.Params = params

	var body UpdateSubDAGRunStepStatusJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateSubDAGRunStepStatus(ctx, request.(UpdateSubDAGRunStepStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateSubDAGRunStepStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateSubDAGRunStepStatusResponseObject); ok {
		if err := validResponse.VisitUpdateSubDAGRunStepStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListDAGs operation middleware
func (sh *strictHandler) ListDAGs(w http.ResponseWriter, r *http.Request, params ListDAGsParams) {
	var request ListDAGsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListDAGs(ctx, request.(ListDAGsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListDAGs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListDAGsResponseObject); ok {
		if err := validResponse.VisitListDAGsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateNewDAG operation middleware
func (sh *strictHandler) CreateNewDAG(w http.ResponseWriter, r *http.Request, params CreateNewDAGParams) {
	var request CreateNewDAGRequestObject

	request.Params = params

	var body CreateNewDAGJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateNewDAG(ctx, request.(CreateNewDAGRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateNewDAG")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateNewDAGResponseObject); ok {
		if err := validResponse.VisitCreateNewDAGResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAllDAGLabels operation middleware
func (sh *strictHandler) GetAllDAGLabels(w http.ResponseWriter, r *http.Request, params GetAllDAGLabelsParams) {
	var request GetAllDAGLabelsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAllDAGLabels(ctx, request.(GetAllDAGLabelsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAllDAGLabels")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAllDAGLabelsResponseObject); ok {
		if err := validResponse.VisitGetAllDAGLabelsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDAGs operation middleware
func (sh *strictHandler) SearchDAGs(w http.ResponseWriter, r *http.Request, params SearchDAGsParams) {
	var request SearchDAGsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDAGs(ctx, request.(SearchDAGsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDAGs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDAGsResponseObject); ok {
		if err := validResponse.VisitSearchDAGsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAllDAGTags operation middleware
func (sh *strictHandler) GetAllDAGTags(w http.ResponseWriter, r *http.Request, params GetAllDAGTagsParams) {
	var request GetAllDAGTagsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAllDAGTags(ctx, request.(GetAllDAGTagsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAllDAGTags")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAllDAGTagsResponseObject); ok {
		if err := validResponse.VisitGetAllDAGTagsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ValidateDAGSpec operation middleware
func (sh *strictHandler) ValidateDAGSpec(w http.ResponseWriter, r *http.Request, params ValidateDAGSpecParams) {
	var request ValidateDAGSpecRequestObject

	request.Params = params

	var body ValidateDAGSpecJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ValidateDAGSpec(ctx, request.(ValidateDAGSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ValidateDAGSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ValidateDAGSpecResponseObject); ok {
		if err := validResponse.VisitValidateDAGSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDAG operation middleware
func (sh *strictHandler) DeleteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGParams) {
	var request DeleteDAGRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDAG(ctx, request.(DeleteDAGRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDAG")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDAGResponseObject); ok {
		if err := validResponse.VisitDeleteDAGResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGDetails operation middleware
func (sh *strictHandler) GetDAGDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDetailsParams) {
	var request GetDAGDetailsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGDetails(ctx, request.(GetDAGDetailsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGDetails")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGDetailsResponseObject); ok {
		if err := validResponse.VisitGetDAGDetailsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGDAGRunHistory operation middleware
func (sh *strictHandler) GetDAGDAGRunHistory(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGDAGRunHistoryParams) {
	var request GetDAGDAGRunHistoryRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGDAGRunHistory(ctx, request.(GetDAGDAGRunHistoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGDAGRunHistory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGDAGRunHistoryResponseObject); ok {
		if err := validResponse.VisitGetDAGDAGRunHistoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGDAGRunDetails operation middleware
func (sh *strictHandler) GetDAGDAGRunDetails(w http.ResponseWriter, r *http.Request, fileName DAGFileName, dagRunId DAGRunId, params GetDAGDAGRunDetailsParams) {
	var request GetDAGDAGRunDetailsRequestObject

	request.FileName = fileName
	request.DagRunId = dagRunId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGDAGRunDetails(ctx, request.(GetDAGDAGRunDetailsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGDAGRunDetails")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGDAGRunDetailsResponseObject); ok {
		if err := validResponse.VisitGetDAGDAGRunDetailsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// EnqueueDAGDAGRun operation middleware
func (sh *strictHandler) EnqueueDAGDAGRun(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnqueueDAGDAGRunParams) {
	var request EnqueueDAGDAGRunRequestObject

	request.FileName = fileName
	request.Params = params

	var body EnqueueDAGDAGRunJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.EnqueueDAGDAGRun(ctx, request.(EnqueueDAGDAGRunRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "EnqueueDAGDAGRun")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(EnqueueDAGDAGRunResponseObject); ok {
		if err := validResponse.VisitEnqueueDAGDAGRunResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDAGIncidents operation middleware
func (sh *strictHandler) DeleteDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGIncidentsParams) {
	var request DeleteDAGIncidentsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDAGIncidents(ctx, request.(DeleteDAGIncidentsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDAGIncidents")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDAGIncidentsResponseObject); ok {
		if err := validResponse.VisitDeleteDAGIncidentsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGIncidents operation middleware
func (sh *strictHandler) GetDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGIncidentsParams) {
	var request GetDAGIncidentsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGIncidents(ctx, request.(GetDAGIncidentsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGIncidents")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGIncidentsResponseObject); ok {
		if err := validResponse.VisitGetDAGIncidentsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDAGIncidents operation middleware
func (sh *strictHandler) UpdateDAGIncidents(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGIncidentsParams) {
	var request UpdateDAGIncidentsRequestObject

	request.FileName = fileName
	request.Params = params

	var body UpdateDAGIncidentsJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDAGIncidents(ctx, request.(UpdateDAGIncidentsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDAGIncidents")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDAGIncidentsResponseObject); ok {
		if err := validResponse.VisitUpdateDAGIncidentsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDAGNotifications operation middleware
func (sh *strictHandler) DeleteDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGNotificationsParams) {
	var request DeleteDAGNotificationsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDAGNotifications(ctx, request.(DeleteDAGNotificationsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDAGNotifications")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDAGNotificationsResponseObject); ok {
		if err := validResponse.VisitDeleteDAGNotificationsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGNotifications operation middleware
func (sh *strictHandler) GetDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGNotificationsParams) {
	var request GetDAGNotificationsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGNotifications(ctx, request.(GetDAGNotificationsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGNotifications")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGNotificationsResponseObject); ok {
		if err := validResponse.VisitGetDAGNotificationsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDAGNotifications operation middleware
func (sh *strictHandler) UpdateDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGNotificationsParams) {
	var request UpdateDAGNotificationsRequestObject

	request.FileName = fileName
	request.Params = params

	var body UpdateDAGNotificationsJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDAGNotifications(ctx, request.(UpdateDAGNotificationsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDAGNotifications")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDAGNotificationsResponseObject); ok {
		if err := validResponse.VisitUpdateDAGNotificationsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// TestDAGNotifications operation middleware
func (sh *strictHandler) TestDAGNotifications(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TestDAGNotificationsParams) {
	var request TestDAGNotificationsRequestObject

	request.FileName = fileName
	request.Params = params

	var body TestDAGNotificationsJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.TestDAGNotifications(ctx, request.(TestDAGNotificationsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "TestDAGNotifications")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(TestDAGNotificationsResponseObject); ok {
		if err := validResponse.VisitTestDAGNotificationsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RenameDAG operation middleware
func (sh *strictHandler) RenameDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RenameDAGParams) {
	var request RenameDAGRequestObject

	request.FileName = fileName
	request.Params = params

	var body RenameDAGJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RenameDAG(ctx, request.(RenameDAGRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RenameDAG")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RenameDAGResponseObject); ok {
		if err := validResponse.VisitRenameDAGResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGSpec operation middleware
func (sh *strictHandler) GetDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGSpecParams) {
	var request GetDAGSpecRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGSpec(ctx, request.(GetDAGSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGSpecResponseObject); ok {
		if err := validResponse.VisitGetDAGSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDAGSpec operation middleware
func (sh *strictHandler) UpdateDAGSpec(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSpecParams) {
	var request UpdateDAGSpecRequestObject

	request.FileName = fileName
	request.Params = params

	var body UpdateDAGSpecJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDAGSpec(ctx, request.(UpdateDAGSpecRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDAGSpec")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDAGSpecResponseObject); ok {
		if err := validResponse.VisitUpdateDAGSpecResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ExecuteDAG operation middleware
func (sh *strictHandler) ExecuteDAG(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGParams) {
	var request ExecuteDAGRequestObject

	request.FileName = fileName
	request.Params = params

	var body ExecuteDAGJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ExecuteDAG(ctx, request.(ExecuteDAGRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ExecuteDAG")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ExecuteDAGResponseObject); ok {
		if err := validResponse.VisitExecuteDAGResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ExecuteDAGSync operation middleware
func (sh *strictHandler) ExecuteDAGSync(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ExecuteDAGSyncParams) {
	var request ExecuteDAGSyncRequestObject

	request.FileName = fileName
	request.Params = params

	var body ExecuteDAGSyncJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ExecuteDAGSync(ctx, request.(ExecuteDAGSyncRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ExecuteDAGSync")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ExecuteDAGSyncResponseObject); ok {
		if err := validResponse.VisitExecuteDAGSyncResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// StopAllDAGRuns operation middleware
func (sh *strictHandler) StopAllDAGRuns(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params StopAllDAGRunsParams) {
	var request StopAllDAGRunsRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.StopAllDAGRuns(ctx, request.(StopAllDAGRunsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "StopAllDAGRuns")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(StopAllDAGRunsResponseObject); ok {
		if err := validResponse.VisitStopAllDAGRunsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDAGSuspensionState operation middleware
func (sh *strictHandler) UpdateDAGSuspensionState(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params UpdateDAGSuspensionStateParams) {
	var request UpdateDAGSuspensionStateRequestObject

	request.FileName = fileName
	request.Params = params

	var body UpdateDAGSuspensionStateJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDAGSuspensionState(ctx, request.(UpdateDAGSuspensionStateRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDAGSuspensionState")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDAGSuspensionStateResponseObject); ok {
		if err := validResponse.VisitUpdateDAGSuspensionStateResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDAGWebhook operation middleware
func (sh *strictHandler) DeleteDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DeleteDAGWebhookParams) {
	var request DeleteDAGWebhookRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDAGWebhook(ctx, request.(DeleteDAGWebhookRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDAGWebhook")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDAGWebhookResponseObject); ok {
		if err := validResponse.VisitDeleteDAGWebhookResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDAGWebhook operation middleware
func (sh *strictHandler) GetDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params GetDAGWebhookParams) {
	var request GetDAGWebhookRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDAGWebhook(ctx, request.(GetDAGWebhookRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDAGWebhook")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDAGWebhookResponseObject); ok {
		if err := validResponse.VisitGetDAGWebhookResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateDAGWebhook operation middleware
func (sh *strictHandler) CreateDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params CreateDAGWebhookParams) {
	var request CreateDAGWebhookRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateDAGWebhook(ctx, request.(CreateDAGWebhookRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateDAGWebhook")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateDAGWebhookResponseObject); ok {
		if err := validResponse.VisitCreateDAGWebhookResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ConfigureDAGWebhookHMAC operation middleware
func (sh *strictHandler) ConfigureDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ConfigureDAGWebhookHMACParams) {
	var request ConfigureDAGWebhookHMACRequestObject

	request.FileName = fileName
	request.Params = params

	var body ConfigureDAGWebhookHMACJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ConfigureDAGWebhookHMAC(ctx, request.(ConfigureDAGWebhookHMACRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ConfigureDAGWebhookHMAC")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ConfigureDAGWebhookHMACResponseObject); ok {
		if err := validResponse.VisitConfigureDAGWebhookHMACResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DisableDAGWebhookHMAC operation middleware
func (sh *strictHandler) DisableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params DisableDAGWebhookHMACParams) {
	var request DisableDAGWebhookHMACRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DisableDAGWebhookHMAC(ctx, request.(DisableDAGWebhookHMACRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DisableDAGWebhookHMAC")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DisableDAGWebhookHMACResponseObject); ok {
		if err := validResponse.VisitDisableDAGWebhookHMACResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// EnableDAGWebhookHMAC operation middleware
func (sh *strictHandler) EnableDAGWebhookHMAC(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params EnableDAGWebhookHMACParams) {
	var request EnableDAGWebhookHMACRequestObject

	request.FileName = fileName
	request.Params = params

	var body EnableDAGWebhookHMACJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.EnableDAGWebhookHMAC(ctx, request.(EnableDAGWebhookHMACRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "EnableDAGWebhookHMAC")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(EnableDAGWebhookHMACResponseObject); ok {
		if err := validResponse.VisitEnableDAGWebhookHMACResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RegenerateDAGWebhookHMACSecret operation middleware
func (sh *strictHandler) RegenerateDAGWebhookHMACSecret(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookHMACSecretParams) {
	var request RegenerateDAGWebhookHMACSecretRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RegenerateDAGWebhookHMACSecret(ctx, request.(RegenerateDAGWebhookHMACSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RegenerateDAGWebhookHMACSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RegenerateDAGWebhookHMACSecretResponseObject); ok {
		if err := validResponse.VisitRegenerateDAGWebhookHMACSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RegenerateDAGWebhookToken operation middleware
func (sh *strictHandler) RegenerateDAGWebhookToken(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params RegenerateDAGWebhookTokenParams) {
	var request RegenerateDAGWebhookTokenRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RegenerateDAGWebhookToken(ctx, request.(RegenerateDAGWebhookTokenRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RegenerateDAGWebhookToken")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RegenerateDAGWebhookTokenResponseObject); ok {
		if err := validResponse.VisitRegenerateDAGWebhookTokenResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ToggleDAGWebhook operation middleware
func (sh *strictHandler) ToggleDAGWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params ToggleDAGWebhookParams) {
	var request ToggleDAGWebhookRequestObject

	request.FileName = fileName
	request.Params = params

	var body ToggleDAGWebhookJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ToggleDAGWebhook(ctx, request.(ToggleDAGWebhookRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ToggleDAGWebhook")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ToggleDAGWebhookResponseObject); ok {
		if err := validResponse.VisitToggleDAGWebhookResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListDocs operation middleware
func (sh *strictHandler) ListDocs(w http.ResponseWriter, r *http.Request, params ListDocsParams) {
	var request ListDocsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListDocs(ctx, request.(ListDocsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListDocs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListDocsResponseObject); ok {
		if err := validResponse.VisitListDocsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateDoc operation middleware
func (sh *strictHandler) CreateDoc(w http.ResponseWriter, r *http.Request, params CreateDocParams) {
	var request CreateDocRequestObject

	request.Params = params

	var body CreateDocJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateDoc(ctx, request.(CreateDocRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateDoc")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateDocResponseObject); ok {
		if err := validResponse.VisitCreateDocResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDocBatch operation middleware
func (sh *strictHandler) DeleteDocBatch(w http.ResponseWriter, r *http.Request, params DeleteDocBatchParams) {
	var request DeleteDocBatchRequestObject

	request.Params = params

	var body DeleteDocBatchJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDocBatch(ctx, request.(DeleteDocBatchRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDocBatch")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDocBatchResponseObject); ok {
		if err := validResponse.VisitDeleteDocBatchResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteDoc operation middleware
func (sh *strictHandler) DeleteDoc(w http.ResponseWriter, r *http.Request, params DeleteDocParams) {
	var request DeleteDocRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteDoc(ctx, request.(DeleteDocRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteDoc")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteDocResponseObject); ok {
		if err := validResponse.VisitDeleteDocResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetDoc operation middleware
func (sh *strictHandler) GetDoc(w http.ResponseWriter, r *http.Request, params GetDocParams) {
	var request GetDocRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetDoc(ctx, request.(GetDocRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetDoc")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetDocResponseObject); ok {
		if err := validResponse.VisitGetDocResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateDoc operation middleware
func (sh *strictHandler) UpdateDoc(w http.ResponseWriter, r *http.Request, params UpdateDocParams) {
	var request UpdateDocRequestObject

	request.Params = params

	var body UpdateDocJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateDoc(ctx, request.(UpdateDocRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateDoc")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateDocResponseObject); ok {
		if err := validResponse.VisitUpdateDocResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// RenameDoc operation middleware
func (sh *strictHandler) RenameDoc(w http.ResponseWriter, r *http.Request, params RenameDocParams) {
	var request RenameDocRequestObject

	request.Params = params

	var body RenameDocJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.RenameDoc(ctx, request.(RenameDocRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "RenameDoc")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(RenameDocResponseObject); ok {
		if err := validResponse.VisitRenameDocResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDocs operation middleware
func (sh *strictHandler) SearchDocs(w http.ResponseWriter, r *http.Request, params SearchDocsParams) {
	var request SearchDocsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDocs(ctx, request.(SearchDocsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDocs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDocsResponseObject); ok {
		if err := validResponse.VisitSearchDocsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListEventLogs operation middleware
func (sh *strictHandler) ListEventLogs(w http.ResponseWriter, r *http.Request, params ListEventLogsParams) {
	var request ListEventLogsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListEventLogs(ctx, request.(ListEventLogsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListEventLogs")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListEventLogsResponseObject); ok {
		if err := validResponse.VisitListEventLogsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetHealthStatus operation middleware
func (sh *strictHandler) GetHealthStatus(w http.ResponseWriter, r *http.Request) {
	var request GetHealthStatusRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetHealthStatus(ctx, request.(GetHealthStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetHealthStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetHealthStatusResponseObject); ok {
		if err := validResponse.VisitGetHealthStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListIncidentPolicies operation middleware
func (sh *strictHandler) ListIncidentPolicies(w http.ResponseWriter, r *http.Request, params ListIncidentPoliciesParams) {
	var request ListIncidentPoliciesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListIncidentPolicies(ctx, request.(ListIncidentPoliciesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListIncidentPolicies")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListIncidentPoliciesResponseObject); ok {
		if err := validResponse.VisitListIncidentPoliciesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetGlobalIncidentPolicies operation middleware
func (sh *strictHandler) GetGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params GetGlobalIncidentPoliciesParams) {
	var request GetGlobalIncidentPoliciesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetGlobalIncidentPolicies(ctx, request.(GetGlobalIncidentPoliciesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetGlobalIncidentPolicies")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetGlobalIncidentPoliciesResponseObject); ok {
		if err := validResponse.VisitGetGlobalIncidentPoliciesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateGlobalIncidentPolicies operation middleware
func (sh *strictHandler) UpdateGlobalIncidentPolicies(w http.ResponseWriter, r *http.Request, params UpdateGlobalIncidentPoliciesParams) {
	var request UpdateGlobalIncidentPoliciesRequestObject

	request.Params = params

	var body UpdateGlobalIncidentPoliciesJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateGlobalIncidentPolicies(ctx, request.(UpdateGlobalIncidentPoliciesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateGlobalIncidentPolicies")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateGlobalIncidentPoliciesResponseObject); ok {
		if err := validResponse.VisitUpdateGlobalIncidentPoliciesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetWorkspaceIncidentPolicies operation middleware
func (sh *strictHandler) GetWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceIncidentPoliciesParams) {
	var request GetWorkspaceIncidentPoliciesRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetWorkspaceIncidentPolicies(ctx, request.(GetWorkspaceIncidentPoliciesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetWorkspaceIncidentPolicies")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetWorkspaceIncidentPoliciesResponseObject); ok {
		if err := validResponse.VisitGetWorkspaceIncidentPoliciesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateWorkspaceIncidentPolicies operation middleware
func (sh *strictHandler) UpdateWorkspaceIncidentPolicies(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceIncidentPoliciesParams) {
	var request UpdateWorkspaceIncidentPoliciesRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	var body UpdateWorkspaceIncidentPoliciesJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateWorkspaceIncidentPolicies(ctx, request.(UpdateWorkspaceIncidentPoliciesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateWorkspaceIncidentPolicies")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateWorkspaceIncidentPoliciesResponseObject); ok {
		if err := validResponse.VisitUpdateWorkspaceIncidentPoliciesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListIncidentProviders operation middleware
func (sh *strictHandler) ListIncidentProviders(w http.ResponseWriter, r *http.Request, params ListIncidentProvidersParams) {
	var request ListIncidentProvidersRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListIncidentProviders(ctx, request.(ListIncidentProvidersRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListIncidentProviders")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListIncidentProvidersResponseObject); ok {
		if err := validResponse.VisitListIncidentProvidersResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateIncidentProvider operation middleware
func (sh *strictHandler) CreateIncidentProvider(w http.ResponseWriter, r *http.Request, params CreateIncidentProviderParams) {
	var request CreateIncidentProviderRequestObject

	request.Params = params

	var body CreateIncidentProviderJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateIncidentProvider(ctx, request.(CreateIncidentProviderRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateIncidentProvider")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateIncidentProviderResponseObject); ok {
		if err := validResponse.VisitCreateIncidentProviderResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteIncidentProvider operation middleware
func (sh *strictHandler) DeleteIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params DeleteIncidentProviderParams) {
	var request DeleteIncidentProviderRequestObject

	request.ProviderId = providerId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteIncidentProvider(ctx, request.(DeleteIncidentProviderRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteIncidentProvider")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteIncidentProviderResponseObject); ok {
		if err := validResponse.VisitDeleteIncidentProviderResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetIncidentProvider operation middleware
func (sh *strictHandler) GetIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params GetIncidentProviderParams) {
	var request GetIncidentProviderRequestObject

	request.ProviderId = providerId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetIncidentProvider(ctx, request.(GetIncidentProviderRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetIncidentProvider")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetIncidentProviderResponseObject); ok {
		if err := validResponse.VisitGetIncidentProviderResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateIncidentProvider operation middleware
func (sh *strictHandler) UpdateIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params UpdateIncidentProviderParams) {
	var request UpdateIncidentProviderRequestObject

	request.ProviderId = providerId
	request.Params = params

	var body UpdateIncidentProviderJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateIncidentProvider(ctx, request.(UpdateIncidentProviderRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateIncidentProvider")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateIncidentProviderResponseObject); ok {
		if err := validResponse.VisitUpdateIncidentProviderResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// TestIncidentProvider operation middleware
func (sh *strictHandler) TestIncidentProvider(w http.ResponseWriter, r *http.Request, providerId string, params TestIncidentProviderParams) {
	var request TestIncidentProviderRequestObject

	request.ProviderId = providerId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.TestIncidentProvider(ctx, request.(TestIncidentProviderRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "TestIncidentProvider")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(TestIncidentProviderResponseObject); ok {
		if err := validResponse.VisitTestIncidentProviderResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ActivateLicense operation middleware
func (sh *strictHandler) ActivateLicense(w http.ResponseWriter, r *http.Request, params ActivateLicenseParams) {
	var request ActivateLicenseRequestObject

	request.Params = params

	var body ActivateLicenseJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ActivateLicense(ctx, request.(ActivateLicenseRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ActivateLicense")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ActivateLicenseResponseObject); ok {
		if err := validResponse.VisitActivateLicenseResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeactivateLicense operation middleware
func (sh *strictHandler) DeactivateLicense(w http.ResponseWriter, r *http.Request, params DeactivateLicenseParams) {
	var request DeactivateLicenseRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeactivateLicense(ctx, request.(DeactivateLicenseRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeactivateLicense")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeactivateLicenseResponseObject); ok {
		if err := validResponse.VisitDeactivateLicenseResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetMetrics operation middleware
func (sh *strictHandler) GetMetrics(w http.ResponseWriter, r *http.Request) {
	var request GetMetricsRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetMetrics(ctx, request.(GetMetricsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetMetrics")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetMetricsResponseObject); ok {
		if err := validResponse.VisitGetMetricsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListNotificationChannels operation middleware
func (sh *strictHandler) ListNotificationChannels(w http.ResponseWriter, r *http.Request, params ListNotificationChannelsParams) {
	var request ListNotificationChannelsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListNotificationChannels(ctx, request.(ListNotificationChannelsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListNotificationChannels")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListNotificationChannelsResponseObject); ok {
		if err := validResponse.VisitListNotificationChannelsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateNotificationChannel operation middleware
func (sh *strictHandler) CreateNotificationChannel(w http.ResponseWriter, r *http.Request, params CreateNotificationChannelParams) {
	var request CreateNotificationChannelRequestObject

	request.Params = params

	var body CreateNotificationChannelJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateNotificationChannel(ctx, request.(CreateNotificationChannelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateNotificationChannel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateNotificationChannelResponseObject); ok {
		if err := validResponse.VisitCreateNotificationChannelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteNotificationChannel operation middleware
func (sh *strictHandler) DeleteNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params DeleteNotificationChannelParams) {
	var request DeleteNotificationChannelRequestObject

	request.ChannelId = channelId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteNotificationChannel(ctx, request.(DeleteNotificationChannelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteNotificationChannel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteNotificationChannelResponseObject); ok {
		if err := validResponse.VisitDeleteNotificationChannelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetNotificationChannel operation middleware
func (sh *strictHandler) GetNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params GetNotificationChannelParams) {
	var request GetNotificationChannelRequestObject

	request.ChannelId = channelId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetNotificationChannel(ctx, request.(GetNotificationChannelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetNotificationChannel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetNotificationChannelResponseObject); ok {
		if err := validResponse.VisitGetNotificationChannelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateNotificationChannel operation middleware
func (sh *strictHandler) UpdateNotificationChannel(w http.ResponseWriter, r *http.Request, channelId string, params UpdateNotificationChannelParams) {
	var request UpdateNotificationChannelRequestObject

	request.ChannelId = channelId
	request.Params = params

	var body UpdateNotificationChannelJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateNotificationChannel(ctx, request.(UpdateNotificationChannelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateNotificationChannel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateNotificationChannelResponseObject); ok {
		if err := validResponse.VisitUpdateNotificationChannelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListNotificationRoutes operation middleware
func (sh *strictHandler) ListNotificationRoutes(w http.ResponseWriter, r *http.Request, params ListNotificationRoutesParams) {
	var request ListNotificationRoutesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListNotificationRoutes(ctx, request.(ListNotificationRoutesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListNotificationRoutes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListNotificationRoutesResponseObject); ok {
		if err := validResponse.VisitListNotificationRoutesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetGlobalNotificationRoutes operation middleware
func (sh *strictHandler) GetGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params GetGlobalNotificationRoutesParams) {
	var request GetGlobalNotificationRoutesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetGlobalNotificationRoutes(ctx, request.(GetGlobalNotificationRoutesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetGlobalNotificationRoutes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetGlobalNotificationRoutesResponseObject); ok {
		if err := validResponse.VisitGetGlobalNotificationRoutesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateGlobalNotificationRoutes operation middleware
func (sh *strictHandler) UpdateGlobalNotificationRoutes(w http.ResponseWriter, r *http.Request, params UpdateGlobalNotificationRoutesParams) {
	var request UpdateGlobalNotificationRoutesRequestObject

	request.Params = params

	var body UpdateGlobalNotificationRoutesJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateGlobalNotificationRoutes(ctx, request.(UpdateGlobalNotificationRoutesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateGlobalNotificationRoutes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateGlobalNotificationRoutesResponseObject); ok {
		if err := validResponse.VisitUpdateGlobalNotificationRoutesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetWorkspaceNotificationRoutes operation middleware
func (sh *strictHandler) GetWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceNotificationRoutesParams) {
	var request GetWorkspaceNotificationRoutesRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetWorkspaceNotificationRoutes(ctx, request.(GetWorkspaceNotificationRoutesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetWorkspaceNotificationRoutes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetWorkspaceNotificationRoutesResponseObject); ok {
		if err := validResponse.VisitGetWorkspaceNotificationRoutesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateWorkspaceNotificationRoutes operation middleware
func (sh *strictHandler) UpdateWorkspaceNotificationRoutes(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceNotificationRoutesParams) {
	var request UpdateWorkspaceNotificationRoutesRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	var body UpdateWorkspaceNotificationRoutesJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateWorkspaceNotificationRoutes(ctx, request.(UpdateWorkspaceNotificationRoutesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateWorkspaceNotificationRoutes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateWorkspaceNotificationRoutesResponseObject); ok {
		if err := validResponse.VisitUpdateWorkspaceNotificationRoutesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetNotificationSettings operation middleware
func (sh *strictHandler) GetNotificationSettings(w http.ResponseWriter, r *http.Request, params GetNotificationSettingsParams) {
	var request GetNotificationSettingsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetNotificationSettings(ctx, request.(GetNotificationSettingsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetNotificationSettings")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetNotificationSettingsResponseObject); ok {
		if err := validResponse.VisitGetNotificationSettingsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateNotificationSettings operation middleware
func (sh *strictHandler) UpdateNotificationSettings(w http.ResponseWriter, r *http.Request, params UpdateNotificationSettingsParams) {
	var request UpdateNotificationSettingsRequestObject

	request.Params = params

	var body UpdateNotificationSettingsJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateNotificationSettings(ctx, request.(UpdateNotificationSettingsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateNotificationSettings")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateNotificationSettingsResponseObject); ok {
		if err := validResponse.VisitUpdateNotificationSettingsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetOpenapiJson operation middleware
func (sh *strictHandler) GetOpenapiJson(w http.ResponseWriter, r *http.Request) {
	var request GetOpenapiJsonRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetOpenapiJson(ctx, request.(GetOpenapiJsonRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetOpenapiJson")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetOpenapiJsonResponseObject); ok {
		if err := validResponse.VisitGetOpenapiJsonResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListQueues operation middleware
func (sh *strictHandler) ListQueues(w http.ResponseWriter, r *http.Request, params ListQueuesParams) {
	var request ListQueuesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListQueues(ctx, request.(ListQueuesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListQueues")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListQueuesResponseObject); ok {
		if err := validResponse.VisitListQueuesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetQueue operation middleware
func (sh *strictHandler) GetQueue(w http.ResponseWriter, r *http.Request, name string, params GetQueueParams) {
	var request GetQueueRequestObject

	request.Name = name
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetQueue(ctx, request.(GetQueueRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetQueue")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetQueueResponseObject); ok {
		if err := validResponse.VisitGetQueueResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListQueueItems operation middleware
func (sh *strictHandler) ListQueueItems(w http.ResponseWriter, r *http.Request, name string, params ListQueueItemsParams) {
	var request ListQueueItemsRequestObject

	request.Name = name
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListQueueItems(ctx, request.(ListQueueItemsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListQueueItems")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListQueueItemsResponseObject); ok {
		if err := validResponse.VisitListQueueItemsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListRemoteNodes operation middleware
func (sh *strictHandler) ListRemoteNodes(w http.ResponseWriter, r *http.Request, params ListRemoteNodesParams) {
	var request ListRemoteNodesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListRemoteNodes(ctx, request.(ListRemoteNodesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListRemoteNodes")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListRemoteNodesResponseObject); ok {
		if err := validResponse.VisitListRemoteNodesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateRemoteNode operation middleware
func (sh *strictHandler) CreateRemoteNode(w http.ResponseWriter, r *http.Request, params CreateRemoteNodeParams) {
	var request CreateRemoteNodeRequestObject

	request.Params = params

	var body CreateRemoteNodeJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateRemoteNode(ctx, request.(CreateRemoteNodeRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateRemoteNode")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateRemoteNodeResponseObject); ok {
		if err := validResponse.VisitCreateRemoteNodeResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteRemoteNode operation middleware
func (sh *strictHandler) DeleteRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params DeleteRemoteNodeParams) {
	var request DeleteRemoteNodeRequestObject

	request.RemoteNodeId = remoteNodeId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteRemoteNode(ctx, request.(DeleteRemoteNodeRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteRemoteNode")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteRemoteNodeResponseObject); ok {
		if err := validResponse.VisitDeleteRemoteNodeResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetRemoteNode operation middleware
func (sh *strictHandler) GetRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params GetRemoteNodeParams) {
	var request GetRemoteNodeRequestObject

	request.RemoteNodeId = remoteNodeId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetRemoteNode(ctx, request.(GetRemoteNodeRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetRemoteNode")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetRemoteNodeResponseObject); ok {
		if err := validResponse.VisitGetRemoteNodeResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateRemoteNode operation middleware
func (sh *strictHandler) UpdateRemoteNode(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params UpdateRemoteNodeParams) {
	var request UpdateRemoteNodeRequestObject

	request.RemoteNodeId = remoteNodeId
	request.Params = params

	var body UpdateRemoteNodeJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateRemoteNode(ctx, request.(UpdateRemoteNodeRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateRemoteNode")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateRemoteNodeResponseObject); ok {
		if err := validResponse.VisitUpdateRemoteNodeResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// TestRemoteNodeConnection operation middleware
func (sh *strictHandler) TestRemoteNodeConnection(w http.ResponseWriter, r *http.Request, remoteNodeId RemoteNodeId, params TestRemoteNodeConnectionParams) {
	var request TestRemoteNodeConnectionRequestObject

	request.RemoteNodeId = remoteNodeId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.TestRemoteNodeConnection(ctx, request.(TestRemoteNodeConnectionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "TestRemoteNodeConnection")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(TestRemoteNodeConnectionResponseObject); ok {
		if err := validResponse.VisitTestRemoteNodeConnectionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDAGFeed operation middleware
func (sh *strictHandler) SearchDAGFeed(w http.ResponseWriter, r *http.Request, params SearchDAGFeedParams) {
	var request SearchDAGFeedRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDAGFeed(ctx, request.(SearchDAGFeedRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDAGFeed")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDAGFeedResponseObject); ok {
		if err := validResponse.VisitSearchDAGFeedResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDagMatches operation middleware
func (sh *strictHandler) SearchDagMatches(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params SearchDagMatchesParams) {
	var request SearchDagMatchesRequestObject

	request.FileName = fileName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDagMatches(ctx, request.(SearchDagMatchesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDagMatches")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDagMatchesResponseObject); ok {
		if err := validResponse.VisitSearchDagMatchesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDocFeed operation middleware
func (sh *strictHandler) SearchDocFeed(w http.ResponseWriter, r *http.Request, params SearchDocFeedParams) {
	var request SearchDocFeedRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDocFeed(ctx, request.(SearchDocFeedRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDocFeed")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDocFeedResponseObject); ok {
		if err := validResponse.VisitSearchDocFeedResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SearchDocMatches operation middleware
func (sh *strictHandler) SearchDocMatches(w http.ResponseWriter, r *http.Request, params SearchDocMatchesParams) {
	var request SearchDocMatchesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SearchDocMatches(ctx, request.(SearchDocMatchesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SearchDocMatches")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SearchDocMatchesResponseObject); ok {
		if err := validResponse.VisitSearchDocMatchesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListSecrets operation middleware
func (sh *strictHandler) ListSecrets(w http.ResponseWriter, r *http.Request, params ListSecretsParams) {
	var request ListSecretsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListSecrets(ctx, request.(ListSecretsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListSecrets")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListSecretsResponseObject); ok {
		if err := validResponse.VisitListSecretsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateSecret operation middleware
func (sh *strictHandler) CreateSecret(w http.ResponseWriter, r *http.Request, params CreateSecretParams) {
	var request CreateSecretRequestObject

	request.Params = params

	var body CreateSecretJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateSecret(ctx, request.(CreateSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateSecretResponseObject); ok {
		if err := validResponse.VisitCreateSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteSecret operation middleware
func (sh *strictHandler) DeleteSecret(w http.ResponseWriter, r *http.Request, secretId string, params DeleteSecretParams) {
	var request DeleteSecretRequestObject

	request.SecretId = secretId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteSecret(ctx, request.(DeleteSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteSecretResponseObject); ok {
		if err := validResponse.VisitDeleteSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSecret operation middleware
func (sh *strictHandler) GetSecret(w http.ResponseWriter, r *http.Request, secretId string, params GetSecretParams) {
	var request GetSecretRequestObject

	request.SecretId = secretId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSecret(ctx, request.(GetSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSecretResponseObject); ok {
		if err := validResponse.VisitGetSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateSecret operation middleware
func (sh *strictHandler) UpdateSecret(w http.ResponseWriter, r *http.Request, secretId string, params UpdateSecretParams) {
	var request UpdateSecretRequestObject

	request.SecretId = secretId
	request.Params = params

	var body UpdateSecretJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateSecret(ctx, request.(UpdateSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateSecretResponseObject); ok {
		if err := validResponse.VisitUpdateSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DisableSecret operation middleware
func (sh *strictHandler) DisableSecret(w http.ResponseWriter, r *http.Request, secretId string, params DisableSecretParams) {
	var request DisableSecretRequestObject

	request.SecretId = secretId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DisableSecret(ctx, request.(DisableSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DisableSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DisableSecretResponseObject); ok {
		if err := validResponse.VisitDisableSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// EnableSecret operation middleware
func (sh *strictHandler) EnableSecret(w http.ResponseWriter, r *http.Request, secretId string, params EnableSecretParams) {
	var request EnableSecretRequestObject

	request.SecretId = secretId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.EnableSecret(ctx, request.(EnableSecretRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "EnableSecret")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(EnableSecretResponseObject); ok {
		if err := validResponse.VisitEnableSecretResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// WriteSecretVersion operation middleware
func (sh *strictHandler) WriteSecretVersion(w http.ResponseWriter, r *http.Request, secretId string, params WriteSecretVersionParams) {
	var request WriteSecretVersionRequestObject

	request.SecretId = secretId
	request.Params = params

	var body WriteSecretVersionJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.WriteSecretVersion(ctx, request.(WriteSecretVersionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "WriteSecretVersion")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(WriteSecretVersionResponseObject); ok {
		if err := validResponse.VisitWriteSecretVersionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetCoordinatorStatus operation middleware
func (sh *strictHandler) GetCoordinatorStatus(w http.ResponseWriter, r *http.Request, params GetCoordinatorStatusParams) {
	var request GetCoordinatorStatusRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetCoordinatorStatus(ctx, request.(GetCoordinatorStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetCoordinatorStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetCoordinatorStatusResponseObject); ok {
		if err := validResponse.VisitGetCoordinatorStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetResourceHistory operation middleware
func (sh *strictHandler) GetResourceHistory(w http.ResponseWriter, r *http.Request, params GetResourceHistoryParams) {
	var request GetResourceHistoryRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetResourceHistory(ctx, request.(GetResourceHistoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetResourceHistory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetResourceHistoryResponseObject); ok {
		if err := validResponse.VisitGetResourceHistoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSchedulerStatus operation middleware
func (sh *strictHandler) GetSchedulerStatus(w http.ResponseWriter, r *http.Request, params GetSchedulerStatusParams) {
	var request GetSchedulerStatusRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSchedulerStatus(ctx, request.(GetSchedulerStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSchedulerStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSchedulerStatusResponseObject); ok {
		if err := validResponse.VisitGetSchedulerStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetTunnelStatus operation middleware
func (sh *strictHandler) GetTunnelStatus(w http.ResponseWriter, r *http.Request, params GetTunnelStatusParams) {
	var request GetTunnelStatusRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetTunnelStatus(ctx, request.(GetTunnelStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetTunnelStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetTunnelStatusResponseObject); ok {
		if err := validResponse.VisitGetTunnelStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAgentConfig operation middleware
func (sh *strictHandler) GetAgentConfig(w http.ResponseWriter, r *http.Request, params GetAgentConfigParams) {
	var request GetAgentConfigRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAgentConfig(ctx, request.(GetAgentConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAgentConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAgentConfigResponseObject); ok {
		if err := validResponse.VisitGetAgentConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAgentConfig operation middleware
func (sh *strictHandler) UpdateAgentConfig(w http.ResponseWriter, r *http.Request, params UpdateAgentConfigParams) {
	var request UpdateAgentConfigRequestObject

	request.Params = params

	var body UpdateAgentConfigJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAgentConfig(ctx, request.(UpdateAgentConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAgentConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAgentConfigResponseObject); ok {
		if err := validResponse.VisitUpdateAgentConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAgentAuthProviders operation middleware
func (sh *strictHandler) ListAgentAuthProviders(w http.ResponseWriter, r *http.Request, params ListAgentAuthProvidersParams) {
	var request ListAgentAuthProvidersRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAgentAuthProviders(ctx, request.(ListAgentAuthProvidersRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAgentAuthProviders")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAgentAuthProvidersResponseObject); ok {
		if err := validResponse.VisitListAgentAuthProvidersResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DisconnectAgentAuthProviderLogin operation middleware
func (sh *strictHandler) DisconnectAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params DisconnectAgentAuthProviderLoginParams) {
	var request DisconnectAgentAuthProviderLoginRequestObject

	request.ProviderId = providerId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DisconnectAgentAuthProviderLogin(ctx, request.(DisconnectAgentAuthProviderLoginRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DisconnectAgentAuthProviderLogin")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DisconnectAgentAuthProviderLoginResponseObject); ok {
		if err := validResponse.VisitDisconnectAgentAuthProviderLoginResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// StartAgentAuthProviderLogin operation middleware
func (sh *strictHandler) StartAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params StartAgentAuthProviderLoginParams) {
	var request StartAgentAuthProviderLoginRequestObject

	request.ProviderId = providerId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.StartAgentAuthProviderLogin(ctx, request.(StartAgentAuthProviderLoginRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "StartAgentAuthProviderLogin")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(StartAgentAuthProviderLoginResponseObject); ok {
		if err := validResponse.VisitStartAgentAuthProviderLoginResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CompleteAgentAuthProviderLogin operation middleware
func (sh *strictHandler) CompleteAgentAuthProviderLogin(w http.ResponseWriter, r *http.Request, providerId string, params CompleteAgentAuthProviderLoginParams) {
	var request CompleteAgentAuthProviderLoginRequestObject

	request.ProviderId = providerId
	request.Params = params

	var body CompleteAgentAuthProviderLoginJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CompleteAgentAuthProviderLogin(ctx, request.(CompleteAgentAuthProviderLoginRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CompleteAgentAuthProviderLogin")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CompleteAgentAuthProviderLoginResponseObject); ok {
		if err := validResponse.VisitCompleteAgentAuthProviderLoginResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SetDefaultAgentModel operation middleware
func (sh *strictHandler) SetDefaultAgentModel(w http.ResponseWriter, r *http.Request, params SetDefaultAgentModelParams) {
	var request SetDefaultAgentModelRequestObject

	request.Params = params

	var body SetDefaultAgentModelJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SetDefaultAgentModel(ctx, request.(SetDefaultAgentModelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SetDefaultAgentModel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SetDefaultAgentModelResponseObject); ok {
		if err := validResponse.VisitSetDefaultAgentModelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteAgentMemory operation middleware
func (sh *strictHandler) DeleteAgentMemory(w http.ResponseWriter, r *http.Request, params DeleteAgentMemoryParams) {
	var request DeleteAgentMemoryRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteAgentMemory(ctx, request.(DeleteAgentMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteAgentMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteAgentMemoryResponseObject); ok {
		if err := validResponse.VisitDeleteAgentMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAgentMemory operation middleware
func (sh *strictHandler) GetAgentMemory(w http.ResponseWriter, r *http.Request, params GetAgentMemoryParams) {
	var request GetAgentMemoryRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAgentMemory(ctx, request.(GetAgentMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAgentMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAgentMemoryResponseObject); ok {
		if err := validResponse.VisitGetAgentMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAgentMemory operation middleware
func (sh *strictHandler) UpdateAgentMemory(w http.ResponseWriter, r *http.Request, params UpdateAgentMemoryParams) {
	var request UpdateAgentMemoryRequestObject

	request.Params = params

	var body UpdateAgentMemoryJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAgentMemory(ctx, request.(UpdateAgentMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAgentMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAgentMemoryResponseObject); ok {
		if err := validResponse.VisitUpdateAgentMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteAgentDAGMemory operation middleware
func (sh *strictHandler) DeleteAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params DeleteAgentDAGMemoryParams) {
	var request DeleteAgentDAGMemoryRequestObject

	request.DagName = dagName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteAgentDAGMemory(ctx, request.(DeleteAgentDAGMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteAgentDAGMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteAgentDAGMemoryResponseObject); ok {
		if err := validResponse.VisitDeleteAgentDAGMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAgentDAGMemory operation middleware
func (sh *strictHandler) GetAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params GetAgentDAGMemoryParams) {
	var request GetAgentDAGMemoryRequestObject

	request.DagName = dagName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAgentDAGMemory(ctx, request.(GetAgentDAGMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAgentDAGMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAgentDAGMemoryResponseObject); ok {
		if err := validResponse.VisitGetAgentDAGMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAgentDAGMemory operation middleware
func (sh *strictHandler) UpdateAgentDAGMemory(w http.ResponseWriter, r *http.Request, dagName DAGName, params UpdateAgentDAGMemoryParams) {
	var request UpdateAgentDAGMemoryRequestObject

	request.DagName = dagName
	request.Params = params

	var body UpdateAgentDAGMemoryJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAgentDAGMemory(ctx, request.(UpdateAgentDAGMemoryRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAgentDAGMemory")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAgentDAGMemoryResponseObject); ok {
		if err := validResponse.VisitUpdateAgentDAGMemoryResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListModelPresets operation middleware
func (sh *strictHandler) ListModelPresets(w http.ResponseWriter, r *http.Request, params ListModelPresetsParams) {
	var request ListModelPresetsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListModelPresets(ctx, request.(ListModelPresetsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListModelPresets")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListModelPresetsResponseObject); ok {
		if err := validResponse.VisitListModelPresetsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAgentModels operation middleware
func (sh *strictHandler) ListAgentModels(w http.ResponseWriter, r *http.Request, params ListAgentModelsParams) {
	var request ListAgentModelsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAgentModels(ctx, request.(ListAgentModelsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAgentModels")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAgentModelsResponseObject); ok {
		if err := validResponse.VisitListAgentModelsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateAgentModel operation middleware
func (sh *strictHandler) CreateAgentModel(w http.ResponseWriter, r *http.Request, params CreateAgentModelParams) {
	var request CreateAgentModelRequestObject

	request.Params = params

	var body CreateAgentModelJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateAgentModel(ctx, request.(CreateAgentModelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateAgentModel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateAgentModelResponseObject); ok {
		if err := validResponse.VisitCreateAgentModelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteAgentModel operation middleware
func (sh *strictHandler) DeleteAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params DeleteAgentModelParams) {
	var request DeleteAgentModelRequestObject

	request.ModelId = modelId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteAgentModel(ctx, request.(DeleteAgentModelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteAgentModel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteAgentModelResponseObject); ok {
		if err := validResponse.VisitDeleteAgentModelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAgentModel operation middleware
func (sh *strictHandler) UpdateAgentModel(w http.ResponseWriter, r *http.Request, modelId string, params UpdateAgentModelParams) {
	var request UpdateAgentModelRequestObject

	request.ModelId = modelId
	request.Params = params

	var body UpdateAgentModelJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAgentModel(ctx, request.(UpdateAgentModelRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAgentModel")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAgentModelResponseObject); ok {
		if err := validResponse.VisitUpdateAgentModelResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAgentSouls operation middleware
func (sh *strictHandler) ListAgentSouls(w http.ResponseWriter, r *http.Request, params ListAgentSoulsParams) {
	var request ListAgentSoulsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAgentSouls(ctx, request.(ListAgentSoulsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAgentSouls")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAgentSoulsResponseObject); ok {
		if err := validResponse.VisitListAgentSoulsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateAgentSoul operation middleware
func (sh *strictHandler) CreateAgentSoul(w http.ResponseWriter, r *http.Request, params CreateAgentSoulParams) {
	var request CreateAgentSoulRequestObject

	request.Params = params

	var body CreateAgentSoulJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateAgentSoul(ctx, request.(CreateAgentSoulRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateAgentSoul")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateAgentSoulResponseObject); ok {
		if err := validResponse.VisitCreateAgentSoulResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteAgentSoul operation middleware
func (sh *strictHandler) DeleteAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params DeleteAgentSoulParams) {
	var request DeleteAgentSoulRequestObject

	request.SoulId = soulId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteAgentSoul(ctx, request.(DeleteAgentSoulRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteAgentSoul")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteAgentSoulResponseObject); ok {
		if err := validResponse.VisitDeleteAgentSoulResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetAgentSoul operation middleware
func (sh *strictHandler) GetAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params GetAgentSoulParams) {
	var request GetAgentSoulRequestObject

	request.SoulId = soulId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetAgentSoul(ctx, request.(GetAgentSoulRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetAgentSoul")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetAgentSoulResponseObject); ok {
		if err := validResponse.VisitGetAgentSoulResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateAgentSoul operation middleware
func (sh *strictHandler) UpdateAgentSoul(w http.ResponseWriter, r *http.Request, soulId SoulId, params UpdateAgentSoulParams) {
	var request UpdateAgentSoulRequestObject

	request.SoulId = soulId
	request.Params = params

	var body UpdateAgentSoulJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateAgentSoul(ctx, request.(UpdateAgentSoulRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateAgentSoul")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateAgentSoulResponseObject); ok {
		if err := validResponse.VisitUpdateAgentSoulResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListAgentTools operation middleware
func (sh *strictHandler) ListAgentTools(w http.ResponseWriter, r *http.Request, params ListAgentToolsParams) {
	var request ListAgentToolsRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListAgentTools(ctx, request.(ListAgentToolsRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListAgentTools")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListAgentToolsResponseObject); ok {
		if err := validResponse.VisitListAgentToolsResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetBaseConfig operation middleware
func (sh *strictHandler) GetBaseConfig(w http.ResponseWriter, r *http.Request, params GetBaseConfigParams) {
	var request GetBaseConfigRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetBaseConfig(ctx, request.(GetBaseConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetBaseConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetBaseConfigResponseObject); ok {
		if err := validResponse.VisitGetBaseConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateBaseConfig operation middleware
func (sh *strictHandler) UpdateBaseConfig(w http.ResponseWriter, r *http.Request, params UpdateBaseConfigParams) {
	var request UpdateBaseConfigRequestObject

	request.Params = params

	var body UpdateBaseConfigJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateBaseConfig(ctx, request.(UpdateBaseConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateBaseConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateBaseConfigResponseObject); ok {
		if err := validResponse.VisitUpdateBaseConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetWorkspaceBaseConfig operation middleware
func (sh *strictHandler) GetWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params GetWorkspaceBaseConfigParams) {
	var request GetWorkspaceBaseConfigRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetWorkspaceBaseConfig(ctx, request.(GetWorkspaceBaseConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetWorkspaceBaseConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetWorkspaceBaseConfigResponseObject); ok {
		if err := validResponse.VisitGetWorkspaceBaseConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateWorkspaceBaseConfig operation middleware
func (sh *strictHandler) UpdateWorkspaceBaseConfig(w http.ResponseWriter, r *http.Request, workspaceName WorkspaceName, params UpdateWorkspaceBaseConfigParams) {
	var request UpdateWorkspaceBaseConfigRequestObject

	request.WorkspaceName = workspaceName
	request.Params = params

	var body UpdateWorkspaceBaseConfigJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateWorkspaceBaseConfig(ctx, request.(UpdateWorkspaceBaseConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateWorkspaceBaseConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateWorkspaceBaseConfigResponseObject); ok {
		if err := validResponse.VisitUpdateWorkspaceBaseConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncCleanup operation middleware
func (sh *strictHandler) SyncCleanup(w http.ResponseWriter, r *http.Request, params SyncCleanupParams) {
	var request SyncCleanupRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncCleanup(ctx, request.(SyncCleanupRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncCleanup")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncCleanupResponseObject); ok {
		if err := validResponse.VisitSyncCleanupResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSyncConfig operation middleware
func (sh *strictHandler) GetSyncConfig(w http.ResponseWriter, r *http.Request, params GetSyncConfigParams) {
	var request GetSyncConfigRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSyncConfig(ctx, request.(GetSyncConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSyncConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSyncConfigResponseObject); ok {
		if err := validResponse.VisitGetSyncConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateSyncConfig operation middleware
func (sh *strictHandler) UpdateSyncConfig(w http.ResponseWriter, r *http.Request, params UpdateSyncConfigParams) {
	var request UpdateSyncConfigRequestObject

	request.Params = params

	var body UpdateSyncConfigJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateSyncConfig(ctx, request.(UpdateSyncConfigRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateSyncConfig")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateSyncConfigResponseObject); ok {
		if err := validResponse.VisitUpdateSyncConfigResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncDeleteBatch operation middleware
func (sh *strictHandler) SyncDeleteBatch(w http.ResponseWriter, r *http.Request, params SyncDeleteBatchParams) {
	var request SyncDeleteBatchRequestObject

	request.Params = params

	var body SyncDeleteBatchJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncDeleteBatch(ctx, request.(SyncDeleteBatchRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncDeleteBatch")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncDeleteBatchResponseObject); ok {
		if err := validResponse.VisitSyncDeleteBatchResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncDeleteMissing operation middleware
func (sh *strictHandler) SyncDeleteMissing(w http.ResponseWriter, r *http.Request, params SyncDeleteMissingParams) {
	var request SyncDeleteMissingRequestObject

	request.Params = params

	var body SyncDeleteMissingJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncDeleteMissing(ctx, request.(SyncDeleteMissingRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncDeleteMissing")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncDeleteMissingResponseObject); ok {
		if err := validResponse.VisitSyncDeleteMissingResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteSyncItem operation middleware
func (sh *strictHandler) DeleteSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params DeleteSyncItemParams) {
	var request DeleteSyncItemRequestObject

	request.ItemId = itemId
	request.Params = params

	var body DeleteSyncItemJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteSyncItem(ctx, request.(DeleteSyncItemRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteSyncItem")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteSyncItemResponseObject); ok {
		if err := validResponse.VisitDeleteSyncItemResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSyncItemDiff operation middleware
func (sh *strictHandler) GetSyncItemDiff(w http.ResponseWriter, r *http.Request, itemId string, params GetSyncItemDiffParams) {
	var request GetSyncItemDiffRequestObject

	request.ItemId = itemId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSyncItemDiff(ctx, request.(GetSyncItemDiffRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSyncItemDiff")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSyncItemDiffResponseObject); ok {
		if err := validResponse.VisitGetSyncItemDiffResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DiscardSyncItemChanges operation middleware
func (sh *strictHandler) DiscardSyncItemChanges(w http.ResponseWriter, r *http.Request, itemId string, params DiscardSyncItemChangesParams) {
	var request DiscardSyncItemChangesRequestObject

	request.ItemId = itemId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DiscardSyncItemChanges(ctx, request.(DiscardSyncItemChangesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DiscardSyncItemChanges")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DiscardSyncItemChangesResponseObject); ok {
		if err := validResponse.VisitDiscardSyncItemChangesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ForgetSyncItem operation middleware
func (sh *strictHandler) ForgetSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params ForgetSyncItemParams) {
	var request ForgetSyncItemRequestObject

	request.ItemId = itemId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ForgetSyncItem(ctx, request.(ForgetSyncItemRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ForgetSyncItem")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ForgetSyncItemResponseObject); ok {
		if err := validResponse.VisitForgetSyncItemResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// MoveSyncItem operation middleware
func (sh *strictHandler) MoveSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params MoveSyncItemParams) {
	var request MoveSyncItemRequestObject

	request.ItemId = itemId
	request.Params = params

	var body MoveSyncItemJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.MoveSyncItem(ctx, request.(MoveSyncItemRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "MoveSyncItem")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(MoveSyncItemResponseObject); ok {
		if err := validResponse.VisitMoveSyncItemResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// PublishSyncItem operation middleware
func (sh *strictHandler) PublishSyncItem(w http.ResponseWriter, r *http.Request, itemId string, params PublishSyncItemParams) {
	var request PublishSyncItemRequestObject

	request.ItemId = itemId
	request.Params = params

	var body PublishSyncItemJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.PublishSyncItem(ctx, request.(PublishSyncItemRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "PublishSyncItem")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(PublishSyncItemResponseObject); ok {
		if err := validResponse.VisitPublishSyncItemResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncPublishAll operation middleware
func (sh *strictHandler) SyncPublishAll(w http.ResponseWriter, r *http.Request, params SyncPublishAllParams) {
	var request SyncPublishAllRequestObject

	request.Params = params

	var body SyncPublishAllJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncPublishAll(ctx, request.(SyncPublishAllRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncPublishAll")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncPublishAllResponseObject); ok {
		if err := validResponse.VisitSyncPublishAllResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncPull operation middleware
func (sh *strictHandler) SyncPull(w http.ResponseWriter, r *http.Request, params SyncPullParams) {
	var request SyncPullRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncPull(ctx, request.(SyncPullRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncPull")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncPullResponseObject); ok {
		if err := validResponse.VisitSyncPullResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetSyncStatus operation middleware
func (sh *strictHandler) GetSyncStatus(w http.ResponseWriter, r *http.Request, params GetSyncStatusParams) {
	var request GetSyncStatusRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetSyncStatus(ctx, request.(GetSyncStatusRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetSyncStatus")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetSyncStatusResponseObject); ok {
		if err := validResponse.VisitGetSyncStatusResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// SyncTestConnection operation middleware
func (sh *strictHandler) SyncTestConnection(w http.ResponseWriter, r *http.Request, params SyncTestConnectionParams) {
	var request SyncTestConnectionRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.SyncTestConnection(ctx, request.(SyncTestConnectionRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "SyncTestConnection")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(SyncTestConnectionResponseObject); ok {
		if err := validResponse.VisitSyncTestConnectionResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListUsers operation middleware
func (sh *strictHandler) ListUsers(w http.ResponseWriter, r *http.Request) {
	var request ListUsersRequestObject

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListUsers(ctx, request.(ListUsersRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListUsers")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListUsersResponseObject); ok {
		if err := validResponse.VisitListUsersResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateUser operation middleware
func (sh *strictHandler) CreateUser(w http.ResponseWriter, r *http.Request) {
	var request CreateUserRequestObject

	var body CreateUserJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateUser(ctx, request.(CreateUserRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateUser")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateUserResponseObject); ok {
		if err := validResponse.VisitCreateUserResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteUser operation middleware
func (sh *strictHandler) DeleteUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	var request DeleteUserRequestObject

	request.UserId = userId

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteUser(ctx, request.(DeleteUserRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteUser")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteUserResponseObject); ok {
		if err := validResponse.VisitDeleteUserResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetUser operation middleware
func (sh *strictHandler) GetUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	var request GetUserRequestObject

	request.UserId = userId

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetUser(ctx, request.(GetUserRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetUser")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetUserResponseObject); ok {
		if err := validResponse.VisitGetUserResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateUser operation middleware
func (sh *strictHandler) UpdateUser(w http.ResponseWriter, r *http.Request, userId UserId) {
	var request UpdateUserRequestObject

	request.UserId = userId

	var body UpdateUserJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateUser(ctx, request.(UpdateUserRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateUser")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateUserResponseObject); ok {
		if err := validResponse.VisitUpdateUserResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ResetUserPassword operation middleware
func (sh *strictHandler) ResetUserPassword(w http.ResponseWriter, r *http.Request, userId UserId) {
	var request ResetUserPasswordRequestObject

	request.UserId = userId

	var body ResetUserPasswordJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ResetUserPassword(ctx, request.(ResetUserPasswordRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ResetUserPassword")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ResetUserPasswordResponseObject); ok {
		if err := validResponse.VisitResetUserPasswordResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListWebhooks operation middleware
func (sh *strictHandler) ListWebhooks(w http.ResponseWriter, r *http.Request, params ListWebhooksParams) {
	var request ListWebhooksRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListWebhooks(ctx, request.(ListWebhooksRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListWebhooks")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListWebhooksResponseObject); ok {
		if err := validResponse.VisitListWebhooksResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// TriggerWebhook operation middleware
func (sh *strictHandler) TriggerWebhook(w http.ResponseWriter, r *http.Request, fileName DAGFileName, params TriggerWebhookParams) {
	var request TriggerWebhookRequestObject

	request.FileName = fileName
	request.Params = params

	var body TriggerWebhookJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.TriggerWebhook(ctx, request.(TriggerWebhookRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "TriggerWebhook")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(TriggerWebhookResponseObject); ok {
		if err := validResponse.VisitTriggerWebhookResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetWorkers operation middleware
func (sh *strictHandler) GetWorkers(w http.ResponseWriter, r *http.Request, params GetWorkersParams) {
	var request GetWorkersRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetWorkers(ctx, request.(GetWorkersRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetWorkers")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetWorkersResponseObject); ok {
		if err := validResponse.VisitGetWorkersResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// ListWorkspaces operation middleware
func (sh *strictHandler) ListWorkspaces(w http.ResponseWriter, r *http.Request, params ListWorkspacesParams) {
	var request ListWorkspacesRequestObject

	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.ListWorkspaces(ctx, request.(ListWorkspacesRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "ListWorkspaces")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(ListWorkspacesResponseObject); ok {
		if err := validResponse.VisitListWorkspacesResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// CreateWorkspace operation middleware
func (sh *strictHandler) CreateWorkspace(w http.ResponseWriter, r *http.Request, params CreateWorkspaceParams) {
	var request CreateWorkspaceRequestObject

	request.Params = params

	var body CreateWorkspaceJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.CreateWorkspace(ctx, request.(CreateWorkspaceRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "CreateWorkspace")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(CreateWorkspaceResponseObject); ok {
		if err := validResponse.VisitCreateWorkspaceResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// DeleteWorkspace operation middleware
func (sh *strictHandler) DeleteWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params DeleteWorkspaceParams) {
	var request DeleteWorkspaceRequestObject

	request.WorkspaceId = workspaceId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.DeleteWorkspace(ctx, request.(DeleteWorkspaceRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "DeleteWorkspace")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(DeleteWorkspaceResponseObject); ok {
		if err := validResponse.VisitDeleteWorkspaceResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// GetWorkspace operation middleware
func (sh *strictHandler) GetWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params GetWorkspaceParams) {
	var request GetWorkspaceRequestObject

	request.WorkspaceId = workspaceId
	request.Params = params

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.GetWorkspace(ctx, request.(GetWorkspaceRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "GetWorkspace")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(GetWorkspaceResponseObject); ok {
		if err := validResponse.VisitGetWorkspaceResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// UpdateWorkspace operation middleware
func (sh *strictHandler) UpdateWorkspace(w http.ResponseWriter, r *http.Request, workspaceId string, params UpdateWorkspaceParams) {
	var request UpdateWorkspaceRequestObject

	request.WorkspaceId = workspaceId
	request.Params = params

	var body UpdateWorkspaceJSONRequestBody
	if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
		sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
		return
	}
	request.Body = &body

	handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
		return sh.ssi.UpdateWorkspace(ctx, request.(UpdateWorkspaceRequestObject))
	}
	for _, middleware := range sh.middlewares {
		handler = middleware(handler, "UpdateWorkspace")
	}

	response, err := handler(r.Context(), w, r, request)

	if err != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, err)
	} else if validResponse, ok := response.(UpdateWorkspaceResponseObject); ok {
		if err := validResponse.VisitUpdateWorkspaceResponse(w); err != nil {
			sh.options.ResponseErrorHandlerFunc(w, r, err)
		}
	} else if response != nil {
		sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
	}
}

// Base64 encoded, gzipped, json marshaled Swagger object
var swaggerSpec = []string{

	"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",
}

// GetSwagger returns the content of the embedded swagger specification file
// or error if failed to decode
func decodeSpec() ([]byte, error) {
	zipped, err := base64.StdEncoding.DecodeString(strings.Join(swaggerSpec, ""))
	if err != nil {
		return nil, fmt.Errorf("error base64 decoding spec: %w", err)
	}
	zr, err := gzip.NewReader(bytes.NewReader(zipped))
	if err != nil {
		return nil, fmt.Errorf("error decompressing spec: %w", err)
	}
	var buf bytes.Buffer
	_, err = buf.ReadFrom(zr)
	if err != nil {
		return nil, fmt.Errorf("error decompressing spec: %w", err)
	}

	return buf.Bytes(), nil
}

var rawSpec = decodeSpecCached()

// a naive cached of a decoded swagger spec
func decodeSpecCached() func() ([]byte, error) {
	data, err := decodeSpec()
	return func() ([]byte, error) {
		return data, err
	}
}

// Constructs a synthetic filesystem for resolving external references when loading openapi specifications.
func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error) {
	res := make(map[string]func() ([]byte, error))
	if len(pathToFile) > 0 {
		res[pathToFile] = rawSpec
	}

	return res
}

// GetSwagger returns the Swagger specification corresponding to the generated code
// in this file. The external references of Swagger specification are resolved.
// The logic of resolving external references is tightly connected to "import-mapping" feature.
// Externally referenced files must be embedded in the corresponding golang packages.
// Urls can be supported but this task was out of the scope.
func GetSwagger() (swagger *openapi3.T, err error) {
	resolvePath := PathToRawSpec("")

	loader := openapi3.NewLoader()
	loader.IsExternalRefsAllowed = true
	loader.ReadFromURIFunc = func(loader *openapi3.Loader, url *url.URL) ([]byte, error) {
		pathToFile := url.String()
		pathToFile = path.Clean(pathToFile)
		getSpec, ok := resolvePath[pathToFile]
		if !ok {
			err1 := fmt.Errorf("path not found: %s", pathToFile)
			return nil, err1
		}
		return getSpec()
	}
	var specData []byte
	specData, err = rawSpec()
	if err != nil {
		return
	}
	swagger, err = loader.LoadFromData(specData)
	if err != nil {
		return
	}
	return
}
