Rapidata Workflow API

The Workflow API from Rapidata — 5 operation(s) for workflow.

OpenAPI Specification

rapidata-workflow-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Rapidata Asset Workflow API
  description: The API for the Rapidata Asset service
  version: v1
servers:
- url: https://api.rapidata.ai/
tags:
- name: Workflow
  x-displayName: Workflow
paths:
  /workflow/{workflowId}:
    delete:
      tags:
      - Workflow
      summary: Deletes a workflow by its id.
      parameters:
      - name: workflowId
        in: path
        description: The ID of the workflow to delete.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
    get:
      tags:
      - Workflow
      summary: Returns the workflow identified by workflowId.
      parameters:
      - name: workflowId
        in: path
        description: Identifier of the workflow to fetch.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkflowByIdEndpoint_Output'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
  /workflow/{workflowId}/compare-ab-summary:
    get:
      tags:
      - Workflow
      summary: Returns the number of times each asset index won across the workflow's rapids.
      parameters:
      - name: workflowId
        in: path
        description: The ID of the workflow to get the summary for.
        required: true
        schema:
          type: string
      - name: useUserScore
        in: query
        description: Whether to use the user score to determine the winner.
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetCompareAbSummaryEndpoint_Output'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
  /workflow/{workflowId}/progress:
    get:
      tags:
      - Workflow
      summary: Gets the progress of a workflow.
      parameters:
      - name: workflowId
        in: path
        description: The ID of the workflow to get the progress for.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkflowProgressEndpoint_Output'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
  /workflow/{workflowId}/responses:
    get:
      tags:
      - Workflow
      summary: Gets the most recent or oldest responses for a workflow, across any rapid.
      parameters:
      - name: workflowId
        in: path
        description: The ID of the workflow to get the responses for.
        required: true
        schema:
          type: string
      - name: limit
        in: query
        description: The maximum number of responses to return.
        schema:
          type: integer
          format: int32
          default: 100
      - name: sort
        in: query
        description: Whether the oldest or most recent responses should be returned.
        schema:
          $ref: '#/components/schemas/SortDirection'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkflowResponsesEndpoint_Output'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
  /workflows:
    get:
      tags:
      - Workflow
      summary: Queries workflows based on the provided filter, page, and sort criteria.
      parameters:
      - name: page
        in: query
        description: The 1-based page index.
        schema:
          type: integer
        x-parameter-group: page
      - name: page_size
        in: query
        description: The number of items per page.
        schema:
          type: integer
        x-parameter-group: page
      - name: sort
        in: query
        description: Sort fields. Prefix with - for descending order (e.g. -created_at).
        schema:
          type: array
          items:
            enum:
            - name
            - -name
            - state
            - -state
            - created_at
            - -created_at
            type: string
        x-parameter-group: sort
      - name: id
        in: query
        description: Filter by id.
        style: deepObject
        explode: true
        schema:
          type: object
          properties:
            eq:
              type: string
            neq:
              type: string
            gt:
              type: string
            gte:
              type: string
            lt:
              type: string
            lte:
              type: string
            contains:
              type: string
            starts_with:
              type: string
            ends_with:
              type: string
            in:
              type: array
              items:
                type: string
            not_contains:
              type: string
        x-parameter-group: filters
      - name: name
        in: query
        description: Filter by name.
        style: deepObject
        explode: true
        schema:
          type: object
          properties:
            eq:
              type: string
            neq:
              type: string
            gt:
              type: string
            gte:
              type: string
            lt:
              type: string
            lte:
              type: string
            contains:
              type: string
            starts_with:
              type: string
            ends_with:
              type: string
            in:
              type: array
              items:
                type: string
            not_contains:
              type: string
        x-parameter-group: filters
      - name: state
        in: query
        description: Filter by state.
        style: deepObject
        explode: true
        schema:
          type: object
          properties:
            eq:
              type: string
            neq:
              type: string
            gt:
              type: string
            gte:
              type: string
            lt:
              type: string
            lte:
              type: string
            contains:
              type: string
            starts_with:
              type: string
            ends_with:
              type: string
            in:
              type: array
              items:
                type: string
            not_contains:
              type: string
        x-parameter-group: filters
      - name: owner_mail
        in: query
        description: Filter by owner_mail.
        style: deepObject
        explode: true
        schema:
          type: object
          properties:
            eq:
              type: string
            neq:
              type: string
            gt:
              type: string
            gte:
              type: string
            lt:
              type: string
            lte:
              type: string
            contains:
              type: string
            starts_with:
              type: string
            ends_with:
              type: string
            in:
              type: array
              items:
                type: string
            not_contains:
              type: string
        x-parameter-group: filters
      - name: logic
        in: query
        description: 'How to combine the field filters: "and" (default) requires every filter to match, "or" requires any of them to match.'
        schema:
          enum:
          - and
          - or
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QueryWorkflowsEndpoint_PagedResultOfOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationProblemDetails'
        '401':
          description: Unauthenticated
        '403':
          description: Forbidden
      security:
      - OpenIdConnect:
        - openid
        - profile
        - email
        - offline_access
