Rapidata UserRapid API

The UserRapid API from Rapidata — 5 operation(s) for userrapid.

OpenAPI Specification

rapidata-userrapid-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Rapidata Asset UserRapid API
  description: The API for the Rapidata Asset service
  version: v1
servers:
- url: https://api.rapidata.ai/
tags:
- name: UserRapid
  x-displayName: UserRapid
paths:
  /rapid/response:
    post:
      tags:
      - UserRapid
      summary: Submits a response for a rapid.
      requestBody:
        description: The submitted result and session index.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUserResponseEndpoint_Input'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddUserResponseEndpoint_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
  /rapid/report/{reportId}:
    get:
      tags:
      - UserRapid
      summary: Inspects a report's dump so that it can be replayed or restored.
      parameters:
      - name: reportId
        in: path
        description: The id of the report to inspect.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InspectReportEndpoint_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
  /rapid/rapid-bag/is-valid:
    get:
      tags:
      - UserRapid
      summary: Returns whether the rapid bag associated with the current user is still valid.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IsRapidBagValidEndpoint_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
  /rapid/{rapidId}/report:
    post:
      tags:
      - UserRapid
      summary: Reports an issue with a rapid.
      parameters:
      - name: rapidId
        in: path
        description: The rapid to report.
        required: true
        schema:
          type: string
      requestBody:
        description: The report payload.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReportRapidEndpoint_Input'
        required: true
      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
  /rapid/skip:
    post:
      tags:
      - UserRapid
      summary: Records that the user skipped the specified rapid.
      requestBody:
        description: The id of the rapid being skipped and the session index.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SkipRapidEndpoint_Input'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SkipRapidEndpoint_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
