Prefect SLAs API

The SLAs API from Prefect — 9 operation(s) for slas.

Operations 12

POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/ Create Sla #
POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/apply-resource-slas/{resource_id} Apply Slas #
POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/filter Read Slas #
POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/by-owner/{owner_resource} Read Slas By Owner Resource #
GET /api/accounts/{account_id}/workspaces/{workspace_id}/slas/{sla_id} Read Sla #
PATCH /api/accounts/{account_id}/workspaces/{workspace_id}/slas/{sla_id} Update Sla #
DELETE /api/accounts/{account_id}/workspaces/{workspace_id}/slas/{sla_id} Delete Sla #
POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/flow-runs Read Flow Runs #
POST /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default Create Default Sla #
GET /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default/list Read Default Sla List #
GET /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default/{sla_severity} Read Default Sla #
DELETE /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default/{sla_severity} Delete Default Sla #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/prefect-slas-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

prefect-slas-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Prefect Cloud Account Billing SL As API
  description: Prefect Cloud REST API documentation.
  version: 0.8.4
tags:
- name: SLAs
paths:
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/:
    post:
      tags:
      - SLAs
      summary: Create Sla
      operationId: create_sla_api_accounts__account_id__workspaces__workspace_id__slas__post
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
              - $ref: '#/components/schemas/TimeToCompletionSla'
              - $ref: '#/components/schemas/FrequencySla'
              - $ref: '#/components/schemas/FreshnessSla'
              - $ref: '#/components/schemas/LatenessSla'
              title: Sla
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceLevelAgreement'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/apply-resource-slas/{resource_id}:
    post:
      tags:
      - SLAs
      summary: Apply Slas
      operationId: apply_slas_api_accounts__account_id__workspaces__workspace_id__slas_apply_resource_slas__resource_id__post
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: resource_id
        in: path
        required: true
        schema:
          type: string
          title: Resource Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                anyOf:
                - $ref: '#/components/schemas/TimeToCompletionSla'
                - $ref: '#/components/schemas/FrequencySla'
                - $ref: '#/components/schemas/FreshnessSla'
                - $ref: '#/components/schemas/LatenessSla'
              title: Slas
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/ServiceLevelAgreement'
                title: Response Apply Slas Api Accounts  Account Id  Workspaces  Workspace Id  Slas Apply Resource Slas  Resource Id  Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/filter:
    post:
      tags:
      - SLAs
      summary: Read Slas
      operationId: read_slas_api_accounts__account_id__workspaces__workspace_id__slas_filter_post
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: sort
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/SlaSort'
          default: NAME_ASC
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Body_read_slas_api_accounts__account_id__workspaces__workspace_id__slas_filter_post'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceLevelAgreement'
                title: Response Read Slas Api Accounts  Account Id  Workspaces  Workspace Id  Slas Filter Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/by-owner/{owner_resource}:
    post:
      tags:
      - SLAs
      summary: Read Slas By Owner Resource
      operationId: read_slas_by_owner_resource_api_accounts__account_id__workspaces__workspace_id__slas_by_owner__owner_resource__post
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Workspace Id
      - name: owner_resource
        in: path
        required: true
        schema:
          type: string
          title: Owner Resource
      - name: sort
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/SlaSort'
          default: NAME_ASC
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Body_read_slas_by_owner_resource_api_accounts__account_id__workspaces__workspace_id__slas_by_owner__owner_resource__post'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceLevelAgreement'
                title: Response Read Slas By Owner Resource Api Accounts  Account Id  Workspaces  Workspace Id  Slas By Owner  Owner Resource  Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/{sla_id}:
    get:
      tags:
      - SLAs
      summary: Read Sla
      operationId: read_sla_api_accounts__account_id__workspaces__workspace_id__slas__sla_id__get
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: sla_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Sla Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceLevelAgreement'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    patch:
      tags:
      - SLAs
      summary: Update Sla
      operationId: update_sla_api_accounts__account_id__workspaces__workspace_id__slas__sla_id__patch
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: sla_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Sla Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceLevelAgreementPartialUpdate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: boolean
                title: Response Update Sla Api Accounts  Account Id  Workspaces  Workspace Id  Slas  Sla Id  Patch
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - SLAs
      summary: Delete Sla
      operationId: delete_sla_api_accounts__account_id__workspaces__workspace_id__slas__sla_id__delete
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: sla_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Sla Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: boolean
                title: Response Delete Sla Api Accounts  Account Id  Workspaces  Workspace Id  Slas  Sla Id  Delete
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/flow-runs:
    post:
      tags:
      - SLAs
      summary: Read Flow Runs
      description: "Read all flow runs that have an SLA violation event within the given horizon.\n\nArgs:\n    sla_ids (list[UUID]): The IDs of the SLAs to read flow runs for.\n    since (datetime): The date to read flow runs since.\n    workspace_id (UUID, optional): The ID of the workspace to read flow runs for. Defaults to Path(...).\n    account_id (UUID, optional): The ID of the account to read flow runs for. Defaults to Path(...).\n    client (AsyncClient, optional): The ClickHouse client to use. Defaults to Depends(clickhouse_client).\n\nReturns:\n    Sequence[str]: _description_"
      operationId: read_flow_runs_api_accounts__account_id__workspaces__workspace_id__slas_flow_runs_post
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Workspace Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Body_read_flow_runs_api_accounts__account_id__workspaces__workspace_id__slas_flow_runs_post'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                title: Response Read Flow Runs Api Accounts  Account Id  Workspaces  Workspace Id  Slas Flow Runs Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default:
    post:
      tags:
      - SLAs
      summary: Create Default Sla
      operationId: create_default_sla_api_accounts__account_id__workspaces__workspace_id__slas_default_post
      parameters:
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Workspace Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Body_create_default_sla_api_accounts__account_id__workspaces__workspace_id__slas_default_post'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Automation'
                title: Response Create Default Sla Api Accounts  Account Id  Workspaces  Workspace Id  Slas Default Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default/list:
    get:
      tags:
      - SLAs
      summary: Read Default Sla List
      operationId: read_default_sla_list_api_accounts__account_id__workspaces__workspace_id__slas_default_list_get
      parameters:
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Workspace Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Automation'
                title: Response Read Default Sla List Api Accounts  Account Id  Workspaces  Workspace Id  Slas Default List Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/accounts/{account_id}/workspaces/{workspace_id}/slas/default/{sla_severity}:
    get:
      tags:
      - SLAs
      summary: Read Default Sla
      operationId: read_default_sla_api_accounts__account_id__workspaces__workspace_id__slas_default__sla_severity__get
      parameters:
      - name: sla_severity
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/SlaSeverity'
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Workspace Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Automation'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - SLAs
      summary: Delete Default Sla
      operationId: delete_default_sla_api_accounts__account_id__workspaces__workspace_id__slas_default__sla_severity__delete
      parameters:
      - name: sla_severity
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/SlaSeverity'
      - name: workspace_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Workspace Id
      - name: account_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Account Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    PauseAutomation:
      properties:
        type:
          type: string
          const: pause-automation
          title: Type
          default: pause-automation
        source:
          type: string
          enum:
          - selected
          - inferred
          title: Source
          description: Whether this Action applies to a specific selected automation (given by `automation_id`), or to an automation that is inferred from the triggering event.  If the source is 'inferred', the `automation_id` may not be set.  If the source is 'selected', the `automation_id` must be set.
          default: selected
        automation_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Automation Id
          description: The identifier of the automation to act on
      type: object
      title: PauseAutomation
      description: Pauses a Work Queue
    ResumeSchedule:
      properties:
        type:
          type: string
          const: resume-schedule-for-flow-run
          title: Type
          default: resume-schedule-for-flow-run
        deployment_id:
          type: string
          format: uuid
          title: Deployment Id
          description: The identifier of the deployment
        schedule_id:
          type: string
          format: uuid
          title: Schedule Id
          description: The identifier of the schedule
      type: object
      required:
      - deployment_id
      - schedule_id
      title: ResumeSchedule
      description: Resumes the given schedule
    ResourceSpecification:
      additionalProperties:
        anyOf:
        - type: string
        - items:
            type: string
          type: array
      type: object
      title: ResourceSpecification
      description: 'A specification that may match zero, one, or many resources, used to target or

        select a set of resources in a query or automation.  A resource must match at least

        one value of all of the provided labels'
    ResumeWorkPool:
      properties:
        type:
          type: string
          const: resume-work-pool
          title: Type
          default: resume-work-pool
        source:
          type: string
          enum:
          - selected
          - inferred
          title: Source
          description: Whether this Action applies to a specific selected work pool (given by `work_pool_id`), or to a work pool that is inferred from the triggering event.  If the source is 'inferred', the `work_pool_id` may not be set.  If the source is 'selected', the `work_pool_id` must be set.
          default: selected
        work_pool_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Work Pool Id
          description: The identifier of the work pool to pause
      type: object
      title: ResumeWorkPool
      description: Resumes a Work Pool
    ResumeAutomation:
      properties:
        type:
          type: string
          const: resume-automation
          title: Type
          default: resume-automation
        source:
          type: string
          enum:
          - selected
          - inferred
          title: Source
          description: Whether this Action applies to a specific selected automation (given by `automation_id`), or to an automation that is inferred from the triggering event.  If the source is 'inferred', the `automation_id` may not be set.  If the source is 'selected', the `automation_id` must be set.
          default: selected
        automation_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Automation Id
          description: The identifier of the automation to act on
      type: object
      title: ResumeAutomation
      description: Resumes a Work Queue
    SuspendFlowRun:
      properties:
        type:
          type: string
          const: suspend-flow-run
          title: Type
          default: suspend-flow-run
        force:
          type: boolean
          title: Force
          description: Force the state change, bypassing orchestration rules
          default: false
      type: object
      title: SuspendFlowRun
      description: Suspends a flow run associated with the trigger
    StateType:
      type: string
      enum:
      - SCHEDULED
      - PENDING
      - RUNNING
      - COMPLETED
      - FAILED
      - CANCELLED
      - CRASHED
      - PAUSED
      - CANCELLING
      title: StateType
      description: Enumeration of state types.
    DeclareIncident:
      properties:
        type:
          type: string
          const: declare-incident
          title: Type
          default: declare-incident
      type: object
      title: DeclareIncident
      description: Declares an incident for the triggering event
    CallWebhook:
      properties:
        type:
          type: string
          const: call-webhook
          title: Type
          default: call-webhook
        block_document_id:
          type: string
          format: uuid
          title: Block Document Id
          description: The identifier of the webhook block to use
        payload:
          type: string
          title: Payload
          description: An optional templatable payload to send when calling the webhook.
          default: ''
      type: object
      required:
      - block_document_id
      title: CallWebhook
      description: Call a webhook when an Automation is triggered.
    TimeToCompletionSla:
      properties:
        name:
          type: string
          maxLength: 5000
          title: Name
          description: The name of this SLA
        severity:
          $ref: '#/components/schemas/SlaSeverity'
          description: The severity of the SLA
          default: high
        enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Enabled
          description: Whether this SLA will be evaluated
        owner_resource:
          anyOf:
          - type: string
            maxLength: 5000
          - type: 'null'
          title: Owner Resource
          description: The resource that owns this SLA
        duration:
          type: integer
          title: Duration
          description: The maximum flow run duration in seconds allowed before the SLA is violated.
      additionalProperties: false
      type: object
      required:
      - name
      - duration
      title: TimeToCompletionSla
      description: An SLA that triggers when a flow run takes longer than the specified duration.
    SlaFilter:
      properties:
        operator:
          $ref: '#/components/schemas/prefect_cloud__orion__schemas__filters__Operator'
          description: Operator for combining filter criteria. Defaults to 'and_'.
          default: and_
        name:
          anyOf:
          - $ref: '#/components/schemas/AutomationFilterName'
          - type: 'null'
          description: Filter criteria for `Automation.name`
        created:
          anyOf:
          - $ref: '#/components/schemas/AutomationFilterCreated'
          - type: 'null'
          description: Filter criteria for `Automation.created`
        tags:
          anyOf:
          - $ref: '#/components/schemas/AutomationFilterTags'
          - type: 'null'
          description: Filter criteria for `Automation.tags`
        severity:
          anyOf:
          - type: string
          - type: 'null'
          title: Severity
          description: Filter criteria for `Automation.severity`
      additionalProperties: false
      type: object
      title: SlaFilter
    AutomationFilterCreated:
      properties:
        before_:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Before
          description: Only include automations created before this datetime
      additionalProperties: false
      type: object
      title: AutomationFilterCreated
      description: Filter by `Automatio.created`.
    ChangeFlowRunState:
      properties:
        type:
          type: string
          const: change-flow-run-state
          title: Type
          default: change-flow-run-state
        force:
          type: boolean
          title: Force
          description: Force the state change, bypassing orchestration rules
          default: false
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
          description: The name of the state to change the flow run to
        state:
          $ref: '#/components/schemas/StateType'
          description: The type of the state to change the flow run to
        message:
          anyOf:
          - type: string
          - type: 'null'
          title: Message
          description: An optional message to associate with the state change
      type: object
      required:
      - state
      title: ChangeFlowRunState
      description: Changes the state of a flow run associated with the trigger
    MetricTriggerOperator:
      type: string
      enum:
      - <
      - <=
      - '>'
      - '>='
      title: MetricTriggerOperator
    PauseWorkQueue:
      properties:
        type:
          type: string
          const: pause-work-queue
          title: Type
          default: pause-work-queue
        source:
          type: string
          enum:
          - selected
          - inferred
          title: Source
          description: Whether this Action applies to a specific selected work queue (given by `work_queue_id`), or to a work queue that is inferred from the triggering event.  If the source is 'inferred', the `work_queue_id` may not be set.  If the source is 'selected', the `work_queue_id` must be set.
          default: selected
        work_queue_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Work Queue Id
          description: The identifier of the work queue to pause
      type: object
      title: PauseWorkQueue
      description: Pauses a Work Queue
    CancelFlowRun:
      properties:
        type:
          type: string
          const: cancel-flow-run
          title: Type
          default: cancel-flow-run
        force:
          type: boolean
          title: Force
          description: Force the state change, bypassing orchestration rules
          default: false
      type: object
      title: CancelFlowRun
      description: Cancels a flow run associated with the trigger
    PauseWorkPool:
      properties:
        type:
          type: string
          const: pause-work-pool
          title: Type
          default: pause-work-pool
        source:
          type: string
          enum:
          - selected
          - inferred
          title: Source
          description: Whether this Action applies to a specific selected work pool (given by `work_pool_id`), or to a work pool that is inferred from the triggering event.  If the source is 'inferred', the `work_pool_id` may not be set.  If the source is 'selected', the `work_pool_id` must be set.
          default: selected
        work_pool_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Work Pool Id
          description: The identifier of the work pool to pause
      type: object
      title: PauseWorkPool
      description: Pauses a Work Pool
    EventTrigger:
      properties:
        type:
          type: string
          const: event
          title: Type
          default: event
        id:
          type: string
          format: uuid
          title: Id
          description: The unique ID of this trigger
        match:
          anyOf:
          - $ref: '#/components/schemas/ResourceSpecification'
          - additionalProperties:
              anyOf:
              - type: string
              - items:
                  type: string
                type: array
            type: object
          title: Match
          description: Labels for resources which this trigger will match.
        match_related:
          anyOf:
          - $ref: '#/components/schemas/ResourceSpecification'
          - additionalProperties:
              anyOf:
              - type: string
              - items:
                  type: string
                type: array
            type: object
          - items:
              anyOf:
              - $ref: '#/components/schemas/ResourceSpecification'
              - additionalProperties:
                  anyOf:
                  - type: string
                  - items:
                      type: string
                    type: array
                type: object
            type: array
          title: Match Related
          description: Labels for related resources which this trigger will match.
        after:
          items:
            type: string
          type: array
          uniqueItems: true
          title: After
          description: The event(s) which must first been seen to fire this trigger.  If empty, then fire this trigger immediately.  Events may include trailing wildcards, like `prefect.flow-run.*`
        expect:
          items:
            type: string
          type: array
          uniqueItems: true
          title: Expect
          description: The event(s) this trigger is expecting to see.  If empty, this trigger will match any event.  Events may include trailing wildcards, like `prefect.flow-run.*`
        for_each:
          items:
            type: string
          type: array
          uniqueItems: true
          title: For Each
          description: 'Evaluate the trigger separately for each distinct value of these labels on the resource.  By default, labels refer to the primary resource of the triggering event.  You may also refer to labels from related resources by specifying `related:<role>:<label>`.  This will use the value of that label for the first related resource in that role.  For example, `"for_each": ["related:flow:prefect.resource.id"]` would evaluate the trigger for each flow.'
        posture:
          type: string
          enum:
          - Reactive
          - Proactive
          title: Posture
          description: The posture of this trigger, either Reactive or Proactive.  Reactive triggers respond to the _presence_ of the expected events, while Proactive triggers respond to the _absence_ of those expected events.
        threshold:
          type: integer
          title: Threshold
          description: The number of events required for this trigger to fire (for Reactive triggers), or the number of events expected (for Proactive triggers)
          default: 1
        within:
          type: number
          title: Within
          description: The time period over which the events must occur.  For Reactive triggers, this may be as low as 0 seconds, but must be at least 10 seconds for Proactive triggers
          default: 0.0
      type: object
      required:
      - posture
      title: EventTrigger
      description: 'A trigger that fires based on the presence or absence of events within a given

        period of time.'
    SlaSort:
      type: string
      enum:
      - CREATED_DESC
      - UPDATED_DESC
      - NAME_ASC
      - NAME_DESC
      title: SlaSort
      description: Defines SLAs sorting options.
    ResumeWorkQueue:
      properties:
        type:
          type: string
          const: resume-work-queue
          title: Type
          default: resume-work-queue
        source:
          type: string
          e

# --- truncated at 32 KB (70 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/prefect/refs/heads/main/openapi/prefect-slas-api-openapi.yml