components:
  schemas:
    IWorkflowModelSimpleWorkflowModel:
      required:
      - id
      - state
      - blueprint
      - referee
      - name
      - ownerMail
      - _t
      properties:
        _t:
          enum:
          - SimpleWorkflowModel
          type: string
        id:
          type: string
        state:
          $ref: '#/components/schemas/WorkflowStateModel'
        blueprint:
          $ref: '#/components/schemas/IWorkflowRapidBlueprintModel'
        referee:
          $ref: '#/components/schemas/IRefereeConfigModel'
        name:
          type: string
        ownerMail:
          type: string
          nullable: true
    IRankingConfigModelBradleyTerryRankingConfigModel:
      required:
      - startingScore
      - _t
      properties:
        _t:
          enum:
          - BradleyTerryRankingConfig
          type: string
        startingScore:
          type: integer
          format: int32
    IMetadataModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IMetadataModelClassificationMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelCountMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelFileTypeMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelImageDimensionMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelLocationMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelOriginalFilenameMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelSourceUrlMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelStreamsMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelTextMetadataModel'
      - $ref: '#/components/schemas/IMetadataModelVideoDurationMetadataModel'
      discriminator:
        propertyName: _t
        mapping:
          ClassificationMetadata: '#/components/schemas/IMetadataModelClassificationMetadataModel'
          CountMetadata: '#/components/schemas/IMetadataModelCountMetadataModel'
          FileTypeMetadata: '#/components/schemas/IMetadataModelFileTypeMetadataModel'
          ImageDimensionMetadata: '#/components/schemas/IMetadataModelImageDimensionMetadataModel'
          LocationMetadata: '#/components/schemas/IMetadataModelLocationMetadataModel'
          OriginalFilenameMetadata: '#/components/schemas/IMetadataModelOriginalFilenameMetadataModel'
          SourceUrlMetadataModel: '#/components/schemas/IMetadataModelSourceUrlMetadataModel'
          StreamsMetadata: '#/components/schemas/IMetadataModelStreamsMetadataModel'
          TextMetadata: '#/components/schemas/IMetadataModelTextMetadataModel'
          VideoDurationMetadata: '#/components/schemas/IMetadataModelVideoDurationMetadataModel'
    IMetadataModelFileTypeMetadataModel:
      required:
      - fileType
      - _t
      properties:
        _t:
          enum:
          - FileTypeMetadata
          type: string
        fileType:
          $ref: '#/components/schemas/FileType'
    NamedClassification:
      required:
      - classification
      type: object
      properties:
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        classification:
          type: string
    IRefereeConfigModelNeverEndingRefereeConfigModel:
      required:
      - _t
      properties:
        _t:
          enum:
          - NeverEndingRefereeConfig
          type: string
    BoxShape:
      type: object
      properties:
        xMin:
          type: number
          format: double
          nullable: true
        yMin:
          type: number
          format: double
          nullable: true
        xMax:
          type: number
          format: double
          nullable: true
        yMax:
          type: number
          format: double
          nullable: true
    IAssetModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IAssetModelFileAssetModel'
      - $ref: '#/components/schemas/IAssetModelMultiAssetModel'
      - $ref: '#/components/schemas/IAssetModelNullAssetModel'
      - $ref: '#/components/schemas/IAssetModelTextAssetModel'
      discriminator:
        propertyName: _t
        mapping:
          FileAsset: '#/components/schemas/IAssetModelFileAssetModel'
          MultiAsset: '#/components/schemas/IAssetModelMultiAssetModel'
          NullAsset: '#/components/schemas/IAssetModelNullAssetModel'
          TextAsset: '#/components/schemas/IAssetModelTextAssetModel'
    IRapidResult:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IRapidResultAttachCategoryResult'
      - $ref: '#/components/schemas/IRapidResultBoundingBoxResult'
      - $ref: '#/components/schemas/IRapidResultCompareResult'
      - $ref: '#/components/schemas/IRapidResultFreeTextResult'
      - $ref: '#/components/schemas/IRapidResultLineResult'
      - $ref: '#/components/schemas/IRapidResultLocateResult'
      - $ref: '#/components/schemas/IRapidResultNamedEntityResult'
      - $ref: '#/components/schemas/IRapidResultPolygonResult'
      - $ref: '#/components/schemas/IRapidResultScrubResult'
      - $ref: '#/components/schemas/IRapidResultSkipResult'
      - $ref: '#/components/schemas/IRapidResultTranscriptionResult'
      discriminator:
        propertyName: _t
        mapping:
          AttachCategoryResult: '#/components/schemas/IRapidResultAttachCategoryResult'
          BoundingBoxResult: '#/components/schemas/IRapidResultBoundingBoxResult'
          CompareResult: '#/components/schemas/IRapidResultCompareResult'
          FreeTextResult: '#/components/schemas/IRapidResultFreeTextResult'
          LineResult: '#/components/schemas/IRapidResultLineResult'
          LocateResult: '#/components/schemas/IRapidResultLocateResult'
          NamedEntityResult: '#/components/schemas/IRapidResultNamedEntityResult'
          PolygonResult: '#/components/schemas/IRapidResultPolygonResult'
          ScrubResult: '#/components/schemas/IRapidResultScrubResult'
          SkipResult: '#/components/schemas/IRapidResultSkipResult'
          TranscriptionResult: '#/components/schemas/IRapidResultTranscriptionResult'
    IRefereeConfigModelProbabilisticAttachCategoryRefereeConfigModel:
      required:
      - threshold
      - maxVotes
      - _t
      properties:
        _t:
          enum:
          - ProbabilisticAttachCategoryRefereeConfig
          type: string
        threshold:
          type: number
          format: double
        maxVotes:
          type: integer
          format: int32
    FileType:
      enum:
      - Unknown
      - Image
      - Video
      - Audio
    IRefereeConfigModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IRefereeConfigModelBudgetRefereeConfigModel'
      - $ref: '#/components/schemas/IRefereeConfigModelNaiveRefereeConfigModel'
      - $ref: '#/components/schemas/IRefereeConfigModelNeverEndingRefereeConfigModel'
      - $ref: '#/components/schemas/IRefereeConfigModelProbabilisticAttachCategoryRefereeConfigModel'
      - $ref: '#/components/schemas/IRefereeConfigModelQuorumRefereeConfigModel'
      discriminator:
        propertyName: _t
        mapping:
          BudgetRefereeConfig: '#/components/schemas/IRefereeConfigModelBudgetRefereeConfigModel'
          NaiveRefereeConfig: '#/components/schemas/IRefereeConfigModelNaiveRefereeConfigModel'
          NeverEndingRefereeConfig: '#/components/schemas/IRefereeConfigModelNeverEndingRefereeConfigModel'
          ProbabilisticAttachCategoryRefereeConfig: '#/components/schemas/IRefereeConfigModelProbabilisticAttachCategoryRefereeConfigModel'
          QuorumRefereeConfig: '#/components/schemas/IRefereeConfigModelQuorumRefereeConfigModel'
    IRankingConfigModelEloConfigModel:
      required:
      - startingScore
      - kFactor
      - scalingFactor
      - _t
      properties:
        _t:
          enum:
          - EloConfig
          type: string
        startingScore:
          type: integer
          format: int32
        kFactor:
          type: integer
          format: int32
        scalingFactor:
          type: integer
          format: int32
    IWorkflowRapidBlueprintModelFreeTextWorkflowRapidBlueprintModel:
      required:
      - question
      - shouldValidateResponse
      - _t
      properties:
        _t:
          enum:
          - FreeTextBlueprint
          type: string
        question:
          type: string
        shouldValidateResponse:
          type: boolean
        validationSystemPrompt:
          type: string
          nullable: true
    GetWorkflowByIdEndpoint_Output:
      required:
      - workflow
      type: object
      properties:
        workflow:
          allOf:
          - $ref: '#/components/schemas/IWorkflowModel'
          description: The workflow.
    PolygonCoordinate:
      type: object
      properties:
        x:
          type: number
          format: double
          nullable: true
        y:
          type: number
          format: double
          nullable: true
    IRapidResultAttachCategoryResult:
      required:
      - category
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - AttachCategoryResult
          type: string
        category:
          type: string
        rapidId:
          type: string
    IRefereeConfigModelBudgetRefereeConfigModel:
      required:
      - totalBudget
      - _t
      properties:
        _t:
          enum:
          - BudgetRefereeConfig
          type: string
        totalBudget:
          type: integer
          format: int32
        totalServeBudget:
          type: integer
          format: int32
          nullable: true
    MetadataModelCollection:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/IMetadataModel'
    IRapidResultLocateResult:
      required:
      - coordinates
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - LocateResult
          type: string
        coordinates:
          type: array
          items:
            $ref: '#/components/schemas/LocateCoordinate'
        rapidId:
          type: string
    IAssetModelNullAssetModel:
      required:
      - metadata
      - identifier
      - _t
      properties:
        _t:
          enum:
          - NullAsset
          type: string
        metadata:
          $ref: '#/components/schemas/MetadataModelCollection'
        identifier:
          type: string
    WorkflowStateModel:
      enum:
      - Created
      - Started
      - Labeling
      - Paused
      - Done
      - Failed
    LocateCoordinate:
      type: object
      properties:
        x:
          type: number
          format: double
        y:
          type: number
          format: double
    IMetadataModelVideoDurationMetadataModel:
      required:
      - duration
      - _t
      properties:
        _t:
          enum:
          - VideoDurationMetadata
          type: string
        duration:
          type: string
          format: date-time
    IRapidResultScrubResult:
      required:
      - timestamps
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - ScrubResult
          type: string
        timestamps:
          type: array
          items:
            type: integer
            format: int32
        rapidId:
          type: string
    IWorkflowModelEvaluationWorkflowModel:
      required:
      - id
      - validationSetId
      - state
      - referee
      - name
      - ownerMail
      - _t
      properties:
        _t:
          enum:
          - EvaluationWorkflow
          type: string
        id:
          type: string
        validationSetId:
          type: string
        state:
          $ref: '#/components/schemas/WorkflowStateModel'
        referee:
          $ref: '#/components/schemas/IRefereeConfigModel'
        name:
          type: string
        ownerMail:
          type: string
          nullable: true
    GetWorkflowResponsesEndpoint_Response:
      required:
      - id
      - userId
      - country
      - language
      - result
      - userScore
      - userScores
      - demographicInformation
      type: object
      properties:
        id:
          type: string
        userId:
          type: string
        country:
          type: string
        language:
          type: string
        result:
          $ref: '#/components/schemas/IRapidResult'
        userScore:
          type: number
          format: double
        userScores:
          type: object
          additionalProperties:
            type: number
            format: double
        demographicInformation:
          type: object
          additionalProperties:
            type: string
    TranscriptionWord:
      required:
      - word
      type: object
      properties:
        word:
          type: string
        wordIndex:
          type: integer
          format: int32
    IMetadataModelOriginalFilenameMetadataModel:
      required:
      - originalFilename
      - _t
      properties:
        _t:
          enum:
          - OriginalFilenameMetadata
          type: string
        originalFilename:
          type: string
    PolygonShape:
      required:
      - edges
      type: object
      properties:
        edges:
          type: array
          items:
            $ref: '#/components/schemas/PolygonCoordinate'
    IWorkflowModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IWorkflowModelEvaluationWorkflowModel'
      - $ref: '#/components/schemas/IWorkflowModelGroupedRankingWorkflowModel'
      - $ref: '#/components/schemas/IWorkflowModelRankingWorkflowModel'
      - $ref: '#/components/schemas/IWorkflowModelSimpleWorkflowModel'
      discriminator:
        propertyName: _t
        mapping:
          EvaluationWorkflow: '#/components/schemas/IWorkflowModelEvaluationWorkflowModel'
          GroupedRankingWorkflowModel: '#/components/schemas/IWorkflowModelGroupedRankingWorkflowModel'
          RankingWorkflowModel: '#/components/schemas/IWorkflowModelRankingWorkflowModel'
          SimpleWorkflowModel: '#/components/schemas/IWorkflowModelSimpleWorkflowModel'
    IRapidResultFreeTextResult:
      required:
      - answer
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - FreeTextResult
          type: string
        answer:
          type: string
        rapidId:
          type: string
    IWorkflowRapidBlueprintModelCompareWorkflowRapidBlueprintModel:
      required:
      - criteria
      - indexIdentifiers
      - _t
      properties:
        _t:
          enum:
          - CompareBlueprint
          type: string
        criteria:
          type: string
        indexIdentifiers:
          type: array
          items:
            type: string
    IWorkflowRapidBlueprintModelTranscriptionWorkflowRapidBlueprintModel:
      required:
      - title
      - _t
      properties:
        _t:
          enum:
          - TranscriptionBlueprint
          type: string
        title:
          type: string
    IMetadataModelLocationMetadataModel:
      required:
      - x
      - y
      - _t
      properties:
        _t:
          enum:
          - LocationMetadata
          type: string
        x:
          type: number
          format: float
        y:
          type: number
          format: float
    IWorkflowRapidBlueprintModelAttachCategoryWorkflowRapidBlueprintModel:
      required:
      - categories
      - title
      - _t
      properties:
        _t:
          enum:
          - ClassifyBlueprint
          type: string
        categories:
          type: array
          items:
            $ref: '#/components/schemas/AttachCategoryWorkflowRapidBlueprintModel_Category'
        title:
          type: string
    IWorkflowRapidBlueprintModelNamedEntityWorkflowRapidBlueprintModel:
      required:
      - target
      - classes
      - _t
      properties:
        _t:
          enum:
          - NamedEntityBlueprint
          type: string
        target:
          type: string
        classes:
          type: array
          items:
            type: string
    QueryWorkflowsEndpoint_PagedResultOfOutput:
      required:
      - total
      - page
      - pageSize
      - items
      type: object
      properties:
        total:
          type: integer
          format: int64
        page:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        items:
          type: array
          items:
            $ref: '#/components/schemas/QueryWorkflowsEndpoint_Output'
        totalPages:
          type: integer
          format: int32
    IRapidResultTranscriptionResult:
      required:
      - selectedWords
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - TranscriptionResult
          type: string
        selectedWords:
          type: array
          items:
            $ref: '#/components/schemas/TranscriptionWord'
        rapidId:
          type: string
    IMetadataModelClassificationMetadataModel:
      required:
      - classification
      - _t
      properties:
        _t:
          enum:
          - ClassificationMetadata
          type: string
        classification:
          type: string
    IRapidResultLineResult:
      required:
      - lines
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - LineResult
          type: string
        lines:
          type: array
          items:
            $ref: '#/components/schemas/Line'
        rapidId:
          type: string
    IMetadataModelTextMetadataModel:
      required:
      - text
      - _t
      properties:
        _t:
          enum:
          - TextMetadata
          type: string
        text:
          type: string
          nullable: true
    IWorkflowModelRankingWorkflowModel:
      required:
      - id
      - referee
      - pairMakerInformation
      - state
      - criteria
      - name
      - context
      - contextAsset
      - ownerMail
      - _t
      properties:
        _t:
          enum:
          - RankingWorkflowModel
          type: string
        id:
          type: string
        referee:
          $ref: '#/components/schemas/IRefereeConfigModel'
        pairMakerInformation:
          $ref: '#/components/schemas/IPairMakerInformationModel'
        state:
          $ref: '#/components/schemas/WorkflowStateModel'
        criteria:
          type: string
        name:
          type: string
        rankingConfig:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IRankingConfigModel'
          nullable: true
        context:
          type: string
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        ownerMail:
          type: string
          nullable: true
    IMetadataModelStreamsMetadataModel:
      required:
      - hasVideo
      - hasAudio
      - hasSubtitles
      - _t
      properties:
        _t:
          enum:
          - StreamsMetadata
          type: string
        hasVideo:
          type: boolean
        hasAudio:
          type: boolean
        hasSubtitles:
          type: boolean
    ValidationProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
    IRapidResultCompareResult:
      required:
      - winners
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - CompareResult
          type: string
        winners:
          type: array
          items:
            type: string
        rapidId:
          type: string
    GetWorkflowProgressEndpoint_Output:
      required:
      - completionPercentage
      - total
      - completed
      - state
      type: object
      properties:
        completionPercentage:
          type: number
          description: The percentage of workflow datapoints that have been completed.
          format: double
        total:
          type: integer
          description: The total number of datapoints in the workflow.
          format: int64
        completed:
          type: integer
          description: The number of datapoints that have been completed.
          format: int64
        state:
          allOf:
          - $ref: '#/components/schemas/WorkflowState'
          description: The current state of the workflow.
    Line:
      required:
      - points
      type: object
      properties:
        size:
          type: number
          format: double
        points:
          type: array
          items:
            $ref: '#/components/schemas/LinePoint'
    SortDirection:
      enum:
      - Asc
      - Desc
    IPairMakerInformationModelOnlinePairMakerInformationModel:
      required:
      - randomMatchesRatio
      - totalComparisonBudget
      - currentComparisonBudget
      - _t
      properties:
        _t:
          enum:
          - OnlinePairMakerInformation
          type: string
        randomMatchesRatio:
          type: number
          format: float
        totalComparisonBudget:
          type: integer
          format: int32
        currentComparisonBudget:
          type: integer
          format: int32
    IWorkflowRapidBlueprintModelBoundingBoxWorkflowRapidBlueprintModel:
      required:
      - target
      - _t
      properties:
        _t:
          enum:
          - BoundingBoxBlueprint
          type: string
        target:
          type: string
    IWorkflowRapidBlueprintModelPolygonWorkflowRapidBlueprintModel:
      required:
      - target
      - _t
      properties:
        _t:
          enum:
          - PolygonBlueprint
          type: string
        target:
          type: string
    IWorkflowModelGroupedRankingWorkflowModel:
      required:
      - id
      - referee
      - state
      - criteria
      - name
      - ownerMail
      - _t
      properties:
        _t:
          enum:
          - GroupedRankingWorkflowModel
       

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