components:
  schemas:
    IRapidModelBoundingBoxRapidModel:
      required:
      - target
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - BoundingBoxRapidModel
          type: string
        target:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    TranscriptionResultModel_TranscriptionWord:
      required:
      - word
      - wordIndex
      type: object
      properties:
        word:
          type: string
        wordIndex:
          type: integer
          format: int32
    IRapidResultModelSkipResultModel:
      required:
      - rapidId
      - _t
      properties:
        _t:
          enum:
          - SkipResult
          type: string
        rapidId:
          type: string
    AddUserResponseEndpoint_Output:
      required:
      - isAccepted
      - userScore
      type: object
      properties:
        isAccepted:
          type: boolean
          description: Whether the response was accepted.
        validationTruth:
          allOf:
          - $ref: '#/components/schemas/IValidationTruthModel'
          description: The validation truth applied to the response, if any.
        explanation:
          allOf:
          - $ref: '#/components/schemas/TranslatedString'
          description: An optional translated explanation for the user.
        userScore:
          type: number
          description: The user's score after processing this response.
          format: double
        nextRapid:
          allOf:
          - $ref: '#/components/schemas/IRapidModel'
          description: "The next rapid to solve when the session streams its rapids and continues.\n Null when there is nothing further to solve."
    IMetadataModelFileTypeMetadataModel:
      required:
      - fileType
      - _t
      properties:
        _t:
          enum:
          - FileTypeMetadata
          type: string
        fileType:
          $ref: '#/components/schemas/FileType'
    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'
    LocateBoxTruthModel_Box:
      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
    IValidationTruthModelEmptyValidationTruthModel:
      required:
      - _t
      properties:
        _t:
          enum:
          - EmptyValidationTruth
          type: string
    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'
    FileType:
      enum:
      - Unknown
      - Image
      - Video
      - Audio
    IValidationTruthModelLocateBoxTruthModel:
      required:
      - boundingBoxes
      - _t
      properties:
        _t:
          enum:
          - LocateBoxTruth
          type: string
        boundingBoxes:
          type: array
          items:
            $ref: '#/components/schemas/LocateBoxTruthModel_Box'
        requiredPrecision:
          type: number
          format: double
        requiredCompleteness:
          type: number
          format: double
    RapidIssueModel:
      enum:
      - Other
      - CannotSubmit
      - NoAsset
      - Inappropriate
      - NoCorrectOption
      - WrongLanguage
      - DoNotUnderstand
      - DoNotCare
      - NotSeeOptionsOrMediaDidntLoad
      - MyAnswerIsCorrect
    IRapidResultModelLocateResultModel:
      required:
      - rapidId
      - coordinates
      - _t
      properties:
        _t:
          enum:
          - LocateResult
          type: string
        rapidId:
          type: string
        coordinates:
          type: array
          items:
            $ref: '#/components/schemas/LocateCoordinateModel'
    TranscriptionRapidModel_TranscriptionWord:
      required:
      - word
      - wordIndex
      type: object
      properties:
        word:
          type: string
        wordIndex:
          type: integer
          format: int32
    TranslatedString:
      required:
      - englishText
      - text
      - targetLanguage
      type: object
      properties:
        wasTranslated:
          type: boolean
        englishText:
          type: string
        text:
          type: string
        targetLanguage:
          type: string
    NamedEntityResultModel_NamedClassification:
      required:
      - start
      - end
      - classification
      type: object
      properties:
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        classification:
          type: string
    IRapidResultModelScrubResultModel:
      required:
      - rapidId
      - timestamps
      - _t
      properties:
        _t:
          enum:
          - ScrubResult
          type: string
        rapidId:
          type: string
        timestamps:
          type: array
          items:
            type: integer
            format: int32
    IRapidModelLineRapidModel:
      required:
      - target
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - LineRapidModel
          type: string
        target:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    ReportRapidEndpoint_Input:
      required:
      - issue
      type: object
      properties:
        issue:
          allOf:
          - $ref: '#/components/schemas/RapidIssueModel'
          description: A streamlined enum representing common issues.
        message:
          type: string
          description: An optional message typed by the user.
          nullable: true
        dump:
          type: string
          description: A dump that the frontend defines and can read again.
          nullable: true
        source:
          type: string
          description: An optional identifier where the report originated from.
          nullable: true
    IRapidModelLocateRapidModel:
      required:
      - target
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - LocateRapidModel
          type: string
        target:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    IValidationTruthModelBoundingBoxTruthModel:
      required:
      - xMin
      - yMin
      - xMax
      - yMax
      - _t
      properties:
        _t:
          enum:
          - BoundingBoxTruth
          type: string
        xMin:
          type: number
          format: double
        yMin:
          type: number
          format: double
        xMax:
          type: number
          format: double
        yMax:
          type: number
          format: double
    IRapidModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IRapidModelAttachCategoryRapidModel'
      - $ref: '#/components/schemas/IRapidModelBoundingBoxRapidModel'
      - $ref: '#/components/schemas/IRapidModelCompareRapidModel'
      - $ref: '#/components/schemas/IRapidModelFreeTextRapidModel'
      - $ref: '#/components/schemas/IRapidModelLineRapidModel'
      - $ref: '#/components/schemas/IRapidModelLocateRapidModel'
      - $ref: '#/components/schemas/IRapidModelNamedEntityRapidModel'
      - $ref: '#/components/schemas/IRapidModelPolygonRapidModel'
      - $ref: '#/components/schemas/IRapidModelScrubRapidModel'
      - $ref: '#/components/schemas/IRapidModelTranscriptionRapidModel'
      discriminator:
        propertyName: _t
        mapping:
          AttachCategoryRapidModel: '#/components/schemas/IRapidModelAttachCategoryRapidModel'
          BoundingBoxRapidModel: '#/components/schemas/IRapidModelBoundingBoxRapidModel'
          CompareRapidModel: '#/components/schemas/IRapidModelCompareRapidModel'
          FreeTextRapidModel: '#/components/schemas/IRapidModelFreeTextRapidModel'
          LineRapidModel: '#/components/schemas/IRapidModelLineRapidModel'
          LocateRapidModel: '#/components/schemas/IRapidModelLocateRapidModel'
          NamedEntityRapidModel: '#/components/schemas/IRapidModelNamedEntityRapidModel'
          PolygonRapidModel: '#/components/schemas/IRapidModelPolygonRapidModel'
          ScrubRapidModel: '#/components/schemas/IRapidModelScrubRapidModel'
          TranscriptionRapidModel: '#/components/schemas/IRapidModelTranscriptionRapidModel'
    IRapidResultModelAttachCategoryResultModel:
      required:
      - rapidId
      - category
      - _t
      properties:
        _t:
          enum:
          - AttachCategoryResult
          type: string
        rapidId:
          type: string
        category:
          type: string
    MetadataModelCollection:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/IMetadataModel'
    IRapidModelCompareRapidModel:
      required:
      - criteria
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - CompareRapidModel
          type: string
        criteria:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    FeatureFlag:
      required:
      - key
      - value
      type: object
      properties:
        key:
          type: string
        value:
          type: string
    IAssetModelNullAssetModel:
      required:
      - metadata
      - identifier
      - _t
      properties:
        _t:
          enum:
          - NullAsset
          type: string
        metadata:
          $ref: '#/components/schemas/MetadataModelCollection'
        identifier:
          type: string
    IRapidResultModelFreeTextResultModel:
      required:
      - rapidId
      - answer
      - _t
      properties:
        _t:
          enum:
          - FreeTextResult
          type: string
        rapidId:
          type: string
        answer:
          type: string
    IMetadataModelVideoDurationMetadataModel:
      required:
      - duration
      - _t
      properties:
        _t:
          enum:
          - VideoDurationMetadata
          type: string
        duration:
          type: string
          format: date-time
    LineResultModel_LinePoint:
      required:
      - x
      - y
      type: object
      properties:
        x:
          type: number
          format: double
        y:
          type: number
          format: double
    IRapidModelNamedEntityRapidModel:
      required:
      - target
      - classes
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - NamedEntityRapidModel
          type: string
        target:
          $ref: '#/components/schemas/TranslatedString'
        classes:
          type: array
          items:
            $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    ScrubTruthModel_ScrubRange:
      required:
      - start
      - end
      type: object
      properties:
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
    IRapidModelTranscriptionRapidModel:
      required:
      - transcription
      - title
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - TranscriptionRapidModel
          type: string
        transcription:
          type: array
          items:
            $ref: '#/components/schemas/TranscriptionRapidModel_TranscriptionWord'
        title:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    IMetadataModelOriginalFilenameMetadataModel:
      required:
      - originalFilename
      - _t
      properties:
        _t:
          enum:
          - OriginalFilenameMetadata
          type: string
        originalFilename:
          type: string
    AddUserResponseEndpoint_Input:
      required:
      - sessionIndex
      - result
      type: object
      properties:
        sessionIndex:
          type: integer
          description: The index of the session when the result was submitted.
          format: int32
        result:
          allOf:
          - $ref: '#/components/schemas/IRapidResultModel'
          description: The result submitted by the user.
    LineResultModel_Line:
      required:
      - size
      - points
      type: object
      properties:
        size:
          type: number
          format: double
        points:
          type: array
          items:
            $ref: '#/components/schemas/LineResultModel_LinePoint'
    IRapidModelScrubRapidModel:
      required:
      - target
      - id
      - featureFlags
      - asset
      - _t
      properties:
        _t:
          enum:
          - ScrubRapidModel
          type: string
        target:
          $ref: '#/components/schemas/TranslatedString'
        id:
          type: string
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        asset:
          $ref: '#/components/schemas/IAssetModel'
    IValidationTruthModelTranscriptionTruthModel:
      required:
      - correctWords
      - _t
      properties:
        _t:
          enum:
          - TranscriptionTruth
          type: string
        correctWords:
          type: array
          items:
            $ref: '#/components/schemas/TranscriptionTruthModel_TranscriptionWord'
        strictGrading:
          type: boolean
          nullable: true
        requiredPrecision:
          type: number
          format: double
          nullable: true
        requiredCompleteness:
          type: number
          format: double
          nullable: true
    IMetadataModelLocationMetadataModel:
      required:
      - x
      - y
      - _t
      properties:
        _t:
          enum:
          - LocationMetadata
          type: string
        x:
          type: number
          format: float
        y:
          type: number
          format: float
    IValidationTruthModelNamedEntityTruthModel:
      required:
      - classifications
      - _t
      properties:
        _t:
          enum:
          - NamedEntityTruth
          type: string
        classifications:
          type: array
          items:
            $ref: '#/components/schemas/NamedEntityTruthModel_NamedClassification'
    AttachCategoryRapidModel_Category:
      required:
      - value
      - label
      type: object
      properties:
        value:
          type: string
        label:
          $ref: '#/components/schemas/TranslatedString'
    PolygonResultModel_Shape:
      required:
      - edges
      type: object
      properties:
        edges:
          type: array
          items:
            $ref: '#/components/schemas/PolygonResultModel_Coordinate'
    IValidationTruthModelLineTruthModel:
      required:
      - _t
      properties:
        _t:
          enum:
          - LineTruth
          type: string
    IsRapidBagValidEndpoint_Output:
      required:
      - isValid
      type: object
      properties:
        isValid:
          type: boolean
          description: Whether the rapid bag is valid.
    IMetadataModelClassificationMetadataModel:
      required:
      - classification
      - _t
      properties:
        _t:
          enum:
          - ClassificationMetadata
          type: string
        classification:
          type: string
    IMetadataModelTextMetadataModel:
      required:
      - text
      - _t
      properties:
        _t:
          enum:
          - TextMetadata
          type: string
        text:
          type: string
          nullable: true
    IValidationTruthModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IValidationTruthModelAttachCategoryTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelBoundingBoxTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelClassifyTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelCompareTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelEmptyValidationTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelLineTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelLocateBoxTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelMultiCompareTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelNamedEntityTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelPolygonTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelScrubTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelSkipTruthModel'
      - $ref: '#/components/schemas/IValidationTruthModelTranscriptionTruthModel'
      discriminator:
        propertyName: _t
        mapping:
          AttachCategoryTruth: '#/components/schemas/IValidationTruthModelAttachCategoryTruthModel'
          BoundingBoxTruth: '#/components/schemas/IValidationTruthModelBoundingBoxTruthModel'
          ClassifyTruth: '#/components/schemas/IValidationTruthModelClassifyTruthModel'
          CompareTruth: '#/components/schemas/IValidationTruthModelCompareTruthModel'
          EmptyValidationTruth: '#/components/schemas/IValidationTruthModelEmptyValidationTruthModel'
          LineTruth: '#/components/schemas/IValidationTruthModelLineTruthModel'
          LocateBoxTruth: '#/components/schemas/IValidationTruthModelLocateBoxTruthModel'
          MultiCompareTruth: '#/components/schemas/IValidationTruthModelMultiCompareTruthModel'
          NamedEntityTruth: '#/components/schemas/IValidationTruthModelNamedEntityTruthModel'
          PolygonTruth: '#/components/schemas/IValidationTruthModelPolygonTruthModel'
          ScrubTruth: '#/components/schemas/IValidationTruthModelScrubTruthModel'
          SkipTruth: '#/components/schemas/IValidationTruthModelSkipTruthModel'
          TranscriptionTruth: '#/components/schemas/IValidationTruthModelTranscriptionTruthModel'
    SkipRapidEndpoint_Output:
      required:
      - isAccepted
      - userScore
      type: object
      properties:
        isAccepted:
          type: boolean
          description: Whether the skip was accepted.
        validationTruth:
          allOf:
          - $ref: '#/components/schemas/IValidationTruthModel'
          description: The validation truth applied, if any.
        explanation:
          allOf:
          - $ref: '#/components/schemas/TranslatedString'
          description: An optional translated explanation for the user.
        userScore:
          type: number
          description: The user's score after the skip.
          format: double
        nextRapid:
          allOf:
          - $ref: '#/components/schemas/IRapidModel'
          description: "The next rapid to solve when the session streams its rapids and continues.\n Null when there is nothing further to solve."
    IValidationTruthModelClassifyTruthModel:
      required:
      - correctCategories
      - _t
      properties:
        _t:
          enum:
          - ClassifyTruth
          type: string
        correctCategories:
          type: array
          items:
            type: string
    IRapidResultModelBoundingBoxResultModel:
      required:
      - rapidId
      - boundingBoxes
      - _t
      properties:
        _t:
          enum:
          - BoundingBoxResult
          type: string
        rapidId:
          type: string
        boundingBoxes:
          type: array
          items:
            $ref: '#/components/schemas/BoundingBoxResultModel_Box'
    IValidationTruthModelCompareTruthModel:
      required:
      - winnerId
      - _t
      properties:
        _t:
          enum:
          - CompareTruth
          type: string
        winnerId:
          type: string
    IMetadataModelStreamsMetadataModel:
      required:
      - hasVideo
      - hasAudio
      - hasSubtitles
      - _t
      properties:
        _t:
          enum:
          - StreamsMetadata
          type: string
        hasVideo:
          type: boolean
        hasAudio:
          type: boolean
        hasSubtitles:
          type: boolean
    LocateCoordinateModel:
      required:
      - x
      - y
      type: object
      properties:
        x:
          type: number
          format: double
        y:
          type: number
          format: double
    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
    IRapidModelFreeTextRapidModel:
      required:
      - question
      - asset
      - featureFlags
      - id
      - _t
      properties:
        _t:
          enum:
          - FreeTextRapidModel
          type: string
        question:
          $ref: '#/components/schemas/TranslatedString'
        asset:
          $ref: '#/components/schemas/IAssetModel'
        context:
          type: object
          oneOf:
          - $ref: '#/components/schemas/TranslatedString'
          nullable: true
        contextAsset:
          type: object
          oneOf:
          - $ref: '#/components/schemas/IAssetModel'
          nullable: true
        featureFlags:
          type: array
          items:
            $ref: '#/components/schemas/FeatureFlag'
        id:
          type: string
    IRapidResultModelPolygonResultModel:
      required:
      - rapidId
      - shapes
      - _t
      properties:
        _t:
          enum:
          - PolygonResult
          type: string
        rapidId:
          type: string
        shapes:
          type: array
          items:
            $ref: '#/components/schemas/PolygonResultModel_Shape'
    InspectReportEndpoint_Output:
      type: object
      properties:
        dump:
          type: string
          description: The captured dump, if any.
          nullable: true
    IRapidResultModel:
      required:
      - _t
      type: object
      oneOf:
      - $ref: '#/components/schemas/IRapidResultModelAttachCategoryResultModel'
      - $re

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