openapi: 3.1.0 info: version: 1.0.0 title: Hatchet API description: The Hatchet API servers: - url: '' security: - bearerAuth: [] - cookieAuth: [] paths: /api/v1/stable/tasks/{task}: get: x-resources: - tenant - task description: Get a task by id operationId: v1-task:get parameters: - description: The task id in: path name: task required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The attempt number in: query name: attempt required: false schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskSummary' description: Successfully retrieved the task '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The task was not found '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Get a Task tags: - Task /api/v1/stable/tasks/{task}/task-events: get: x-resources: - tenant - task description: List events for a task operationId: v1-task-event:list parameters: - description: The task id in: path name: task required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskEventList' description: Successfully retrieved the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The task was not found '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Events for a Task tags: - Task /api/v1/stable/tasks/{task}/logs: get: x-resources: - tenant - task description: Lists log lines for a task operationId: v1-log-line:list parameters: - description: The task id in: path name: task required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The start time to get logs for in: query name: since required: false schema: type: string format: date-time - description: The end time to get logs for in: query name: until required: false schema: type: string format: date-time - description: A full-text search query to filter for in: query name: search required: false schema: type: string - description: The log level(s) to include in: query name: levels required: false schema: type: array items: $ref: '#/components/schemas/V1LogLineLevel' - description: The direction to order by in: query name: order_by_direction required: false schema: $ref: '#/components/schemas/V1LogLineOrderByDirection' - description: The attempt number to filter for in: query name: attempt required: false schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1LogLineList' description: Successfully listed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Log Lines tags: - Log /api/v1/stable/tenants/{tenant}/tasks/cancel: post: x-resources: - tenant description: Cancel tasks operationId: v1-task:cancel parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1CancelTaskRequest' description: The tasks to cancel required: true responses: '200': description: Successfully cancelled the tasks content: application/json: schema: $ref: '#/components/schemas/V1CancelledTasks' '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The task was not found '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Cancel Tasks tags: - Task /api/v1/stable/tenants/{tenant}/logs: get: x-resources: - tenant description: Lists log lines for a tenant operationId: v1-tenant-log-line:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The start time to get logs for in: query name: since required: false schema: type: string format: date-time - description: The end time to get logs for in: query name: until required: false schema: type: string format: date-time - description: A full-text search query to filter for in: query name: search required: false schema: type: string - description: The log level(s) to include in: query name: levels required: false schema: type: array items: $ref: '#/components/schemas/V1LogLineLevel' - description: The direction to order by in: query name: order_by_direction required: false schema: $ref: '#/components/schemas/V1LogLineOrderByDirection' - description: The attempt number to filter for in: query name: attempt required: false schema: type: integer - description: The task external ID(s) to filter by in: query name: taskExternalIds required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow id(s) to filter for in: query name: workflow_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The step id(s) to filter for in: query name: step_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1LogLineList' description: Successfully listed the logs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Log Lines tags: - Log /api/v1/stable/tenants/{tenant}/log-point-metrics: get: x-resources: - tenant description: Get a minute by minute breakdown of log metrics for a tenant operationId: v1-tenant-log-line:get:point-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The start time to get logs for in: query name: since required: false schema: type: string format: date-time - description: The end time to get logs for in: query name: until required: false schema: type: string format: date-time - description: A full-text search query to filter for in: query name: search required: false schema: type: string - description: The log level(s) to include in: query name: levels required: false schema: type: array items: $ref: '#/components/schemas/V1LogLineLevel' - description: The task external ID(s) to filter by in: query name: taskExternalIds required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow id(s) to filter for in: query name: workflow_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The step id(s) to filter for in: query name: step_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1LogsPointMetrics' description: Successfully retrieved the log point metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Get Log Point Metrics tags: - Log /api/v1/stable/tenants/{tenant}/tasks/replay: post: x-resources: - tenant description: Replay tasks operationId: v1-task:replay parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1ReplayTaskRequest' description: The tasks to replay required: true responses: '200': description: Successfully replayed the tasks content: application/json: schema: $ref: '#/components/schemas/V1ReplayedTasks' '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The task was not found '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Replay Tasks tags: - Task /api/v1/stable/tasks/{task}/restore: post: x-resources: - tenant - task description: Restore an evicted durable task operationId: v1-task:restore parameters: - description: The task id in: path name: task required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1RestoreTaskResponse' description: Successfully restored the task '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The task was not found summary: Restore a Task tags: - Task /api/v1/stable/dags/tasks: get: description: Lists all tasks that belong a specific list of dags operationId: v1-dag:list:tasks parameters: - description: The external id of the DAG in: query name: dag_ids required: true schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant id in: query name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/V1DagChildren' description: The list of tasks description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Tasks tags: - Task /api/v1/stable/tenants/{tenant}/workflow-runs: get: x-resources: - tenant description: Lists workflow runs for a tenant. operationId: v1-workflow-run:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: A list of statuses to filter by in: query name: statuses required: false schema: type: array items: $ref: '#/components/schemas/V1TaskStatus' - description: The earliest date to filter by in: query name: since required: true schema: type: string format: date-time - description: The latest date to filter by in: query name: until required: false schema: type: string format: date-time - description: Additional metadata k-v pairs to filter by in: query name: additional_metadata required: false schema: type: array items: type: string - description: The workflow ids to find runs for in: query name: workflow_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The worker id to filter by in: query name: worker_id required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: Whether to include DAGs or only to include tasks in: query name: only_tasks required: true schema: type: boolean - description: The parent task external id to filter by in: query name: parent_task_external_id required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The external id of the event that triggered the workflow run in: query name: triggering_event_external_id required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A flag for whether or not to include the input and output payloads in the response. Defaults to `true` if unset. in: query name: include_payloads required: false schema: type: boolean - description: Filter within the RUNNING status bucket. ALL returns both on-worker and evicted tasks, ON_WORKER returns only tasks running on a worker, EVICTED returns only evicted tasks. Defaults to ALL. in: query name: running_filter required: false schema: $ref: '#/components/schemas/V1RunningFilter' responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskSummaryList' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Workflow Runs tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/workflow-runs/display-names: get: x-resources: - tenant description: Lists displayable names of workflow runs for a tenant operationId: v1-workflow-run:display-names:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The external ids of the workflow runs to get display names for in: query name: external_ids required: true schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1WorkflowRunDisplayNameList' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Workflow Runs tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/workflow-runs/external-ids: get: x-resources: - tenant description: Lists external ids for workflow runs matching filters operationId: v1-workflow-run:external-ids:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A list of statuses to filter by in: query name: statuses required: false schema: type: array items: $ref: '#/components/schemas/V1TaskStatus' - description: The earliest date to filter by in: query name: since required: true schema: type: string format: date-time - description: The latest date to filter by in: query name: until required: false schema: type: string format: date-time - description: Additional metadata k-v pairs to filter by in: query name: additional_metadata required: false schema: type: array items: type: string - description: The workflow ids to find runs for in: query name: workflow_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: Filter within the RUNNING status bucket. ALL returns both on-worker and evicted tasks, ON_WORKER returns only tasks running on a worker, EVICTED returns only evicted tasks. Defaults to ALL. in: query name: running_filter required: false schema: $ref: '#/components/schemas/V1RunningFilter' responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1WorkflowRunExternalIdList' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Workflow Run External Ids tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/workflow-runs/trigger: post: x-resources: - tenant description: Trigger a new workflow run operationId: v1-workflow-run:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1TriggerWorkflowRunRequest' description: The workflow run to create required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1WorkflowRunDetails' description: Successfully created the workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Create Workflow Run tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/durable-tasks/branch: post: x-resources: - tenant description: Branch a durable task from a specific node, creating a new branch and re-processing its matches. operationId: v1-durable-task:branch parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1BranchDurableTaskRequest' description: The branch request required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1BranchDurableTaskResponse' description: Successfully branch the durable task '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Branch Durable Task tags: - Workflow Runs /api/v1/stable/durable-tasks/{durable-task}: get: x-resources: - durable-task description: Lists all event log entries for a durable task. operationId: v1-durable-task:event-log:list parameters: - description: The durable task external id in: path name: durable-task required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number of event log entries to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number of event log entries to limit by in: query name: limit required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1DurableEventLogList' description: Successfully listed event log entries '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: List Durable Event Log tags: - Durable Tasks /api/v1/stable/workflow-runs/{v1-workflow-run}: get: x-resources: - tenant - v1-workflow-run description: Get a workflow run and its metadata to display on the "detail" page operationId: v1-workflow-run:get parameters: - description: The workflow run id to get in: path name: v1-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1WorkflowRunDetails' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Tasks tags: - Workflow Runs /api/v1/stable/workflow-runs/{v1-workflow-run}/status: get: x-resources: - tenant - v1-workflow-run description: Get the status of a workflow run. operationId: v1-workflow-run:get-status parameters: - description: The workflow run id to get the status for in: path name: v1-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskStatus' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Could not find the workflow run '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Get Workflow Run Status tags: - Workflow Runs /api/v1/stable/workflow-runs/{v1-workflow-run}/task-events: get: x-resources: - tenant - v1-workflow-run description: List all tasks for a workflow run operationId: v1-workflow-run:task-events:list parameters: - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The workflow run id to find runs for in: path name: v1-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskEventList' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Tasks tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/traces: get: x-resources: - tenant description: Get OTel trace for a workflow run operationId: v1-observability:get-trace parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow run external id in: query name: run_external_id required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number of spans to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number of spans to limit by in: query name: limit required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/OtelSpanList' description: Successfully retrieved the OTel trace '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Trace not found summary: Get Otel Trace tags: - Observability /api/v1/stable/workflow-runs/{v1-workflow-run}/task-timings: get: x-resources: - tenant - v1-workflow-run description: Get the timings for a workflow run operationId: v1-workflow-run:get:timings parameters: - description: The workflow run id to get in: path name: v1-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The depth to retrieve children in: query name: depth required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskTimingList' description: Successfully listed the tasks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: List Timings for a Workflow Run tags: - Workflow Runs /api/v1/stable/tenants/{tenant}/task-metrics: get: x-resources: - tenant description: Get a summary of task run metrics for a tenant operationId: v1-task:list:status-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The start time to get metrics for in: query name: since required: true schema: type: string format: date-time - description: The end time to get metrics for in: query name: until schema: type: string format: date-time - description: The workflow id to find runs for in: query name: workflow_ids required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent task's external id in: query name: parent_task_external_id required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The id of the event that triggered the task in: query name: triggering_event_external_id required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: Additional metadata k-v pairs to filter by in: query name: additional_metadata required: false schema: type: array items: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskRunMetrics' description: Successfully retrieved the task run metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Get Task Metrics tags: - Task /api/v1/stable/tenants/{tenant}/task-point-metrics: get: x-resources: - tenant description: Get a minute by minute breakdown of task metrics for a tenant operationId: v1-task:get:point-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The time after the task was created in: query name: createdAfter example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The time before the task was completed in: query name: finishedBefore example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1TaskPointMetrics' description: Successfully retrieved the task point metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '501': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not implemented summary: Get Task Point Metrics tags: - Task /api/v1/stable/tenants/{tenant}/events: get: x-resources: - tenant description: Lists all events for a tenant. operationId: v1-event:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: A list of keys to filter by in: query name: keys required: false schema: type: array items: $ref: '#/components/schemas/EventKey' - description: Consider events that occurred after this time in: query name: since schema: type: string format: date-time - description: Consider events that occurred before this time in: query name: until schema: type: string format: date-time - description: Filter to events that are associated with a specific workflow run in: query name: workflowIds schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: Filter to events that are associated with workflow runs matching a certain status in: query name: workflowRunStatuses schema: type: array items: $ref: '#/components/schemas/V1TaskStatus' - description: Filter to specific events by their ids in: query name: eventIds schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 - description: Filter by additional metadata on the events in: query name: additionalMetadata schema: type: array items: type: string description: The metadata key-value pairs (delimited by a `:`) to filter by minLength: 1 - description: The scopes to filter by in: query name: scopes schema: type: array items: type: string description: The scope to filter by minLength: 1 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1EventList' description: Successfully listed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Events tags: - Event /api/v1/stable/tenants/{tenant}/events/{v1-event}: get: x-resources: - tenant - v1-event description: Get an event by its id operationId: v1-event:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The event id in: path name: v1-event required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Event' description: Successfully listed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Events tags: - Event /api/v1/stable/tenants/{tenant}/events/keys: get: x-resources: - tenant description: Lists all event keys for a tenant. operationId: v1:event-key:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventKeyList' description: Successfully listed the event keys '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Event Keys tags: - Event /api/v1/stable/tenants/{tenant}/filters: get: x-resources: - tenant description: Lists all filters for a tenant. operationId: v1-filter:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The workflow ids to filter by in: query name: workflowIds required: false schema: type: array items: type: string description: The workflow id associated with this filter. format: uuid minLength: 36 maxLength: 36 - description: The scopes to subset candidate filters by in: query name: scopes required: false schema: type: array items: type: string description: The scope associated with this filter. Used for subsetting candidate filters at evaluation time responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1FilterList' description: Successfully listed the filters '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Filters tags: - Filter post: x-resources: - tenant description: Create a new filter operationId: v1-filter:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1CreateFilterRequest' description: The input to the filter creation required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Filter' description: Successfully created the filter '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Create a Filter tags: - Filter /api/v1/stable/tenants/{tenant}/filters/{v1-filter}: get: x-resources: - tenant - v1-filter description: Get a filter by its id operationId: v1-filter:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The filter id in: path name: v1-filter required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Filter' description: Successfully got the filter '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get a Filter tags: - Filter delete: x-resources: - tenant - v1-filter description: Delete a filter operationId: v1-filter:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The filter id to delete in: path name: v1-filter required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Filter' description: Successfully deleted filter '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found tags: - Filter patch: x-resources: - tenant - v1-filter description: Update a filter operationId: v1-filter:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The filter id to update in: path name: v1-filter required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1UpdateFilterRequest' description: The input to the filter update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Filter' description: Successfully updated filter '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found tags: - Filter /api/v1/stable/tenants/{tenant}/webhooks: get: x-resources: - tenant description: Lists all webhook for a tenant. operationId: v1-webhook:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The source names to filter by in: query name: sourceNames required: false schema: type: array items: $ref: '#/components/schemas/V1WebhookSourceName' description: The source name - description: The webhook names to filter by in: query name: webhookNames required: false schema: type: array items: type: string description: The webhook name responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1WebhookList' description: Successfully listed the webhooks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Webhooks tags: - Webhook post: x-resources: - tenant description: Create a new webhook operationId: v1-webhook:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1CreateWebhookRequest' description: The input to the webhook creation required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Webhook' description: Successfully created the webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Create a Webhook tags: - Webhook /api/v1/stable/tenants/{tenant}/webhooks/{v1-webhook}: get: x-resources: - tenant - v1-webhook description: Get a webhook by its name operationId: v1-webhook:get x-enable-rate-limiting: true parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The webhook name in: path name: v1-webhook required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Webhook' description: Successfully got the webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get a Webhook tags: - Webhook delete: x-resources: - tenant - v1-webhook description: Delete a webhook operationId: v1-webhook:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The name of the webhook to delete in: path name: v1-webhook required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Webhook' description: Successfully deleted webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found tags: - Webhook post: x-resources: - tenant - v1-webhook description: Post an incoming webhook message operationId: v1-webhook:receive security: [] parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The webhook name in: path name: v1-webhook required: true schema: type: string requestBody: description: Any payload in any format required: false content: text/plain: schema: type: string responses: '200': description: Success with response payload content: application/json: schema: $ref: '#/components/schemas/V1WebhookResponse' '204': description: Success with no response payload '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Post a Webhook Message tags: - Webhook patch: x-resources: - tenant - v1-webhook description: Update a webhook operationId: v1-webhook:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The webhook name in: path name: v1-webhook required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/V1UpdateWebhookRequest' description: The input to the webhook creation required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1Webhook' description: Successfully updated the webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Update a Webhook tags: - Webhook /api/v1/stable/tenants/{tenant}/cel/debug: post: x-resources: - tenant description: Evaluate a CEL expression against provided input data. operationId: v1-cel:debug parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/V1CELDebugRequest' description: The inputs to test the CEL expression against required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/V1CELDebugResponse' description: Successfully evaluated the CEL expression '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Debug a CEL Expression tags: - CEL /api/ready: get: description: Gets the readiness status operationId: readiness:get responses: '200': description: Healthy '500': description: Not ready to accept traffic content: application/json: schema: $ref: '#/components/schemas/APIErrors' security: [] summary: Get Readiness tags: - Healthcheck /api/live: get: description: Gets the liveness status operationId: liveness:get responses: '200': description: Healthy '500': description: Not liveness content: application/json: schema: $ref: '#/components/schemas/APIErrors' security: [] summary: Get Liveness tags: - Healthcheck /api/v1/meta: get: description: Gets metadata for the Hatchet instance operationId: metadata:get responses: '200': content: application/json: schema: $ref: '#/components/schemas/APIMeta' description: Successfully retrieved the metadata '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request security: [] x-security-optional: true summary: Get Metadata tags: - Metadata /api/v1/cloud/metadata: get: description: Gets metadata for the Hatchet cloud instance operationId: cloudMetadata::get responses: '200': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Cloud unavailable '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request security: [] x-security-optional: true summary: Get Cloud Metadata tags: - Metadata /api/v1/meta/integrations: get: description: List all integrations operationId: metadata:list:integrations responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListAPIMetaIntegration' description: Successfully retrieved the list of integrations '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request summary: List Integrations tags: - Metadata /api/v1/users/login: post: description: Logs in a user. operationId: user:update:login requestBody: content: application/json: schema: $ref: '#/components/schemas/UserLoginRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: Successfully logged in '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed '422': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unprocessable Entity - validation or processing errors security: [] x-enable-rate-limiting: true summary: Login User tags: - User /api/v1/users/google/start: get: description: Starts the OAuth flow operationId: user:update:google-oauth-start responses: '302': description: Successfully started the OAuth flow headers: location: schema: type: string security: [] summary: Start Oauth Flow tags: - User /api/v1/users/google/callback: get: description: Completes the OAuth flow operationId: user:update:google-oauth-callback responses: '302': description: Successfully completed the OAuth flow headers: location: schema: type: string security: [] summary: Complete Oauth Flow tags: - User /api/v1/users/github/start: get: description: Starts the OAuth flow operationId: user:update:github-oauth-start responses: '302': description: Successfully started the OAuth flow headers: location: schema: type: string security: [] summary: Start Oauth Flow tags: - User /api/v1/users/github/callback: get: description: Completes the OAuth flow operationId: user:update:github-oauth-callback responses: '302': description: Successfully completed the OAuth flow headers: location: schema: type: string security: [] summary: Complete Oauth Flow tags: - User /api/v1/tenants/{tenant}/slack/start: get: x-resources: - tenant description: Starts the OAuth flow operationId: user:update:slack-oauth-start parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '302': description: Successfully started the OAuth flow headers: location: schema: type: string security: - cookieAuth: [] summary: Start Oauth Flow tags: - User /api/v1/users/slack/callback: get: description: Completes the OAuth flow operationId: user:update:slack-oauth-callback responses: '302': description: Successfully completed the OAuth flow headers: location: schema: type: string security: - cookieAuth: [] summary: Complete Oauth Flow tags: - User /api/v1/sns/{tenant}/{event}: post: description: SNS event operationId: sns:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The event key in: path name: event required: true schema: type: string minLength: 1 maxLength: 255 responses: '200': description: Successfully processed webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed security: [] summary: Github App Tenant Webhook tags: - Github /api/v1/tenants/{tenant}/sns: get: description: List SNS integrations operationId: sns:list x-resources: - tenant parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListSNSIntegrations' description: Successfully retrieved SNS integrations '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed summary: List SNS Integrations tags: - SNS post: description: Create SNS integration operationId: sns:create x-resources: - tenant parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSNSIntegrationRequest' responses: '201': content: application/json: schema: $ref: '#/components/schemas/SNSIntegration' description: Successfully created SNS integration '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed summary: Create SNS Integration tags: - SNS /api/v1/tenants/{tenant}/alerting-email-groups: post: x-resources: - tenant description: Creates a new tenant alert email group operationId: alert-email-group:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateTenantAlertEmailGroupRequest' description: The tenant alert email group to create required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/TenantAlertEmailGroup' description: Successfully created the tenant alert email group '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Create Tenant Alert Email Group tags: - Tenant get: x-resources: - tenant description: Gets a list of tenant alert email groups operationId: alert-email-group:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantAlertEmailGroupList' description: Successfully retrieved the tenant alert email groups '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: List Tenant Alert Email Groups tags: - Tenant /api/v1/tenants/{tenant}/resource-policy: get: x-resources: - tenant description: Gets the resource policy for a tenant operationId: tenant-resource-policy:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantResourcePolicy' description: Successfully retrieved the tenant resource policy '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Create Tenant Alert Email Group tags: - Tenant /api/v1/alerting-email-groups/{alert-email-group}: patch: x-resources: - tenant - alert-email-group description: Updates a tenant alert email group operationId: alert-email-group:update parameters: - description: The tenant alert email group id in: path name: alert-email-group required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateTenantAlertEmailGroupRequest' description: The tenant alert email group to update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantAlertEmailGroup' description: Successfully updated the tenant alert email group '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Update Tenant Alert Email Group tags: - Tenant delete: x-resources: - tenant - alert-email-group description: Deletes a tenant alert email group operationId: alert-email-group:delete parameters: - description: The tenant alert email group id in: path name: alert-email-group required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted the tenant alert email group '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Delete Tenant Alert Email Group tags: - Tenant /api/v1/sns/{sns}: delete: description: Delete SNS integration operationId: sns:delete x-resources: - tenant - sns parameters: - description: The SNS integration id in: path name: sns required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted SNS integration '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed summary: Delete SNS Integration tags: - SNS /api/v1/tenants/{tenant}/slack: get: description: List Slack webhooks operationId: slack-webhook:list x-resources: - tenant parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListSlackWebhooks' description: Successfully retrieved Slack webhooks '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed summary: List Slack Integrations tags: - Slack /api/v1/slack/{slack}: delete: description: Delete Slack webhook operationId: slack-webhook:delete x-resources: - tenant - slack parameters: - description: The Slack webhook id in: path name: slack required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted Slack webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed summary: Delete Slack Webhook tags: - Slack /api/v1/users/current: get: description: Gets the current user operationId: user:get:current responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: Successfully retrieved the user '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed security: - cookieAuth: [] summary: Get Current User tags: - User /api/v1/users/password: post: description: Update a user password. operationId: user:update:password requestBody: content: application/json: schema: $ref: '#/components/schemas/UserChangePasswordRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: Successfully changed password '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed '422': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unprocessable Entity - validation or processing errors security: - cookieAuth: [] x-enable-rate-limiting: true summary: Change User Password tags: - User /api/v1/users/register: post: description: Registers a user. operationId: user:create requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRegisterRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: Successfully registered the user '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed '422': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unprocessable Entity - validation or processing errors security: [] x-enable-rate-limiting: true summary: Register User tags: - User /api/v1/users/logout: post: description: Logs out a user. operationId: user:update:logout responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: Successfully logged out '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed security: - cookieAuth: [] summary: Logout User tags: - User /api/v1/users/memberships: get: description: Lists all tenant memberships for the current user operationId: tenant-memberships:list responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserTenantMembershipsList' description: Successfully listed the tenant memberships '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden security: - cookieAuth: [] summary: List Tenant Memberships tags: - User /api/v1/users/invites: get: description: Lists all tenant invites for the current user operationId: user:list:tenant-invites responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantInviteList' description: Successfully listed the tenant invites '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden security: - cookieAuth: [] summary: List Tenant Invites tags: - Tenant /api/v1/users/invites/accept: post: description: Accepts a tenant invite operationId: tenant-invite:accept requestBody: content: application/json: schema: $ref: '#/components/schemas/AcceptInviteRequest' responses: '200': description: Successfully accepted the tenant invite '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Accept Tenant Invite tags: - Tenant /api/v1/users/invites/reject: post: description: Rejects a tenant invite operationId: tenant-invite:reject requestBody: content: application/json: schema: $ref: '#/components/schemas/RejectInviteRequest' responses: '200': description: Successfully rejected the tenant invite '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Reject Tenant Invite tags: - Tenant /api/v1/tenants: post: x-resources: [] description: Creates a new tenant operationId: tenant:create requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateTenantRequest' description: The tenant to create required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tenant' description: Successfully created the tenant '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Create Tenant tags: - Tenant /api/v1/tenants/{tenant}: patch: x-resources: - tenant description: Update an existing tenant operationId: tenant:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateTenantRequest' description: The tenant properties to update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tenant' description: Successfully created the tenant '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Update Tenant tags: - Tenant get: x-resources: - tenant description: Get the details of a tenant operationId: tenant:get parameters: - description: The tenant id to get details for in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tenant' description: Successfully got the tenant '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Tenant does not exist summary: Get Tenant tags: - Tenant /api/v1/tenants/{tenant}/alerting/settings: get: x-resources: - tenant description: Gets the alerting settings for a tenant operationId: tenant-alerting-settings:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantAlertingSettings' description: Successfully retrieved the tenant alerting settings '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Get Tenant Alerting Settings tags: - Tenant /api/v1/tenants/{tenant}/invites: post: x-resources: - tenant x-enable-rate-limiting: true description: Creates a new tenant invite operationId: tenant-invite:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateTenantInviteRequest' description: The tenant invite to create required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/TenantInvite' description: Successfully created the tenant invite '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden '422': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Rate limit exceeded summary: Create Tenant Invite tags: - Tenant get: x-resources: - tenant description: Gets a list of tenant invites operationId: tenant-invite:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantInviteList' description: Successfully retrieved the tenant invites '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: List Tenant Invites tags: - Tenant /api/v1/tenants/{tenant}/invites/{tenant-invite}: patch: x-resources: - tenant - tenant-invite description: Updates a tenant invite operationId: tenant-invite:update summary: Update Invite parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant invite id in: path name: tenant-invite required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateTenantInviteRequest' description: The tenant invite to update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantInvite' description: Successfully updated the tenant invite '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request delete: x-resources: - tenant - tenant-invite description: Deletes a tenant invite operationId: tenant-invite:delete summary: Delete Invite parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant invite id in: path name: tenant-invite required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantInvite' description: Successfully deleted the tenant invite '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request /api/v1/tenants/{tenant}/api-tokens: post: x-resources: - tenant description: Create an API token for a tenant operationId: api-token:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateAPITokenRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateAPITokenResponse' description: Successfully retrieved the workflows '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Create API Token tags: - API Token get: x-resources: - tenant description: List API tokens for a tenant operationId: api-token:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListAPITokensResponse' description: Successfully retrieved the workflows '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List API Tokens tags: - API Token /api/v1/api-tokens/{api-token}: post: x-resources: - tenant - api-token description: Revoke an API token for a tenant operationId: api-token:update:revoke parameters: - description: The API token in: path name: api-token required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully revoked the token '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Revoke API Token tags: - API Token /api/v1/tenants/{tenant}/queue-metrics: get: x-resources: - tenant description: Get the queue metrics for the tenant operationId: tenant:get:queue-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A list of workflow IDs to filter by in: query name: workflows required: false schema: type: array items: $ref: '#/components/schemas/WorkflowID' - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantQueueMetrics' description: Successfully retrieved the workflow version metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Workflow Metrics tags: - Workflow /api/v1/tenants/{tenant}/step-run-queue-metrics: get: x-resources: - tenant description: Get the queue metrics for the tenant operationId: tenant:get:step-run-queue-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantStepRunQueueMetrics' description: Successfully retrieved the step run queue metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Step Run Metrics tags: - Tenant /api/v1/tenants/{tenant}/events: get: x-resources: - tenant description: Lists all events for a tenant. operationId: event:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: A list of keys to filter by in: query name: keys required: false schema: type: array items: $ref: '#/components/schemas/EventKey' - description: A list of workflow IDs to filter by in: query name: workflows required: false schema: type: array items: $ref: '#/components/schemas/WorkflowID' - description: A list of workflow run statuses to filter by in: query name: statuses required: false schema: $ref: '#/components/schemas/WorkflowRunStatusList' - description: The search query to filter for in: query name: search required: false schema: $ref: '#/components/schemas/EventSearch' - description: What to order by in: query name: orderByField required: false schema: $ref: '#/components/schemas/EventOrderByField' - description: The order direction in: query name: orderByDirection required: false schema: $ref: '#/components/schemas/EventOrderByDirection' - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string - description: A list of event ids to filter by in: query name: eventIds required: false schema: type: array items: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventList' description: Successfully listed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Events tags: - Event post: x-resources: - tenant description: Creates a new event. operationId: event:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEventRequest' description: The event to create required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' description: Successfully created the event '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Create Event tags: - Event /api/v1/tenants/{tenant}/events/bulk: post: x-resources: - tenant description: Bulk creates new events. operationId: event:create:bulk parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkCreateEventRequest' description: The events to create required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Events' description: Successfully created the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Bulk Create Events tags: - Event /api/v1/tenants/{tenant}/events/replay: post: x-resources: - tenant description: Replays a list of events. operationId: event:update:replay parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/ReplayEventRequest' description: The event ids to replay required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventList' description: Successfully replayed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Replay Events tags: - Event /api/v1/tenants/{tenant}/events/cancel: post: x-resources: - tenant description: Cancels all runs for a list of events. operationId: event:update:cancel parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/CancelEventRequest' description: The event ids to replay required: true responses: '200': content: application/json: schema: type: object properties: workflowRunIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 description: Successfully canceled runs for the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Replay Events tags: - Event /api/v1/tenants/{tenant}/rate-limits: get: x-resources: - tenant description: Lists all rate limits for a tenant. operationId: rate-limit:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The search query to filter for in: query name: search required: false schema: type: string - description: What to order by in: query name: orderByField required: false schema: $ref: '#/components/schemas/RateLimitOrderByField' - description: The order direction in: query name: orderByDirection required: false schema: $ref: '#/components/schemas/RateLimitOrderByDirection' responses: '200': content: application/json: schema: $ref: '#/components/schemas/RateLimitList' description: Successfully listed the rate limits '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Rate Limits tags: - Rate Limits delete: x-resources: - tenant description: Delete a rate limit for a tenant. operationId: rate-limit:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The limit key in: query name: key required: true schema: type: string responses: '204': description: Successfully deleted the rate limit '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Delete Rate Limit tags: - Rate Limits /api/v1/tenants/{tenant}/members: get: x-resources: - tenant description: Gets a list of tenant members operationId: tenant-member:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantMemberList' description: Successfully retrieved the tenant members '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: List Tenant Members tags: - Tenant /api/v1/tenants/{tenant}/members/{member}: patch: x-resources: - tenant - member description: Update a tenant member operationId: tenant-member:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant member id in: path name: member required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateTenantMemberRequest' description: The tenant member properties to update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/TenantMember' description: Successfully updated the tenant member '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Update a Tenant Member tags: - Tenant delete: x-resources: - tenant - member description: Delete a member from a tenant operationId: tenant-member:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant member id in: path name: member required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': content: application/json: schema: $ref: '#/components/schemas/TenantMember' description: Successfully deleted the tenant members '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Delete a Tenant Member tags: - Tenant /api/v1/events/{event}: get: x-resources: - tenant - event description: Get an event. operationId: event:get parameters: - description: The event id in: path name: event required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' description: Successfully retrieved the event data '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Event Data tags: - Event /api/v1/events/{event}/data: get: x-resources: - tenant - event description: Get the data for an event. operationId: event-data:get parameters: - description: The event id in: path name: event required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventData' description: Successfully retrieved the event data '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Event Data tags: - Event /api/v1/tenants/{tenant}/events/{event-with-tenant}/data: get: x-resources: - tenant - event-with-tenant description: Get the data for an event. operationId: event-data:get-with-tenant parameters: - description: The event id in: path name: event-with-tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventData' description: Successfully retrieved the event data '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Event Data tags: - Event /api/v1/tenants/{tenant}/events/keys: get: x-resources: - tenant description: Lists all event keys for a tenant. operationId: event-key:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventKeyList' description: Successfully listed the event keys '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: List Event Keys tags: - Event /api/v1/tenants/{tenant}/workflows: get: x-resources: - tenant description: Get all workflows for a tenant operationId: workflow:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int default: 0 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int default: 50 - description: Search by name in: query name: name required: false schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowList' description: Successfully retrieved the workflows '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflows tags: - Workflow /api/v1/tenants/{tenant}/workflows/{workflow}/scheduled: post: x-resources: - tenant description: Schedule a new workflow run for a tenant operationId: scheduled-workflow-run:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow name in: path name: workflow required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ScheduleWorkflowRunRequest' description: The input to the scheduled workflow run required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflows' description: Successfully created the scheduled workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Trigger Workflow Run tags: - Workflow Run /api/v1/tenants/{tenant}/workflows/scheduled: get: x-resources: - tenant description: Get all scheduled workflow runs for a tenant operationId: workflow-scheduled:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The order by field in: query name: orderByField required: false schema: $ref: '#/components/schemas/ScheduledWorkflowsOrderByField' - description: The order by direction in: query name: orderByDirection required: false schema: $ref: '#/components/schemas/WorkflowRunOrderByDirection' - description: The workflow id to get runs for. in: query name: workflowId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent workflow run id in: query name: parentWorkflowRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent step run id in: query name: parentStepRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string - description: A list of scheduled run statuses to filter by in: query name: statuses required: false schema: type: array items: $ref: '#/components/schemas/ScheduledRunStatus' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflowsList' description: Successfully retrieved the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Scheduled Workflow Runs tags: - Workflow /api/v1/tenants/{tenant}/workflows/scheduled/{scheduled-workflow-run}: get: x-resources: - tenant - scheduled-workflow-run description: Get a scheduled workflow run for a tenant operationId: workflow-scheduled:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The scheduled workflow id in: path name: scheduled-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflows' description: Successfully retrieved the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Scheduled Workflow Run tags: - Workflow delete: x-resources: - tenant - scheduled-workflow-run description: Delete a scheduled workflow run for a tenant operationId: workflow-scheduled:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The scheduled workflow id in: path name: scheduled-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted the scheduled workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Delete Scheduled Workflow Run tags: - Workflow patch: x-resources: - tenant - scheduled-workflow-run description: Update (reschedule) a scheduled workflow run for a tenant operationId: workflow-scheduled:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The scheduled workflow id in: path name: scheduled-workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateScheduledWorkflowRunRequest' description: The input to reschedule the workflow run required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflows' description: Successfully updated the scheduled workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Update Scheduled Workflow Run tags: - Workflow /api/v1/tenants/{tenant}/workflows/scheduled/bulk-delete: post: x-resources: - tenant description: Bulk delete scheduled workflow runs for a tenant operationId: workflow-scheduled:bulk-delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflowsBulkDeleteRequest' description: The input to bulk delete scheduled workflow runs required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflowsBulkDeleteResponse' description: Bulk delete response '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Bulk Delete Scheduled Workflow Runs tags: - Workflow /api/v1/tenants/{tenant}/workflows/scheduled/bulk-update: post: x-resources: - tenant description: Bulk update (reschedule) scheduled workflow runs for a tenant operationId: workflow-scheduled:bulk-update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflowsBulkUpdateRequest' description: The input to bulk update scheduled workflow runs required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScheduledWorkflowsBulkUpdateResponse' description: Bulk update response '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Bulk Update Scheduled Workflow Runs tags: - Workflow /api/v1/tenants/{tenant}/workflows/{workflow}/crons: post: x-resources: - tenant description: Create a new cron job workflow trigger for a tenant operationId: cron-workflow-trigger:create parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow name in: path name: workflow required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCronWorkflowTriggerRequest' description: The input to the cron job workflow trigger required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CronWorkflows' description: Successfully created the cron job workflow trigger '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Create Cron Job Workflow Trigger tags: - Workflow Run /api/v1/tenants/{tenant}/workflows/crons: get: x-resources: - tenant description: Get all cron job workflow triggers for a tenant operationId: cron-workflow:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The workflow id to get runs for. in: query name: workflowId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow name to get runs for. in: query name: workflowName required: false schema: type: string - description: The cron name to get runs for. in: query name: cronName required: false schema: type: string - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string - description: The order by field in: query name: orderByField required: false schema: $ref: '#/components/schemas/CronWorkflowsOrderByField' - description: The order by direction in: query name: orderByDirection required: false schema: $ref: '#/components/schemas/WorkflowRunOrderByDirection' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CronWorkflowsList' description: Successfully retrieved the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Cron Job Workflows tags: - Workflow /api/v1/tenants/{tenant}/workflows/crons/{cron-workflow}: get: x-resources: - tenant - cron-workflow description: Get a cron job workflow run for a tenant operationId: workflow-cron:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The cron job id in: path name: cron-workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/CronWorkflows' description: Successfully retrieved the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Cron Job Workflow Run tags: - Workflow delete: x-resources: - tenant - cron-workflow description: Delete a cron job workflow run for a tenant operationId: workflow-cron:delete parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The cron job id in: path name: cron-workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted the cron job workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Delete Cron Job Workflow Run tags: - Workflow patch: x-resources: - tenant - cron-workflow description: Update a cron workflow for a tenant operationId: workflow-cron:update parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The cron job id in: path name: cron-workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCronWorkflowTriggerRequest' description: The input for updates required: true responses: '204': description: Successfully updated the cron job workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIError' description: Forbidden summary: Update Cron Job Workflow Run tags: - Workflow /api/v1/tenants/{tenant}/workflows/cancel: post: x-resources: - tenant description: Cancel a batch of workflow runs operationId: workflow-run:cancel parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowRunsCancelRequest' description: The input to cancel the workflow runs required: true responses: '200': content: application/json: schema: type: object properties: workflowRunIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 description: Successfully cancelled the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Cancel Workflow Runs tags: - Workflow Run /api/v1/workflows/{workflow}: get: x-resources: - tenant - workflow description: Get a workflow for a tenant operationId: workflow:get parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: Successfully retrieved the workflow '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Workflow tags: - Workflow delete: x-resources: - tenant - workflow description: Delete a workflow for a tenant operationId: workflow:delete parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '204': description: Successfully deleted the workflow '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Delete Workflow tags: - Workflow patch: x-resources: - tenant - workflow description: Update a workflow for a tenant operationId: workflow:update parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkflowUpdateRequest' description: The input to update the workflow required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Workflow' description: Successfully updated the workflow '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Update Workflow tags: - Workflow /api/v1/workflows/{workflow}/versions: get: x-resources: - tenant - workflow description: Get a workflow version for a tenant operationId: workflow-version:get parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow version. If not supplied, the latest version is fetched. in: query name: version required: false schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowVersion' description: Successfully retrieved the workflow version '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Workflow Version tags: - Workflow /api/v1/workflows/{workflow}/trigger: post: x-resources: - tenant - workflow description: Trigger a new workflow run for a tenant operationId: workflow-run:create parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow version. If not supplied, the latest version is fetched. in: query name: version required: false schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/TriggerWorkflowRunRequest' description: The input to the workflow run required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowRun' description: Successfully created the workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Trigger Workflow Run tags: - Workflow Run /api/v1/workflows/{workflow}/metrics: get: x-resources: - tenant - workflow description: Get the metrics for a workflow version operationId: workflow:get:metrics parameters: - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A status of workflow run statuses to filter by in: query name: status required: false schema: $ref: '#/components/schemas/WorkflowRunStatus' - description: A group key to filter metrics by in: query name: groupKey required: false schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowMetrics' description: Successfully retrieved the workflow version metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Workflow Metrics tags: - Workflow /api/v1/step-runs/{step-run}/events: get: x-resources: - tenant - step-run description: List events for a step run operationId: step-run:list:events parameters: - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRunEventList' description: Successfully retrieved the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The step run was not found summary: List Events for Step Run tags: - Step Run /api/v1/tenants/{tenant}/workflow-runs/{workflow-run}/step-run-events: get: x-resources: - tenant description: List events for all step runs for a workflow run operationId: workflow-run:list:step-run-events parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow run id in: path name: workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: Last ID of the last event in: query name: lastId required: false schema: type: integer format: int32 responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRunEventList' description: Successfully retrieved the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The step run was not found summary: List Events for All Step Runs for a Workflow Run tags: - Step Run /api/v1/step-runs/{step-run}/archives: get: x-resources: - tenant - step-run description: List archives for a step run operationId: step-run:list:archives parameters: - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRunArchiveList' description: Successfully retrieved the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The step run was not found summary: List Archives for Step Run tags: - Step Run /api/v1/tenants/{tenant}/workflows/{workflow}/worker-count: get: x-resources: - tenant - workflow description: Get a count of the workers available for workflow operationId: workflow:get:workers-count parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow id in: path name: workflow required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowWorkersCount' description: Successfully retrieved the workflow worker count '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflow Worker Count tags: - Workflow /api/v1/tenants/{tenant}/workflows/runs: get: x-resources: - tenant description: Get all workflow runs for a tenant operationId: workflow-run:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: The event id to get runs for. in: query name: eventId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow id to get runs for. in: query name: workflowId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent workflow run id in: query name: parentWorkflowRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent step run id in: query name: parentStepRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A list of workflow run statuses to filter by in: query name: statuses required: false schema: $ref: '#/components/schemas/WorkflowRunStatusList' - description: A list of workflow kinds to filter by in: query name: kinds required: false schema: $ref: '#/components/schemas/WorkflowKindList' - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string - description: The time after the workflow run was created in: query name: createdAfter example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The time before the workflow run was created in: query name: createdBefore example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The time after the workflow run was finished in: query name: finishedAfter example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The time before the workflow run was finished in: query name: finishedBefore example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The order by field in: query name: orderByField required: false schema: $ref: '#/components/schemas/WorkflowRunOrderByField' - description: The order by direction in: query name: orderByDirection required: false schema: $ref: '#/components/schemas/WorkflowRunOrderByDirection' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowRunList' description: Successfully retrieved the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflow Runs tags: - Workflow /api/v1/tenants/{tenant}/workflow-runs/replay: post: x-resources: - tenant description: Replays a list of workflow runs. operationId: workflow-run:update:replay parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/ReplayWorkflowRunsRequest' description: The workflow run ids to replay required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReplayWorkflowRunsResponse' description: Successfully replayed the workflow runs '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '429': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Resource limit exceeded summary: Replay Workflow Runs tags: - Workflow Run /api/v1/tenants/{tenant}/workflows/runs/metrics: get: x-resources: - tenant description: Get a summary of workflow run metrics for a tenant operationId: workflow-run:get:metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The event id to get runs for. in: query name: eventId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow id to get runs for. in: query name: workflowId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent workflow run id in: query name: parentWorkflowRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The parent step run id in: query name: parentStepRunId required: false schema: type: string format: uuid minLength: 36 maxLength: 36 - description: A list of metadata key value pairs to filter by in: query name: additionalMetadata example: - key1:value1 - key2:value2 required: false schema: type: array items: type: string - description: The time after the workflow run was created in: query name: createdAfter example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time - description: The time before the workflow run was created in: query name: createdBefore example: '2021-01-01T00:00:00Z' required: false schema: type: string format: date-time responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowRunsMetrics' description: Successfully retrieved the workflow runs metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflow Runs Metrics tags: - Workflow /api/v1/tenants/{tenant}/workflow-runs/{workflow-run}: get: x-resources: - tenant - workflow-run description: Get a workflow run for a tenant operationId: workflow-run:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow run id in: path name: workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowRun' description: Successfully retrieved the workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflow Run tags: - Workflow /api/v1/tenants/{tenant}/workflow-runs/{workflow-run}/shape: get: x-resources: - tenant - workflow-run description: Get a workflow run for a tenant operationId: workflow-run:get:shape parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow run id in: path name: workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkflowRunShape' description: Successfully retrieved the workflow run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workflow Run tags: - Workflow /api/v1/tenants/{tenant}/step-runs/{step-run}: get: x-resources: - tenant - step-run description: Get a step run by id operationId: step-run:get parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRun' description: Successfully retrieved the step run '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The step run was not found summary: Get Step Run tags: - Step Run /api/v1/tenants/{tenant}/step-runs/{step-run}/rerun: post: x-resources: - tenant - step-run description: Reruns a step run operationId: step-run:update:rerun parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/RerunStepRunRequest' description: The input to the rerun required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRun' description: Successfully replayed the events '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Rerun Step Run tags: - Step Run /api/v1/tenants/{tenant}/step-runs/{step-run}/cancel: post: x-resources: - tenant - step-run description: Attempts to cancel a step run operationId: step-run:update:cancel parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/StepRun' description: Successfully dispatched the cancellation '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Attempts to Cancel a Step Run tags: - Step Run /api/v1/tenants/{tenant}/step-runs/{step-run}/schema: get: x-resources: - tenant - step-run description: Get the schema for a step run operationId: step-run:get:schema parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The step run id in: path name: step-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: type: object description: Successfully retrieved the step run schema '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: The step run was not found summary: Get Step Run Schema tags: - Step Run /api/v1/tenants/{tenant}/worker: get: x-resources: - tenant description: Get all workers for a tenant operationId: worker:list parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The number to skip in: query name: offset required: false schema: type: integer format: int64 - description: The number to limit by in: query name: limit required: false schema: type: integer format: int64 - description: Filter by worker status in: query name: statuses required: false schema: type: array items: $ref: '#/components/schemas/WorkerStatus' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WorkerList' description: Successfully retrieved the workflows '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Workers tags: - Worker /api/v1/workers/{worker}: patch: x-resources: - tenant - worker description: Update a worker operationId: worker:update parameters: - description: The worker id in: path name: worker required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateWorkerRequest' description: The worker update required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Worker' description: Successfully updated the worker '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Update Worker tags: - Worker get: x-resources: - tenant - worker description: Get a worker operationId: worker:get parameters: - description: The worker id in: path name: worker required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/Worker' description: Successfully retrieved the worker '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden summary: Get Worker tags: - Worker /api/v1/tenants/{tenant}/webhook-workers: get: description: Lists all webhooks summary: List Webhooks operationId: webhook:list x-resources: - tenant parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookWorkerListResponse' description: The list of webhook workers '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed post: description: Creates a webhook summary: Create a Webhook operationId: webhook:create x-resources: - tenant parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 requestBody: content: application/json: schema: $ref: '#/components/schemas/WebhookWorkerCreateRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookWorkerCreated' description: Successfully created the webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed /api/v1/webhook-workers/{webhook}: delete: description: Deletes a webhook summary: Delete a Webhook operationId: webhook:delete x-resources: - tenant - webhook parameters: - description: The webhook id in: path name: webhook required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': description: Successfully deleted the webhook '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed /api/v1/webhook-workers/{webhook}/requests: get: description: Lists all requests for a webhook summary: List Webhook Requests operationId: webhook-requests:list x-resources: - tenant - webhook parameters: - description: The webhook id in: path name: webhook required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebhookWorkerRequestListResponse' description: The list of webhook requests '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '401': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Unauthorized '405': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Method not allowed /api/v1/tenants/{tenant}/workflow-runs/{workflow-run}/input: get: x-resources: - tenant - workflow-run description: Get the input for a workflow run. operationId: workflow-run:get:input parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The workflow run id in: path name: workflow-run required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: application/json: schema: type: object additionalProperties: true description: Successfully retrieved the workflow run input '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Workflow run not found summary: Get Workflow Run Input tags: - Workflow Run /api/v1/monitoring/{tenant}/probe: post: x-resources: - tenant description: Triggers a workflow to check the status of the instance summary: Detailed Health Probe for the Instance operationId: monitoring:post:runProbe parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': description: Successfully executed the probe. '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not authorized to perform this action /api/v1/version: get: description: Get the version of the server summary: We Return the Version for the Currently Running Server operationId: info:get:version security: [] x-security-optional: true responses: '200': description: The version of the server required: true content: application/json: schema: type: object required: - version properties: version: type: string example: 1.0.0 /api/v1/tenants/{tenant}/prometheus-metrics: get: x-resources: - tenant description: Get the prometheus metrics for the tenant operationId: tenant:get:prometheus-metrics parameters: - description: The tenant id in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 responses: '200': content: text/plain: schema: type: string description: Successfully retrieved the prometheus metrics '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Prometheus Metrics tags: - Tenant /api/v1/tenants/{tenant}/task-stats: get: x-resources: - tenant x-enable-rate-limiting: true description: Get task stats for tenant operationId: tenant:get:task-stats parameters: - description: The tenant ID in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: Task names that must appear in the response. Missing tasks are zero-filled so KEDA's metrics-api JSONPath always resolves. in: query name: taskNames required: false schema: type: array items: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/TaskStats' description: Successfully retrieved task stats for tenant '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Get Task Stats for Tenant tags: - Tenant /api/v1/tenants/{tenant}/feature-flags: get: x-resources: - tenant description: Evaluate a feature flag for a tenant operationId: tenant:feature-flag:evaluate parameters: - description: The tenant ID in: path name: tenant required: true schema: type: string format: uuid minLength: 36 maxLength: 36 - description: The feature flag id to evaluate in: query name: featureFlagId required: true schema: $ref: '#/components/schemas/FeatureFlagId' - description: A flag indicating what the behavior of the feature flag should be if PostHog is disabled or unavailable in: query name: isEnabledIfNoPosthog required: true schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/FeatureFlagEvaluationResult' description: Successfully evaluated the feature flag for the tenant '400': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: A malformed or bad request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Forbidden '404': content: application/json: schema: $ref: '#/components/schemas/APIErrors' description: Not found summary: Evaluate a Feature Flag for a Tenant tags: - Feature Flags components: securitySchemes: bearerAuth: type: http scheme: bearer cookieAuth: type: apiKey in: cookie name: hatchet customAuth: type: http scheme: bearer schemas: APIResourceMeta: type: object properties: id: type: string description: the id of this resource, in UUID format example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 0 maxLength: 36 createdAt: type: string description: the time that this resource was created format: date-time example: '2022-12-13T15:06:48.888358-05:00' updatedAt: type: string description: the time that this resource was last updated format: date-time example: '2022-12-13T15:06:48.888358-05:00' required: - id - createdAt - updatedAt V1TaskSummary: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' actionId: type: string description: The action ID of the task. retryCount: type: integer description: The number of retries of the task. attempt: type: integer description: The attempt number of the task. additionalMetadata: type: object description: Additional metadata for the task run. children: type: array items: $ref: '#/components/schemas/V1TaskSummary' description: The list of children tasks createdAt: type: string format: date-time description: The timestamp the task was created. displayName: type: string description: The display name of the task run. duration: type: integer description: The duration of the task run, in milliseconds. isDurable: type: boolean description: Whether this task was created as a durable task. errorMessage: type: string description: The error message of the task run (for the latest run) finishedAt: type: string format: date-time description: The timestamp the task run finished. input: type: object x-go-type: openapi.NonNullableJSON x-go-type-import: path: github.com/hatchet-dev/hatchet/api/v1/server/oas name: NonNullableJSON x-nullable: false description: The input of the task run. numSpawnedChildren: type: integer description: The number of spawned children tasks output: type: object x-go-type: openapi.NonNullableJSON x-go-type-import: path: github.com/hatchet-dev/hatchet/api/v1/server/oas name: NonNullableJSON x-nullable: false description: The output of the task run (for the latest run) status: $ref: '#/components/schemas/V1TaskStatus' isEvicted: type: boolean description: Whether the task has been evicted from a worker (still counts as RUNNING). startedAt: type: string format: date-time description: The timestamp the task run started. stepId: type: string description: The step ID of the task. format: uuid minLength: 36 maxLength: 36 taskExternalId: type: string description: The external ID of the task. format: uuid minLength: 36 maxLength: 36 taskId: type: integer description: The ID of the task. taskInsertedAt: type: string format: date-time description: The timestamp the task was inserted. tenantId: type: string description: The ID of the tenant. example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid type: $ref: '#/components/schemas/V1WorkflowType' description: The type of the workflow (whether it's a DAG or a task) workflowId: type: string format: uuid workflowName: type: string workflowRunExternalId: type: string format: uuid description: The external ID of the workflow run workflowVersionId: type: string format: uuid description: The version ID of the workflow workflowConfig: type: object parentTaskExternalId: type: string description: The external ID of the parent task. format: uuid required: - metadata - createdAt - displayName - id - input - numSpawnedChildren - output - status - taskExternalId - taskId - taskInsertedAt - tenantId - type - workflowId - workflowRunExternalId V1TaskStatus: type: string enum: - QUEUED - RUNNING - COMPLETED - CANCELLED - FAILED V1WorkflowType: type: string enum: - DAG - TASK APIError: type: object properties: code: type: integer description: a custom Hatchet error code format: uint64 example: 1400 field: type: string description: the field that this error is associated with, if applicable example: name description: type: string description: a description for this error example: A descriptive error message docs_link: type: string description: a link to the documentation for this error, if it exists example: github.com/hatchet-dev/hatchet required: - description APIErrors: type: object properties: errors: type: array items: $ref: '#/components/schemas/APIError' required: - errors PaginationResponse: type: object properties: current_page: type: integer description: the current page format: int64 example: 2 next_page: type: integer description: the next page format: int64 example: 3 num_pages: type: integer description: the total number of pages for listing format: int64 example: 10 example: next_page: 3 num_pages: 10 current_page: 2 V1TaskEventType: type: string enum: - REQUEUED_NO_WORKER - REQUEUED_RATE_LIMIT - SCHEDULING_TIMED_OUT - ASSIGNED - STARTED - FINISHED - FAILED - RETRYING - CANCELLED - TIMED_OUT - REASSIGNED - SLOT_RELEASED - TIMEOUT_REFRESHED - RETRIED_BY_USER - SENT_TO_WORKER - RATE_LIMIT_ERROR - ACKNOWLEDGED - CREATED - QUEUED - SKIPPED - COULD_NOT_SEND_TO_WORKER - DURABLE_EVICTED - DURABLE_RESTORING V1TaskEvent: type: object properties: id: type: integer taskId: type: string format: uuid timestamp: type: string format: date-time eventType: $ref: '#/components/schemas/V1TaskEventType' message: type: string errorMessage: type: string output: type: string workerId: type: string format: uuid taskDisplayName: type: string retryCount: type: integer description: The number of retries of the task. attempt: type: integer description: The attempt number of the task. required: - id - taskId - timestamp - eventType - message V1TaskEventList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/V1TaskEvent' type: array V1LogLineLevel: type: string enum: - DEBUG - INFO - WARN - ERROR V1LogLineOrderByDirection: type: string enum: - ASC - DESC V1LogLine: properties: createdAt: type: string format: date-time description: The creation date of the log line. message: type: string description: The log message. metadata: type: object description: The log metadata. taskExternalId: type: string description: The external ID of the task associated with the log line. format: uuid minLength: 36 maxLength: 36 taskDisplayName: type: string description: The display name of the task associated with the log line. retryCount: type: integer description: The retry count of the log line. attempt: type: integer description: The attempt number of the log line. level: $ref: '#/components/schemas/V1LogLineLevel' description: The log level. required: - createdAt - message - metadata V1LogLineList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/V1LogLine' type: array V1TaskFilter: type: object properties: since: type: string format: date-time until: type: string format: date-time statuses: type: array items: $ref: '#/components/schemas/V1TaskStatus' workflowIds: type: array items: type: string format: uuid additionalMetadata: type: array items: type: string required: - since V1CancelTaskRequest: type: object properties: externalIds: type: array description: A list of external IDs, which can refer to either task or workflow run external IDs items: type: string format: uuid minLength: 36 maxLength: 36 filter: $ref: '#/components/schemas/V1TaskFilter' V1CancelledTasks: properties: ids: type: array description: The list of task external ids that were cancelled items: type: string format: uuid minLength: 36 maxLength: 36 V1LogsPointMetric: type: object properties: time: type: string format: date-time DEBUG: type: integer INFO: type: integer WARN: type: integer ERROR: type: integer required: - time - DEBUG - INFO - WARN - ERROR V1LogsPointMetrics: type: object properties: results: type: array items: $ref: '#/components/schemas/V1LogsPointMetric' V1ReplayTaskRequest: type: object properties: externalIds: type: array description: A list of external IDs, which can refer to either task or workflow run external IDs items: type: string format: uuid minLength: 36 maxLength: 36 filter: $ref: '#/components/schemas/V1TaskFilter' V1ReplayedTasks: properties: ids: type: array description: The list of task external ids that were replayed items: type: string format: uuid minLength: 36 maxLength: 36 V1RestoreTaskResponse: type: object properties: requeued: type: boolean required: - requeued V1DagChildren: type: object properties: dagId: type: string format: uuid children: type: array items: $ref: '#/components/schemas/V1TaskSummary' V1RunningFilter: type: string enum: - ALL - EVICTED - ON_WORKER V1TaskSummaryList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/V1TaskSummary' description: The list of tasks required: - pagination - rows V1WorkflowRunDisplayName: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' displayName: type: string required: - metadata - displayName V1WorkflowRunDisplayNameList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/V1WorkflowRunDisplayName' description: The list of display names required: - pagination - rows V1WorkflowRunExternalIdList: type: array items: type: string format: uuid minLength: 36 maxLength: 36 description: The list of external IDs V1TriggerWorkflowRunRequest: properties: workflowName: type: string description: The name of the workflow. input: type: object additionalMetadata: type: object priority: type: integer description: The priority of the workflow run. required: - workflowName - input V1WorkflowRun: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' status: $ref: '#/components/schemas/V1TaskStatus' startedAt: type: string format: date-time description: The timestamp the task run started. finishedAt: type: string format: date-time description: The timestamp the task run finished. duration: type: integer description: The duration of the task run, in milliseconds. tenantId: type: string description: The ID of the tenant. example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid additionalMetadata: type: object description: Additional metadata for the task run. displayName: type: string description: The display name of the task run. workflowId: type: string format: uuid output: type: object x-go-type: openapi.NonNullableJSON x-go-type-import: path: github.com/hatchet-dev/hatchet/api/v1/server/oas name: NonNullableJSON x-nullable: false description: The output of the task run (for the latest run) errorMessage: type: string description: The error message of the task run (for the latest run) workflowVersionId: type: string format: uuid description: The ID of the workflow version. input: type: object x-go-type: openapi.NonNullableJSON x-go-type-import: path: github.com/hatchet-dev/hatchet/api/v1/server/oas name: NonNullableJSON x-nullable: false description: The input of the task run. createdAt: type: string format: date-time description: The timestamp the task run was created. parentTaskExternalId: type: string format: uuid minLength: 36 maxLength: 36 required: - metadata - id - status - tenantId - displayName - workflowId - output - input WorkflowRunShapeItemForWorkflowRunDetails: type: object properties: taskExternalId: type: string format: uuid minLength: 36 maxLength: 36 stepId: type: string format: uuid minLength: 36 maxLength: 36 childrenStepIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 taskName: type: string required: - taskExternalId - stepId - childrenStepIds - taskName WorkflowRunShapeForWorkflowRunDetails: type: array items: $ref: '#/components/schemas/WorkflowRunShapeItemForWorkflowRunDetails' V1WorkflowRunDetails: properties: run: $ref: '#/components/schemas/V1WorkflowRun' taskEvents: type: array items: $ref: '#/components/schemas/V1TaskEvent' description: The list of task events for the workflow run shape: $ref: '#/components/schemas/WorkflowRunShapeForWorkflowRunDetails' tasks: type: array items: $ref: '#/components/schemas/V1TaskSummary' workflowConfig: type: object required: - run - taskEvents - shape - tasks V1BranchDurableTaskRequest: properties: taskExternalId: type: string format: uuid minLength: 36 maxLength: 36 description: The external id of the durable task to branch. nodeId: type: integer format: int64 description: The node id to replay from. branchId: type: integer format: int64 description: The branch id to replay from. required: - taskExternalId - nodeId - branchId V1BranchDurableTaskResponse: properties: taskExternalId: type: string format: uuid minLength: 36 maxLength: 36 description: The external id of the durable task. nodeId: type: integer format: int64 description: The node id of the new entry. branchId: type: integer format: int64 description: The branch id of the new entry. required: - taskExternalId - nodeId - branchId V1DurableEventLogKind: type: string enum: - RUN - WAIT_FOR - MEMO V1DurableWaitConditionKind: type: string enum: - SLEEP - USER_EVENT - CHILD_WORKFLOW V1DurableWaitCondition: type: object properties: kind: $ref: '#/components/schemas/V1DurableWaitConditionKind' sleepDurationMs: type: integer format: int64 eventKey: type: string workflowName: type: string required: - kind V1WaitItem: type: object properties: kind: $ref: '#/components/schemas/V1DurableWaitConditionKind' sleepDurationMs: type: integer format: int64 eventKey: type: string workflowName: type: string or: type: array items: $ref: '#/components/schemas/V1DurableWaitCondition' V1WaitData: type: array items: $ref: '#/components/schemas/V1WaitItem' V1DurableEventLogEntry: type: object properties: nodeId: type: integer format: int64 description: The monotonically increasing node id in the event log. branchId: type: integer format: int64 description: The branch id when this entry was first seen. kind: $ref: '#/components/schemas/V1DurableEventLogKind' waitData: $ref: '#/components/schemas/V1WaitData' isSatisfied: type: boolean description: Whether this entry has been satisfied. satisfiedAt: type: string format: date-time description: When this entry was satisfied, if it has been satisfied. insertedAt: type: string format: date-time description: When this entry was inserted. userMessage: type: string description: A user-provided message or label, sent when establishing a durable wait. taskExternalId: type: string format: uuid minLength: 36 maxLength: 36 description: The external id of the durable task this event log entry is associated with. taskDisplayName: type: string description: The display name of the durable task this event log entry is associated with. required: - nodeId - branchId - kind - isSatisfied - insertedAt - taskExternalId - taskDisplayName V1DurableEventLogList: type: array items: $ref: '#/components/schemas/V1DurableEventLogEntry' OtelSpanKind: type: string enum: - UNSPECIFIED - INTERNAL - SERVER - CLIENT - PRODUCER - CONSUMER OtelStatusCode: type: string enum: - UNSET - OK - ERROR OtelSpan: type: object properties: traceId: type: string spanId: type: string parentSpanId: type: string spanName: type: string spanKind: $ref: '#/components/schemas/OtelSpanKind' serviceName: type: string statusCode: $ref: '#/components/schemas/OtelStatusCode' statusMessage: type: string durationNs: type: integer format: int64 createdAt: type: string format: date-time resourceAttributes: type: object additionalProperties: type: string spanAttributes: type: object additionalProperties: type: string scopeName: type: string scopeVersion: type: string retryCount: type: integer format: int32 required: - traceId - spanId - spanName - spanKind - serviceName - statusCode - durationNs - createdAt - retryCount OtelSpanList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' retryCounts: type: array items: type: integer format: int32 rows: type: array items: $ref: '#/components/schemas/OtelSpan' V1TaskTiming: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' depth: type: integer description: The depth of the task in the waterfall. status: $ref: '#/components/schemas/V1TaskStatus' isEvicted: type: boolean description: Whether the task has been evicted from a worker (still counts as RUNNING). taskDisplayName: type: string description: The display name of the task run. taskExternalId: type: string description: The external ID of the task. format: uuid minLength: 36 maxLength: 36 taskId: type: integer description: The ID of the task. taskInsertedAt: type: string format: date-time description: The timestamp the task was inserted. tenantId: type: string description: The ID of the tenant. example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid parentTaskExternalId: type: string description: The external ID of the parent task. format: uuid minLength: 36 maxLength: 36 queuedAt: type: string format: date-time description: The timestamp the task run was queued. startedAt: type: string format: date-time description: The timestamp the task run started. finishedAt: type: string format: date-time description: The timestamp the task run finished. workflowRunId: type: string format: uuid description: The external ID of the workflow run. retryCount: type: integer description: The number of retries of the task. attempt: type: integer description: The attempt number of the task. required: - metadata - depth - status - taskDisplayName - taskExternalId - taskId - taskInsertedAt - tenantId V1TaskTimingList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/V1TaskTiming' description: The list of task timings required: - pagination - rows V1RunningDetailCount: type: object properties: evicted: type: integer description: The number of evicted tasks within the RUNNING status bucket. onWorker: type: integer description: The number of tasks currently on a worker within the RUNNING status bucket. required: - evicted - onWorker V1TaskRunMetric: type: object properties: status: $ref: '#/components/schemas/V1TaskStatus' count: type: integer runningDetailCount: $ref: '#/components/schemas/V1RunningDetailCount' required: - status - count V1TaskRunMetrics: type: array items: $ref: '#/components/schemas/V1TaskRunMetric' V1TaskPointMetric: type: object properties: time: type: string format: date-time SUCCEEDED: type: integer FAILED: type: integer required: - time - SUCCEEDED - FAILED V1TaskPointMetrics: type: object properties: results: type: array items: $ref: '#/components/schemas/V1TaskPointMetric' EventKey: type: string description: The key for the event. TenantVersion: enum: - V0 - V1 type: string TenantEnvironment: enum: - local - development - production type: string Tenant: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the tenant. slug: type: string description: The slug of the tenant. analyticsOptOut: type: boolean description: Whether the tenant has opted out of analytics. alertMemberEmails: type: boolean description: Whether to alert tenant members. version: $ref: '#/components/schemas/TenantVersion' description: The version of the tenant. environment: $ref: '#/components/schemas/TenantEnvironment' description: The environment type of the tenant. serverUrl: type: string description: The server URL for the tenant (includes scheme) region: type: string description: Control-plane shard region for the tenant (e.g. aws:us-west-2). required: - metadata - name - slug - version type: object V1EventWorkflowRunSummary: properties: running: type: integer format: int64 description: The number of running runs. queued: type: integer format: int64 description: The number of queued runs. succeeded: type: integer format: int64 description: The number of succeeded runs. failed: type: integer format: int64 description: The number of failed runs. cancelled: type: integer format: int64 description: The number of cancelled runs. required: - running - queued - succeeded - failed - cancelled V1EventTriggeredRun: type: object properties: workflowRunId: type: string format: uuid description: The external ID of the triggered run. minLength: 36 maxLength: 36 filterId: type: string format: uuid description: The ID of the filter that triggered the run, if applicable. required: - workflowRunId V1Event: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' key: type: string description: The key for the event. tenant: $ref: '#/components/schemas/Tenant' description: The tenant associated with this event. tenantId: type: string description: The ID of the tenant associated with this event. workflowRunSummary: $ref: '#/components/schemas/V1EventWorkflowRunSummary' description: The workflow run summary for this event. additionalMetadata: type: object description: Additional metadata for the event. payload: type: object description: The payload of the event, which can be any JSON-serializable object. scope: type: string description: The scope of the event, which can be used to filter or categorize events. seenAt: type: string format: date-time description: The timestamp when the event was seen. triggeredRuns: description: The external IDs of the runs that were triggered by this event. type: array items: $ref: '#/components/schemas/V1EventTriggeredRun' triggeringWebhookName: type: string description: The name of the webhook that triggered this event, if applicable. required: - metadata - key - tenantId - workflowRunSummary V1EventList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/V1Event' type: array EventKeyList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/EventKey' type: array V1Filter: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string description: The ID of the tenant associated with this filter. workflowId: type: string format: uuid minLength: 36 maxLength: 36 description: The workflow id associated with this filter. scope: type: string description: The scope associated with this filter. Used for subsetting candidate filters at evaluation time expression: type: string description: The expression associated with this filter. payload: type: object description: Additional payload data associated with the filter isDeclarative: type: boolean description: Whether the filter is declarative (true) or programmatic (false) required: - metadata - tenantId - workflowId - scope - expression - payload V1FilterList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/V1Filter' V1CreateFilterRequest: type: object properties: workflowId: type: string format: uuid minLength: 36 maxLength: 36 description: The workflow id expression: type: string description: The expression for the filter scope: type: string description: The scope associated with this filter. Used for subsetting candidate filters at evaluation time payload: type: object description: The payload for the filter required: - workflowId - scope - expression V1UpdateFilterRequest: type: object properties: expression: type: string description: The expression for the filter scope: type: string description: The scope associated with this filter. Used for subsetting candidate filters at evaluation time payload: type: object description: The payload for the filter V1WebhookSourceName: type: string enum: - GENERIC - GITHUB - STRIPE - SLACK - LINEAR - SVIX V1WebhookAuthType: type: string enum: - BASIC - API_KEY - HMAC V1Webhook: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string description: The ID of the tenant associated with this webhook. name: type: string description: The name of the webhook sourceName: $ref: '#/components/schemas/V1WebhookSourceName' description: The name of the source for this webhook eventKeyExpression: type: string description: The CEL expression to use for the event key. This is used to create the event key from the webhook payload. scopeExpression: type: string description: The CEL expression to use for the scope. This is used to filter the correct workflow to trigger. staticPayload: type: object description: The static payload to use for the webhook. This is used to send a static payload with the webhook. authType: $ref: '#/components/schemas/V1WebhookAuthType' description: The type of authentication to use for the webhook returnEventAsResponsePayload: type: boolean description: Whether to return the triggered event as the response payload when this webhook is triggered required: - metadata - tenantId - name - sourceName - eventKeyExpression - authType V1WebhookList: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/V1Webhook' V1CreateWebhookRequestBase: type: object properties: sourceName: $ref: '#/components/schemas/V1WebhookSourceName' description: The name of the source for this webhook name: type: string description: The name of the webhook eventKeyExpression: type: string description: The CEL expression to use for the event key. This is used to create the event key from the webhook payload. scopeExpression: type: string description: The CEL expression to use for the scope. This is used to filter the correct workflow to trigger. staticPayload: type: object description: The static payload to use for the webhook. This is used to send a static payload with the webhook. returnEventAsResponsePayload: type: boolean description: Whether to return the triggered event as the response payload when this webhook is triggered required: - name - sourceName - eventKeyExpression V1WebhookBasicAuth: type: object properties: username: type: string description: The username for basic auth password: type: string description: The password for basic auth required: - username - password V1CreateWebhookRequestBasicAuth: allOf: - $ref: '#/components/schemas/V1CreateWebhookRequestBase' - type: object properties: authType: type: string enum: - BASIC description: The type of authentication to use for the webhook auth: $ref: '#/components/schemas/V1WebhookBasicAuth' required: - authType - auth V1WebhookAPIKeyAuth: type: object properties: headerName: type: string description: The name of the header to use for the API key apiKey: type: string description: The API key to use for authentication required: - headerName - apiKey V1CreateWebhookRequestAPIKey: allOf: - $ref: '#/components/schemas/V1CreateWebhookRequestBase' - type: object properties: authType: type: string enum: - API_KEY description: The type of authentication to use for the webhook auth: $ref: '#/components/schemas/V1WebhookAPIKeyAuth' required: - authType - auth V1WebhookHMACAlgorithm: type: string enum: - SHA1 - SHA256 - SHA512 - MD5 V1WebhookHMACEncoding: type: string enum: - HEX - BASE64 - BASE64URL V1WebhookHMACAuth: type: object properties: algorithm: $ref: '#/components/schemas/V1WebhookHMACAlgorithm' description: The HMAC algorithm to use for the webhook encoding: $ref: '#/components/schemas/V1WebhookHMACEncoding' description: The encoding to use for the HMAC signature signatureHeaderName: type: string description: The name of the header to use for the HMAC signature signingSecret: type: string description: The secret key used to sign the HMAC signature required: - algorithm - encoding - signatureHeaderName - signingSecret V1CreateWebhookRequestHMAC: allOf: - $ref: '#/components/schemas/V1CreateWebhookRequestBase' - type: object properties: authType: type: string enum: - HMAC description: The type of authentication to use for the webhook auth: $ref: '#/components/schemas/V1WebhookHMACAuth' required: - authType - auth V1CreateWebhookRequest: oneOf: - $ref: '#/components/schemas/V1CreateWebhookRequestBasicAuth' - $ref: '#/components/schemas/V1CreateWebhookRequestAPIKey' - $ref: '#/components/schemas/V1CreateWebhookRequestHMAC' V1WebhookResponse: type: object properties: message: type: string description: The message for the webhook response event: $ref: '#/components/schemas/V1Event' challenge: type: string V1UpdateWebhookRequest: type: object properties: eventKeyExpression: type: string description: The CEL expression to use for the event key. This is used to create the event key from the webhook payload. scopeExpression: type: string description: The CEL expression to use for the scope. This is used to filter the correct workflow to trigger. staticPayload: type: object description: The static payload to use for the webhook. This is used to send a static payload with the webhook. returnEventAsResponsePayload: type: boolean description: Whether to return the triggered event as the response payload when this webhook is triggered V1CELDebugRequest: type: object properties: expression: type: string description: The CEL expression to evaluate input: type: object description: The input, which simulates the workflow run input filterPayload: type: object description: The filter payload, which simulates a payload set on a previous-created filter additionalMetadata: type: object description: Additional metadata, which simulates metadata that could be sent with an event or a workflow run required: - expression - input V1CELDebugResponseStatus: type: string description: The status of the CEL evaluation enum: - SUCCESS - ERROR V1CELDebugResponse: type: object properties: status: $ref: '#/components/schemas/V1CELDebugResponseStatus' output: type: boolean description: The result of the CEL expression evaluation, if successful error: type: string description: The error message if the evaluation failed required: - status APIMetaAuth: type: object properties: schemes: items: type: string type: array description: the supported types of authentication example: - basic - google APIMetaPosthog: type: object properties: apiKey: type: string description: the PostHog API key example: phk_1234567890abcdef apiHost: type: string description: the PostHog API host example: https://posthog.example.com APIMeta: type: object properties: auth: $ref: '#/components/schemas/APIMetaAuth' pylonAppId: type: string description: the Pylon app ID for usepylon.com chat support example: 12345678-1234-1234-1234-123456789012 posthog: $ref: '#/components/schemas/APIMetaPosthog' allowSignup: type: boolean description: whether or not users can sign up for this instance example: true allowInvites: type: boolean description: whether or not users can invite other users to this instance example: true allowCreateTenant: type: boolean description: whether or not users can create new tenants example: true allowChangePassword: type: boolean description: whether or not users can change their password example: true observabilityEnabled: type: boolean description: whether or not observability (trace collection) is enabled on this instance example: false APIMetaIntegration: type: object properties: name: type: string description: the name of the integration example: github enabled: type: boolean description: whether this integration is enabled on the instance required: - name - enabled ListAPIMetaIntegration: type: array items: $ref: '#/components/schemas/APIMetaIntegration' UserLoginRequest: properties: email: type: string format: email description: The email address of the user. x-oapi-codegen-extra-tags: validate: required,email password: type: string description: The password of the user. x-oapi-codegen-extra-tags: validate: required,password required: - email - password type: object User: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The display name of the user. email: type: string format: email description: The email address of the user. emailVerified: type: boolean description: Whether the user has verified their email address. hasPassword: type: boolean description: Whether the user has a password set. emailHash: type: string description: A hash of the user's email address for use with Pylon Support Chat required: - metadata - email - emailVerified type: object SNSIntegration: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string format: uuid description: The unique identifier for the tenant that the SNS integration belongs to. topicArn: type: string description: The Amazon Resource Name (ARN) of the SNS topic. ingestUrl: type: string description: The URL to send SNS messages to. required: - metadata - tenantId - topicArn ListSNSIntegrations: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/SNSIntegration' required: - pagination - rows CreateSNSIntegrationRequest: properties: topicArn: type: string description: The Amazon Resource Name (ARN) of the SNS topic. x-oapi-codegen-extra-tags: validate: required,min=1,max=256 required: - topicArn type: object TenantAlertEmailGroup: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' emails: type: array items: type: string description: A list of emails for users required: - metadata - emails type: object TenantAlertEmailGroupList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/TenantAlertEmailGroup' type: array x-go-name: Rows CreateTenantAlertEmailGroupRequest: properties: emails: type: array items: type: string description: A list of emails for users x-oapi-codegen-extra-tags: validate: required,dive,email required: - emails type: object TenantResource: enum: - WORKER - WORKER_SLOT - EVENT - TASK_RUN - CRON - SCHEDULE - INCOMING_WEBHOOK type: string TenantResourceLimit: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' resource: $ref: '#/components/schemas/TenantResource' description: The resource associated with this limit. limitValue: type: integer description: The limit associated with this limit. alarmValue: type: integer description: The alarm value associated with this limit to warn of approaching limit value. value: type: integer description: The current value associated with this limit. window: type: string description: The meter window for the limit. (i.e. 1 day, 1 week, 1 month) lastRefill: type: string description: The last time the limit was refilled. format: date-time required: - metadata - tenantId - resource - limitValue - value type: object TenantResourcePolicy: properties: limits: type: array items: $ref: '#/components/schemas/TenantResourceLimit' description: A list of resource limits for the tenant. required: - limits type: object UpdateTenantAlertEmailGroupRequest: properties: emails: type: array items: type: string description: A list of emails for users x-oapi-codegen-extra-tags: validate: required,dive,email required: - emails type: object SlackWebhook: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string format: uuid description: The unique identifier for the tenant that the SNS integration belongs to. teamName: type: string description: The team name associated with this slack webhook. teamId: type: string description: The team id associated with this slack webhook. channelName: type: string description: The channel name associated with this slack webhook. channelId: type: string description: The channel id associated with this slack webhook. required: - metadata - tenantId - teamName - teamId - channelName - channelId ListSlackWebhooks: type: object properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: type: array items: $ref: '#/components/schemas/SlackWebhook' required: - pagination - rows UserChangePasswordRequest: properties: password: type: string description: The password of the user. x-oapi-codegen-extra-tags: validate: required,password newPassword: type: string description: The new password for the user. x-oapi-codegen-extra-tags: validate: required,password required: - password - newPassword type: object UserRegisterRequest: properties: name: type: string description: The name of the user. email: type: string format: email description: The email address of the user. x-oapi-codegen-extra-tags: validate: required,email password: type: string description: The password of the user. x-oapi-codegen-extra-tags: validate: required,password required: - name - email - password type: object UserTenantPublic: properties: email: type: string format: email description: The email address of the user. name: type: string description: The display name of the user. required: - email type: object TenantMemberRole: enum: - OWNER - ADMIN - MEMBER type: string TenantMember: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' user: $ref: '#/components/schemas/UserTenantPublic' description: The user associated with this tenant member. role: $ref: '#/components/schemas/TenantMemberRole' description: The role of the user in the tenant. tenant: $ref: '#/components/schemas/Tenant' description: The tenant associated with this tenant member. required: - metadata - user - role type: object UserTenantMembershipsList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/TenantMember' type: array x-go-name: Rows TenantInvite: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' email: type: string description: The email of the user to invite. role: $ref: '#/components/schemas/TenantMemberRole' description: The role of the user in the tenant. tenantId: type: string description: The tenant id associated with this tenant invite. tenantName: type: string description: The tenant name for the tenant. expires: type: string description: The time that this invite expires. format: date-time required: - metadata - email - role - expires - tenantId type: object TenantInviteList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/TenantInvite' type: array x-go-name: Rows AcceptInviteRequest: properties: invite: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 x-oapi-codegen-extra-tags: validate: required,uuid required: - invite type: object RejectInviteRequest: properties: invite: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 x-oapi-codegen-extra-tags: validate: required,uuid required: - invite type: object CreateTenantRequest: properties: name: type: string description: The name of the tenant. x-oapi-codegen-extra-tags: validate: required slug: type: string description: The slug of the tenant. x-oapi-codegen-extra-tags: validate: required,hatchetName engineVersion: $ref: '#/components/schemas/TenantVersion' description: The engine version of the tenant. Defaults to V0. environment: $ref: '#/components/schemas/TenantEnvironment' description: The environment type of the tenant. onboardingData: type: object description: Additional onboarding data to store with the tenant. additionalProperties: true required: - name - slug type: object UpdateTenantRequest: properties: name: type: string description: The name of the tenant. analyticsOptOut: type: boolean description: Whether the tenant has opted out of analytics. alertMemberEmails: type: boolean description: Whether to alert tenant members. enableWorkflowRunFailureAlerts: type: boolean description: Whether to send alerts when workflow runs fail. enableExpiringTokenAlerts: type: boolean description: Whether to enable alerts when tokens are approaching expiration. enableTenantResourceLimitAlerts: type: boolean description: Whether to enable alerts when tenant resources are approaching limits. maxAlertingFrequency: type: string description: The max frequency at which to alert. x-oapi-codegen-extra-tags: validate: omitnil,duration version: $ref: '#/components/schemas/TenantVersion' description: The version of the tenant. type: object TenantAlertingSettings: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' alertMemberEmails: type: boolean description: Whether to alert tenant members. enableWorkflowRunFailureAlerts: type: boolean description: Whether to send alerts when workflow runs fail. enableExpiringTokenAlerts: type: boolean description: Whether to enable alerts when tokens are approaching expiration. enableTenantResourceLimitAlerts: type: boolean description: Whether to enable alerts when tenant resources are approaching limits. maxAlertingFrequency: type: string description: The max frequency at which to alert. lastAlertedAt: type: string description: The last time an alert was sent. format: date-time required: - metadata - maxAlertingFrequency type: object CreateTenantInviteRequest: properties: email: type: string description: The email of the user to invite. x-oapi-codegen-extra-tags: validate: required,email role: $ref: '#/components/schemas/TenantMemberRole' description: The role of the user in the tenant. x-oapi-codegen-extra-tags: validate: required required: - email - role type: object UpdateTenantInviteRequest: properties: role: $ref: '#/components/schemas/TenantMemberRole' description: The role of the user in the tenant. x-oapi-codegen-extra-tags: validate: required required: - role type: object APIToken: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the API token. maxLength: 255 expiresAt: type: string format: date-time description: When the API token expires. required: - metadata - name - expiresAt ListAPITokensResponse: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/APIToken' type: array CreateAPITokenRequest: type: object properties: name: type: string description: A name for the API token. maxLength: 255 expiresIn: type: string description: The duration for which the token is valid. x-oapi-codegen-extra-tags: validate: omitnil,duration required: - name CreateAPITokenResponse: type: object properties: token: type: string description: The API token. required: - token WorkflowID: type: string description: A workflow ID. QueueMetrics: type: object properties: numQueued: type: integer description: The number of items in the queue. numRunning: type: integer description: The number of items running. numPending: type: integer description: The number of items pending. required: - numQueued - numRunning - numPending TenantQueueMetrics: properties: total: $ref: '#/components/schemas/QueueMetrics' description: The total queue metrics. workflow: type: object additionalProperties: $ref: '#/components/schemas/QueueMetrics' queues: type: object additionalProperties: type: integer TenantStepRunQueueMetrics: properties: queues: type: object WorkflowRunStatus: type: string enum: - PENDING - RUNNING - SUCCEEDED - FAILED - CANCELLED - QUEUED - BACKOFF WorkflowRunStatusList: type: array items: $ref: '#/components/schemas/WorkflowRunStatus' EventSearch: type: string EventOrderByField: type: string enum: - createdAt EventOrderByDirection: type: string enum: - asc - desc EventWorkflowRunSummary: properties: pending: type: integer format: int64 description: The number of pending runs. running: type: integer format: int64 description: The number of running runs. queued: type: integer format: int64 description: The number of queued runs. succeeded: type: integer format: int64 description: The number of succeeded runs. failed: type: integer format: int64 description: The number of failed runs. cancelled: type: integer format: int64 description: The number of cancelled runs. Event: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' key: type: string description: The key for the event. tenant: $ref: '#/components/schemas/Tenant' description: The tenant associated with this event. tenantId: type: string description: The ID of the tenant associated with this event. workflowRunSummary: $ref: '#/components/schemas/EventWorkflowRunSummary' description: The workflow run summary for this event. additionalMetadata: type: object description: Additional metadata for the event. required: - metadata - key - tenantId EventList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/Event' type: array CreateEventRequest: properties: key: type: string description: The key for the event. data: type: object description: The data for the event. additionalMetadata: type: object description: Additional metadata for the event. priority: type: integer description: The priority of the event. format: int32 scope: type: string description: The scope for event filtering. required: - key - data BulkCreateEventRequest: properties: events: type: array items: $ref: '#/components/schemas/CreateEventRequest' required: - events Events: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' events: type: array items: $ref: '#/components/schemas/Event' description: The events. required: - metadata - events ReplayEventRequest: properties: eventIds: type: array items: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid required: - eventIds CancelEventRequest: properties: eventIds: type: array items: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid required: - eventIds RateLimitOrderByField: type: string enum: - key - value - limitValue RateLimitOrderByDirection: type: string enum: - asc - desc RateLimit: properties: key: type: string description: The key for the rate limit. tenantId: type: string description: The ID of the tenant associated with this rate limit. limitValue: type: integer description: The maximum number of requests allowed within the window. value: type: integer description: The current number of requests made within the window. window: type: string description: The window of time in which the limitValue is enforced. lastRefill: type: string format: date-time example: '2022-12-13T15:06:48.888358-05:00' description: The last time the rate limit was refilled. required: - key - tenantId - limitValue - value - window - lastRefill RateLimitList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/RateLimit' type: array TenantMemberList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/TenantMember' type: array x-go-name: Rows UpdateTenantMemberRequest: properties: role: $ref: '#/components/schemas/TenantMemberRole' description: The role of the user in the tenant. x-oapi-codegen-extra-tags: validate: required required: - role type: object EventData: properties: data: type: string description: The data for the event (JSON bytes). required: - data Workflow: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the workflow. description: type: string description: The description of the workflow. isPaused: type: boolean description: Whether the workflow is paused. versions: type: array items: $ref: '#/components/schemas/WorkflowVersionMeta' tags: type: array items: $ref: '#/components/schemas/WorkflowTag' description: The tags of the workflow. jobs: type: array items: $ref: '#/components/schemas/Job' description: The jobs of the workflow. tenantId: type: string description: The tenant id of the workflow. required: - metadata - name - tenantId type: object WorkflowVersionMeta: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' version: type: string description: The version of the workflow. order: type: integer format: int32 workflowId: type: string workflow: $ref: '#/components/schemas/Workflow' required: - metadata - version - order - workflowId WorkflowTag: type: object properties: name: type: string description: The name of the workflow. color: type: string description: The description of the workflow. required: - name - color Step: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' readableId: type: string description: The readable id of the step. tenantId: type: string jobId: type: string action: type: string timeout: type: string description: The timeout of the step. isDurable: type: boolean description: Whether the step is durable. slotRequests: type: object description: Slot requests for the step (slot_type -> units). additionalProperties: type: integer children: type: array items: type: string parents: type: array items: type: string required: - metadata - readableId - tenantId - jobId - action - nextId Job: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string versionId: type: string name: type: string description: type: string description: The description of the job. steps: type: array items: $ref: '#/components/schemas/Step' timeout: type: string description: The timeout of the job. required: - metadata - tenantId - versionId - name - steps WorkflowList: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' rows: type: array items: $ref: '#/components/schemas/Workflow' pagination: $ref: '#/components/schemas/PaginationResponse' ScheduleWorkflowRunRequest: properties: input: type: object additionalMetadata: type: object triggerAt: type: string format: date-time priority: type: integer minimum: 1 maximum: 3 format: int32 required: - input - additionalMetadata - triggerAt ScheduledWorkflowsMethod: type: string enum: - DEFAULT - API ScheduledWorkflows: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string workflowVersionId: type: string workflowId: type: string workflowName: type: string triggerAt: type: string format: date-time input: type: object additionalProperties: true additionalMetadata: type: object additionalProperties: true workflowRunCreatedAt: type: string format: date-time workflowRunName: type: string workflowRunStatus: $ref: '#/components/schemas/WorkflowRunStatus' workflowRunId: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid method: $ref: '#/components/schemas/ScheduledWorkflowsMethod' priority: type: integer minimum: 1 maximum: 3 format: int32 required: - metadata - tenantId - workflowVersionId - workflowName - workflowId - triggerAt - method ScheduledWorkflowsOrderByField: type: string enum: - triggerAt - createdAt WorkflowRunOrderByDirection: type: string enum: - ASC - DESC ScheduledRunStatus: type: string enum: - PENDING - RUNNING - SUCCEEDED - FAILED - CANCELLED - QUEUED - SCHEDULED ScheduledWorkflowsList: type: object properties: rows: type: array items: $ref: '#/components/schemas/ScheduledWorkflows' pagination: $ref: '#/components/schemas/PaginationResponse' UpdateScheduledWorkflowRunRequest: type: object properties: triggerAt: type: string format: date-time required: - triggerAt ScheduledWorkflowsBulkDeleteFilter: type: object properties: workflowId: type: string format: uuid minLength: 36 maxLength: 36 parentWorkflowRunId: type: string format: uuid minLength: 36 maxLength: 36 parentStepRunId: type: string format: uuid minLength: 36 maxLength: 36 additionalMetadata: description: A list of metadata key value pairs to filter by type: array items: type: string example: - key1:value1 - key2:value2 ScheduledWorkflowsBulkDeleteRequest: type: object properties: scheduledWorkflowRunIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 minItems: 1 maxItems: 500 filter: $ref: '#/components/schemas/ScheduledWorkflowsBulkDeleteFilter' ScheduledWorkflowsBulkError: type: object properties: id: type: string format: uuid minLength: 36 maxLength: 36 error: type: string required: - error ScheduledWorkflowsBulkDeleteResponse: type: object properties: deletedIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 errors: type: array items: $ref: '#/components/schemas/ScheduledWorkflowsBulkError' required: - deletedIds - errors ScheduledWorkflowsBulkUpdateItem: type: object properties: id: type: string format: uuid minLength: 36 maxLength: 36 triggerAt: type: string format: date-time required: - id - triggerAt ScheduledWorkflowsBulkUpdateRequest: type: object properties: updates: type: array items: $ref: '#/components/schemas/ScheduledWorkflowsBulkUpdateItem' minItems: 1 maxItems: 500 required: - updates ScheduledWorkflowsBulkUpdateResponse: type: object properties: updatedIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 errors: type: array items: $ref: '#/components/schemas/ScheduledWorkflowsBulkError' required: - updatedIds - errors CreateCronWorkflowTriggerRequest: properties: input: type: object additionalMetadata: type: object cronName: type: string cronExpression: type: string priority: type: integer minimum: 1 maximum: 3 format: int32 required: - input - additionalMetadata - cronName - cronExpression CronWorkflowsMethod: type: string enum: - DEFAULT - API CronWorkflows: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string workflowVersionId: type: string workflowId: type: string workflowName: type: string cron: type: string name: type: string input: type: object additionalProperties: true additionalMetadata: type: object additionalProperties: true enabled: type: boolean method: $ref: '#/components/schemas/CronWorkflowsMethod' priority: type: integer minimum: 1 maximum: 3 format: int32 required: - metadata - tenantId - workflowVersionId - workflowName - workflowId - cron - enabled - method CronWorkflowsOrderByField: type: string enum: - name - createdAt CronWorkflowsList: type: object properties: rows: type: array items: $ref: '#/components/schemas/CronWorkflows' pagination: $ref: '#/components/schemas/PaginationResponse' UpdateCronWorkflowTriggerRequest: properties: enabled: type: boolean WorkflowRunsCancelRequest: type: object properties: workflowRunIds: type: array items: type: string format: uuid minLength: 36 maxLength: 36 required: - workflowRunIds WorkflowUpdateRequest: type: object properties: isPaused: type: boolean description: Whether the workflow is paused. ConcurrencyLimitStrategy: type: string enum: - CANCEL_IN_PROGRESS - DROP_NEWEST - QUEUE_NEWEST - GROUP_ROUND_ROBIN WorkflowConcurrency: type: object properties: maxRuns: type: integer format: int32 description: The maximum number of concurrent workflow runs. limitStrategy: $ref: '#/components/schemas/ConcurrencyLimitStrategy' description: The strategy to use when the concurrency limit is reached. getConcurrencyGroup: type: string description: An action which gets the concurrency group for the WorkflowRun. required: - maxRuns - limitStrategy - getConcurrencyGroup WorkflowTriggerEventRef: type: object properties: parent_id: type: string event_key: type: string WorkflowTriggerCronRef: type: object properties: parent_id: type: string cron: type: string WorkflowTriggers: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' workflow_version_id: type: string tenant_id: type: string events: type: array items: $ref: '#/components/schemas/WorkflowTriggerEventRef' crons: type: array items: $ref: '#/components/schemas/WorkflowTriggerCronRef' ConcurrencyScope: type: string enum: - WORKFLOW - TASK ConcurrencySetting: type: object properties: maxRuns: type: integer format: int32 description: The maximum number of concurrent workflow runs. limitStrategy: $ref: '#/components/schemas/ConcurrencyLimitStrategy' description: The strategy to use when the concurrency limit is reached. expression: type: string description: The concurrency expression, used to generate a key from task inputs, metadata, etc. stepReadableId: type: string description: The readable id of the step to which this concurrency setting applies. scope: $ref: '#/components/schemas/ConcurrencyScope' description: The scope of the concurrency setting. required: - maxRuns - limitStrategy - expression - scope WorkflowVersion: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' version: type: string description: The version of the workflow. order: type: integer format: int32 workflowId: type: string sticky: type: string description: The sticky strategy of the workflow. defaultPriority: type: integer format: int32 description: The default priority of the workflow. workflow: $ref: '#/components/schemas/Workflow' concurrency: $ref: '#/components/schemas/WorkflowConcurrency' triggers: $ref: '#/components/schemas/WorkflowTriggers' scheduleTimeout: type: string jobs: type: array items: $ref: '#/components/schemas/Job' workflowConfig: type: object v1Concurrency: type: array items: $ref: '#/components/schemas/ConcurrencySetting' inputJsonSchema: type: object description: The JSON schema for the workflow input. required: - metadata - version - order - workflowId TriggerWorkflowRunRequest: properties: input: type: object additionalMetadata: type: object required: - input WorkflowRun: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string workflowVersionId: type: string workflowVersion: $ref: '#/components/schemas/WorkflowVersion' status: $ref: '#/components/schemas/WorkflowRunStatus' displayName: type: string jobRuns: type: array items: $ref: '#/components/schemas/JobRun' triggeredBy: $ref: '#/components/schemas/WorkflowRunTriggeredBy' input: type: object additionalProperties: true error: type: string startedAt: type: string format: date-time finishedAt: type: string format: date-time duration: type: integer example: 1000 parentId: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid parentStepRunId: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid additionalMetadata: type: object additionalProperties: true required: - metadata - tenantId - workflowVersionId - status - triggeredBy JobRun: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string workflowRunId: type: string workflowRun: $ref: '#/components/schemas/WorkflowRun' jobId: type: string job: $ref: '#/components/schemas/Job' tickerId: type: string stepRuns: type: array items: $ref: '#/components/schemas/StepRun' status: $ref: '#/components/schemas/JobRunStatus' result: type: object startedAt: type: string format: date-time finishedAt: type: string format: date-time timeoutAt: type: string format: date-time cancelledAt: type: string format: date-time cancelledReason: type: string cancelledError: type: string required: - metadata - tenantId - workflowRunId - jobId - status StepRunStatus: type: string enum: - PENDING - PENDING_ASSIGNMENT - ASSIGNED - RUNNING - SUCCEEDED - FAILED - CANCELLED - CANCELLING - BACKOFF StepRun: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string jobRunId: type: string jobRun: $ref: '#/components/schemas/JobRun' stepId: type: string step: $ref: '#/components/schemas/Step' childWorkflowsCount: type: integer parents: type: array items: type: string childWorkflowRuns: type: array items: type: string workerId: type: string input: type: string output: type: string status: $ref: '#/components/schemas/StepRunStatus' requeueAfter: type: string format: date-time result: type: object error: type: string startedAt: type: string format: date-time startedAtEpoch: type: integer finishedAt: type: string format: date-time finishedAtEpoch: type: integer timeoutAt: type: string format: date-time timeoutAtEpoch: type: integer cancelledAt: type: string format: date-time cancelledAtEpoch: type: integer cancelledReason: type: string cancelledError: type: string required: - metadata - tenantId - jobRunId - stepId - status JobRunStatus: type: string enum: - PENDING - RUNNING - SUCCEEDED - FAILED - CANCELLED - BACKOFF WorkflowRunTriggeredBy: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' parentWorkflowRunId: type: string eventId: type: string cronParentId: type: string cronSchedule: type: string required: - metadata WorkflowMetrics: type: object properties: groupKeyRunsCount: type: integer description: The number of runs for a specific group key (passed via filter) groupKeyCount: type: integer description: The total number of concurrency group keys. StepRunEventReason: type: string enum: - REQUEUED_NO_WORKER - REQUEUED_RATE_LIMIT - SCHEDULING_TIMED_OUT - ASSIGNED - STARTED - ACKNOWLEDGED - FINISHED - FAILED - RETRYING - CANCELLED - TIMEOUT_REFRESHED - REASSIGNED - TIMED_OUT - SLOT_RELEASED - RETRIED_BY_USER - WORKFLOW_RUN_GROUP_KEY_SUCCEEDED - WORKFLOW_RUN_GROUP_KEY_FAILED StepRunEventSeverity: type: string enum: - INFO - WARNING - CRITICAL StepRunEvent: type: object properties: id: type: integer timeFirstSeen: type: string format: date-time timeLastSeen: type: string format: date-time stepRunId: type: string workflowRunId: type: string reason: $ref: '#/components/schemas/StepRunEventReason' severity: $ref: '#/components/schemas/StepRunEventSeverity' message: type: string count: type: integer data: type: object required: - id - timeFirstSeen - timeLastSeen - reason - severity - message - count StepRunEventList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/StepRunEvent' type: array StepRunArchive: type: object properties: stepRunId: type: string order: type: integer input: type: string output: type: string startedAt: type: string format: date-time error: type: string retryCount: type: integer createdAt: type: string format: date-time startedAtEpoch: type: integer finishedAt: type: string format: date-time finishedAtEpoch: type: integer timeoutAt: type: string format: date-time timeoutAtEpoch: type: integer cancelledAt: type: string format: date-time cancelledAtEpoch: type: integer cancelledReason: type: string cancelledError: type: string required: - stepRunId - retryCount - order - createdAt StepRunArchiveList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/StepRunArchive' type: array WorkflowWorkersCount: type: object properties: freeSlotCount: type: integer maxSlotCount: type: integer workflowRunId: type: string required: - count WorkflowKind: type: string enum: - FUNCTION - DURABLE - DAG WorkflowKindList: type: array items: $ref: '#/components/schemas/WorkflowKind' WorkflowRunOrderByField: type: string enum: - createdAt - startedAt - finishedAt - duration WorkflowRunList: type: object properties: rows: type: array items: $ref: '#/components/schemas/WorkflowRun' pagination: $ref: '#/components/schemas/PaginationResponse' ReplayWorkflowRunsRequest: properties: workflowRunIds: type: array maxLength: 500 items: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid required: - workflowRunIds ReplayWorkflowRunsResponse: properties: workflowRuns: type: array items: $ref: '#/components/schemas/WorkflowRun' required: - workflowRuns WorkflowRunsMetricsCounts: type: object properties: PENDING: type: integer RUNNING: type: integer SUCCEEDED: type: integer FAILED: type: integer QUEUED: type: integer CANCELLED: type: integer WorkflowRunsMetrics: type: object properties: counts: type: object $ref: '#/components/schemas/WorkflowRunsMetricsCounts' WorkflowRunShape: type: object properties: metadata: $ref: '#/components/schemas/APIResourceMeta' tenantId: type: string workflowId: type: string workflowVersionId: type: string workflowVersion: $ref: '#/components/schemas/WorkflowVersion' status: $ref: '#/components/schemas/WorkflowRunStatus' displayName: type: string jobRuns: type: array items: $ref: '#/components/schemas/JobRun' triggeredBy: $ref: '#/components/schemas/WorkflowRunTriggeredBy' input: type: object additionalProperties: true error: type: string startedAt: type: string format: date-time finishedAt: type: string format: date-time duration: type: integer example: 1000 parentId: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid parentStepRunId: type: string example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid additionalMetadata: type: object additionalProperties: true required: - metadata - tenantId - workflowVersionId - status - triggeredBy RerunStepRunRequest: properties: input: type: object required: - input WorkerStatus: type: string enum: - ACTIVE - INACTIVE - PAUSED WorkerType: type: string enum: - SELFHOSTED - MANAGED - WEBHOOK RegisteredWorkflow: type: object properties: id: type: string description: The workflow id registered on this worker. format: uuid name: type: string description: The name of the workflow registered on this worker. required: - id - name SemaphoreSlots: properties: stepRunId: type: string description: The step run id. format: uuid actionId: type: string description: The action id. startedAt: type: string description: The time this slot was started. format: date-time timeoutAt: type: string description: The time this slot will timeout. format: date-time workflowRunId: type: string description: The workflow run id. format: uuid status: $ref: '#/components/schemas/StepRunStatus' required: - stepRunId - actionId - workflowRunId RecentStepRuns: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' actionId: type: string description: The action id. status: $ref: '#/components/schemas/StepRunStatus' startedAt: type: string format: date-time finishedAt: type: string format: date-time cancelledAt: type: string format: date-time workflowRunId: type: string format: uuid required: - actionId - metadata - status - workflowRunId type: object WorkerSlotConfig: type: object description: Slot availability and limits for a slot type. properties: available: type: integer description: The number of available units for this slot type. limit: type: integer description: The maximum number of units for this slot type. required: - limit WorkerLabel: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' key: type: string description: The key of the label. value: type: string description: The value of the label. required: - metadata - key type: object WorkerRuntimeSDKs: type: string enum: - GOLANG - PYTHON - TYPESCRIPT - RUBY WorkerRuntimeInfo: properties: sdkVersion: type: string language: $ref: '#/components/schemas/WorkerRuntimeSDKs' languageVersion: type: string os: type: string runtimeExtra: type: string Worker: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the worker. type: $ref: '#/components/schemas/WorkerType' lastHeartbeatAt: type: string description: The time this worker last sent a heartbeat. format: date-time example: '2022-12-13T15:06:48.888358-05:00' lastListenerEstablished: type: string description: The time this worker last sent a heartbeat. format: date-time example: '2022-12-13T15:06:48.888358-05:00' actions: type: array description: The actions this worker can perform. items: type: string registeredWorkflows: type: array description: The workflow ids registered on this worker. items: $ref: '#/components/schemas/RegisteredWorkflow' slots: type: array description: The semaphore slot state for the worker. items: $ref: '#/components/schemas/SemaphoreSlots' recentStepRuns: type: array description: The recent step runs for the worker. items: $ref: '#/components/schemas/RecentStepRuns' status: $ref: '#/components/schemas/WorkerStatus' description: The status of the worker. slotConfig: type: object description: Slot availability and limits for this worker (slot_type -> { available, limit }). additionalProperties: $ref: '#/components/schemas/WorkerSlotConfig' dispatcherId: type: string description: the id of the assigned dispatcher, in UUID format example: bb214807-246e-43a5-a25d-41761d1cff9e minLength: 36 maxLength: 36 format: uuid labels: type: array description: The current label state of the worker. items: $ref: '#/components/schemas/WorkerLabel' webhookUrl: type: string description: The webhook URL for the worker. webhookId: type: string description: The webhook ID for the worker. format: uuid runtimeInfo: $ref: '#/components/schemas/WorkerRuntimeInfo' required: - metadata - name - type type: object WorkerList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/Worker' type: array UpdateWorkerRequest: properties: isPaused: type: boolean description: Whether the worker is paused and cannot accept new runs. type: object WebhookWorker: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the webhook worker. url: type: string description: The webhook url. required: - metadata - name - url type: object WebhookWorkerListResponse: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/WebhookWorker' type: array type: object WebhookWorkerCreateRequest: properties: name: type: string description: The name of the webhook worker. url: type: string description: The webhook url. secret: type: string description: The secret key for validation. If not provided, a random secret will be generated. minLength: 32 required: - name - url type: object WebhookWorkerCreated: properties: metadata: $ref: '#/components/schemas/APIResourceMeta' name: type: string description: The name of the webhook worker. url: type: string description: The webhook url. secret: type: string description: The secret key for validation. required: - metadata - name - url - secret type: object WebhookWorkerRequestMethod: enum: - GET - POST - PUT WebhookWorkerRequest: properties: created_at: type: string format: date-time description: The date and time the request was created. method: $ref: '#/components/schemas/WebhookWorkerRequestMethod' description: The HTTP method used for the request. statusCode: type: integer description: The HTTP status code of the response. required: - created_at - method - statusCode type: object WebhookWorkerRequestListResponse: properties: requests: type: array items: $ref: '#/components/schemas/WebhookWorkerRequest' description: The list of webhook requests. type: object ConcurrencyStat: properties: expression: type: string type: type: string keys: type: object additionalProperties: type: integer format: int64 type: object TaskStatusStat: properties: total: type: integer format: int64 queues: type: object additionalProperties: type: integer format: int64 concurrency: type: array items: $ref: '#/components/schemas/ConcurrencyStat' oldest: type: string format: date-time type: object TaskStat: properties: queued: $ref: '#/components/schemas/TaskStatusStat' running: $ref: '#/components/schemas/TaskStatusStat' type: object TaskStats: type: object additionalProperties: $ref: '#/components/schemas/TaskStat' FeatureFlagId: type: string enum: - tenant-log-workflow-filter-enabled - trace-minimap-enabled - organization-sso-enabled FeatureFlagEvaluationResult: type: object properties: isEnabled: type: boolean description: Whether the feature flag is enabled for the tenant required: - isEnabled TenantList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/Tenant' type: array x-go-name: Rows WorkflowVersionDefinition: type: object properties: rawDefinition: type: string description: The raw YAML definition of the workflow. required: - rawDefinition CreatePullRequestFromStepRun: properties: branchName: type: string required: - branchName StepRunDiff: properties: key: type: string original: type: string modified: type: string required: - key - original - modified GetStepRunDiffResponse: properties: diffs: type: array items: $ref: '#/components/schemas/StepRunDiff' required: - diffs PullRequestState: type: string enum: - open - closed PullRequest: properties: repositoryOwner: type: string repositoryName: type: string pullRequestID: type: integer pullRequestTitle: type: string pullRequestNumber: type: integer pullRequestHeadBranch: type: string pullRequestBaseBranch: type: string pullRequestState: $ref: '#/components/schemas/PullRequestState' required: - repositoryOwner - repositoryName - pullRequestID - pullRequestTitle - pullRequestNumber - pullRequestHeadBranch - pullRequestBaseBranch - pullRequestState ListPullRequestsResponse: properties: pullRequests: type: array items: $ref: '#/components/schemas/PullRequest' required: - pullRequests LogLine: properties: createdAt: type: string format: date-time description: The creation date of the log line. message: type: string description: The log message. metadata: type: object description: The log metadata. required: - createdAt - message - metadata LogLineLevel: type: string enum: - DEBUG - INFO - WARN - ERROR LogLineList: properties: pagination: $ref: '#/components/schemas/PaginationResponse' rows: items: $ref: '#/components/schemas/LogLine' type: array LogLineOrderByField: type: string enum: - createdAt LogLineOrderByDirection: type: string enum: - asc - desc LogLineSearch: type: string LogLineLevelField: type: array items: $ref: '#/components/schemas/LogLineLevel' WebhookWorkerCreateResponse: properties: worker: $ref: '#/components/schemas/WebhookWorkerCreated' type: object V1TaskRunStatus: type: string enum: - PENDING - RUNNING - COMPLETED - FAILED - CANCELLED BulkCreateEventResponse: $ref: '#/components/schemas/Events'