Coactive ingestion > status API

The ingestion > status API from Coactive — 9 operation(s) for ingestion > status.

OpenAPI Specification

coactive-ingestion-status-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API Reference agentic-search > agenticSearch ingestion > status API
  version: 1.0.0
servers:
- url: https://api.coactive.ai
  description: Production
- url: https://app.coactive.ai
  description: Production
tags:
- name: ingestion > status
paths:
  /api/v1/ingestion/jobs/{ingest_job_id}:
    get:
      operationId: get-by-ingest-job-id-api-v-1-ingestion-jobs-ingest-job-id-get
      summary: Get By Ingest Job Id
      description: Returns Ingest Job by Ingest Job ID.
      tags:
      - ingestion > status
      parameters:
      - name: ingest_job_id
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:GetOneIngestJobResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/datasets/{dataset_id}/assets/status:
    post:
      operationId: get-dataset-assets-status-api-v-1-ingestion-datasets-dataset-id-assets-status-post
      summary: Get Dataset Assets Status
      description: Returns the ingestion status for assets in dataset by source path.
      tags:
      - ingestion > status
      parameters:
      - name: dataset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: filter
        in: query
        required: false
        schema:
          oneOf:
          - $ref: '#/components/schemas/ingestion:EventFilter'
          - type: 'null'
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 100
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_dataset_assets_status_api_v1_ingestion_datasets__dataset_id__assets_status_post_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/ingestion:GetDatasetAssetsStatusRequest'
              - type: 'null'
  /api/v1/ingestion/datasets/{dataset_id}/assets/status/count:
    get:
      operationId: get-dataset-assets-status-count-api-v-1-ingestion-datasets-dataset-id-assets-status-count-get
      summary: Get Dataset Assets Status Count
      description: Returns the ingestion status count for assets in a dataset.
      tags:
      - ingestion > status
      parameters:
      - name: dataset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:DatasetAssetsStatusCountResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/datasets/{dataset_id}/assets/status/summary:
    get:
      operationId: get-dataset-assets-status-summary-api-v-1-ingestion-datasets-dataset-id-assets-status-summary-get
      summary: Get Dataset Assets Status Summary
      description: Returns the ingestion status summaries for assets.
      tags:
      - ingestion > status
      parameters:
      - name: dataset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: filter
        in: query
        required: false
        schema:
          oneOf:
          - $ref: '#/components/schemas/ingestion:EventFilter'
          - type: 'null'
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 100
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_dataset_assets_status_summary_api_v1_ingestion_datasets__dataset_id__assets_status_summary_get_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/datasets/{dataset_id}/status:
    get:
      operationId: get-dataset-status-api-v-1-ingestion-datasets-dataset-id-status-get
      summary: Get Dataset Status
      description: Returns the ingestion status of a dataset.
      tags:
      - ingestion > status
      parameters:
      - name: dataset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 100
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_dataset_status_api_v1_ingestion_datasets__dataset_id__status_get_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/images/{asset_id}/status:
    get:
      operationId: get-image-asset-status-api-v-1-ingestion-images-asset-id-status-get
      summary: Get Image Asset Status
      description: Returns the ingestion status of an image asset.
      tags:
      - ingestion > status
      parameters:
      - name: asset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_image_asset_status_api_v1_ingestion_images__asset_id__status_get_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/jobs:
    get:
      operationId: get-ingest-jobs-api-v-1-ingestion-jobs-get
      summary: Get Ingest Jobs
      description: Returns (all) Ingest Jobs.
      tags:
      - ingestion > status
      parameters:
      - name: dataset_id
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
          format: uuid
      - name: status
        in: query
        required: false
        schema:
          oneOf:
          - $ref: '#/components/schemas/ingestion:IngestJobStatusEnum'
          - type: 'null'
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 100
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:GetManyIngestJobsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/jobs/{ingest_job_id}/status:
    get:
      operationId: get-job-status-api-v-1-ingestion-jobs-ingest-job-id-status-get
      summary: Get Job Status
      description: Returns the ingestion status of a job in a dataset.
      tags:
      - ingestion > status
      parameters:
      - name: ingest_job_id
        in: path
        required: true
        schema:
          type: string
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          default: 0
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 100
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_job_status_api_v1_ingestion_jobs__ingest_job_id__status_get_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
  /api/v1/ingestion/videos/{asset_id}/status:
    get:
      operationId: get-video-asset-status-api-v-1-ingestion-videos-asset-id-status-get
      summary: Get Video Asset Status
      description: Returns the ingestion status of a video asset.
      tags:
      - ingestion > status
      parameters:
      - name: asset_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: Bearer authentication
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:Status_get_video_asset_status_api_v1_ingestion_videos__asset_id__status_get_Response_200'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ingestion:HTTPValidationError'
components:
  schemas:
    ingestion:EmptyResponse:
      type: object
      properties:
        data:
          type: array
          items:
            description: Any type
          description: Empty data list
      title: EmptyResponse
    ingestion:AssetStatusEnum:
      type: string
      enum:
      - pending
      - in_progress
      - received
      - processing_started
      - completed
      - error
      title: AssetStatusEnum
    ingestion:ValidationErrorLocItems:
      oneOf:
      - type: string
      - type: integer
      title: ValidationErrorLocItems
    ingestion:ExternalCloudStorageProvider:
      type: string
      enum:
      - aws
      title: ExternalCloudStorageProvider
    ingestion:GetDatasetAssetsStatusRequest:
      type: object
      properties:
        source_path:
          type:
          - string
          - 'null'
      title: GetDatasetAssetsStatusRequest
    ingestion:InternalAssetMetadataUpdateMetadata:
      oneOf:
      - type: boolean
      - type: integer
      - type: number
        format: double
      - type: string
      - type: string
        format: date-time
      title: InternalAssetMetadataUpdateMetadata
    ingestion:ErrorCode:
      type: string
      enum:
      - unknown
      - unknown_content_type
      - file_not_found
      - permission_denied
      - broken_url
      - file_too_large
      - video_too_short
      - video_too_long
      - resolution_out_of_spec
      - unsupported_format
      - unsupported_codec
      - unsupported_source_type
      - unsupported_uri_scheme
      - audio_processing_failed
      - asset_metadata_error
      - transcription_failed
      - composite_creation_failed
      - composite_slice_creation_failed
      title: ErrorCode
    ingestion:VideoAssetStatusResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ingestion:Status'
      required:
      - data
      title: VideoAssetStatusResponse
    ingestion:AssetType:
      type: string
      enum:
      - unspecified
      - image
      - keyframe
      - video
      - audio
      - metadata
      - csv
      - json
      - s3_prefix
      title: AssetType
    ingestion:EventName:
      type: string
      enum:
      - received
      - assets_enumerated
      - completed
      - processing_started
      - error
      - kind_determined
      - stored
      - metadata_stored
      - embedding_computed
      - embedding_stored
      - asset_copied
      - timecodes_computed
      - audio_extracted
      - audio_processing_started
      - audio_processing_finished
      - keyframe_generation_started
      - keyframe_generation_completed
      - shot_boundary_detection_started
      - shot_boundary_detection_completed
      - file_downloaded
      - keyframe_generated
      - transcribed
      - transcription_segmented
      - transcripts_created
      - composite_created
      - composite_slices_created
      description: The status-related event that applies to the entity.
      title: EventName
    ingestion:GetOneIngestJobResponseDetails:
      oneOf:
      - $ref: '#/components/schemas/ingestion:AssetsJobDetails'
      - $ref: '#/components/schemas/ingestion:FileJobDetails'
      - $ref: '#/components/schemas/ingestion:BucketJobDetails'
      - $ref: '#/components/schemas/ingestion:MetadataUpdateJobDetails'
      title: GetOneIngestJobResponseDetails
    ingestion:ImageAssetStatusResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ingestion:Status'
      required:
      - data
      title: ImageAssetStatusResponse
    ingestion:Status:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ingestion:AssetStatusEnum'
        asset_id:
          type: string
          format: uuid
        dataset_id:
          type: string
          format: uuid
        error_code:
          oneOf:
          - $ref: '#/components/schemas/ingestion:ErrorCode'
          - type: 'null'
        error_reason:
          type:
          - string
          - 'null'
        source_path:
          type:
          - string
          - 'null'
        latest_event:
          $ref: '#/components/schemas/ingestion:LatestEvent'
        asset_type:
          type:
          - string
          - 'null'
      required:
      - status
      - asset_id
      - dataset_id
      - latest_event
      title: Status
    ingestion:EventFilter:
      type: string
      enum:
      - completed
      - error
      - in_progress
      title: EventFilter
    ? ingestion:Status_get_dataset_assets_status_summary_api_v1_ingestion_datasets__dataset_id__assets_status_summary_get_Response_200
    : oneOf:
      - $ref: '#/components/schemas/ingestion:PagedAssetsStatusSummaryResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_dataset_assets_status_summary_api_v1_ingestion_datasets__dataset_id__assets_status_summary_get_Response_200
    ingestion:DatasetAssetsStatusCountResponse:
      type: object
      properties:
        data:
          type: object
          additionalProperties:
            type: integer
          description: A dictionary of event filters and their counts
      required:
      - data
      title: DatasetAssetsStatusCountResponse
    ingestion:CreateIngestJobFromFileRequest:
      type: object
      properties:
        dataset_id:
          type: string
          format: uuid
        source_path:
          type: string
        connection_name:
          type:
          - string
          - 'null'
        file_type:
          $ref: '#/components/schemas/ingestion:ExternalFileType'
      required:
      - dataset_id
      - source_path
      title: CreateIngestJobFromFileRequest
    ingestion:BucketJobDetails:
      type: object
      properties:
        path:
          type: string
        spec:
          $ref: '#/components/schemas/ingestion:BucketSpec'
        max_depth:
          type: integer
          default: 0
      required:
      - path
      - spec
      title: BucketJobDetails
    ingestion:Status_get_dataset_status_api_v1_ingestion_datasets__dataset_id__status_get_Response_200:
      oneOf:
      - $ref: '#/components/schemas/ingestion:DatasetIngestionStatusResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_dataset_status_api_v1_ingestion_datasets__dataset_id__status_get_Response_200
    ingestion:ExternalAssetType:
      type: string
      enum:
      - unspecified
      - image
      - video
      title: ExternalAssetType
    ingestion:IngestJobStatusEnum:
      type: string
      enum:
      - completed
      - failed
      - in_progress
      - pending
      - paused
      - stopping
      - stopped
      description: Enum of Ingest Job Status.
      title: IngestJobStatusEnum
    ingestion:ExplicitExternalAssetType:
      type: string
      enum:
      - image
      - video
      title: ExplicitExternalAssetType
    ingestion:JobStatus:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ingestion:IngestJobStatusEnum'
        assets:
          $ref: '#/components/schemas/ingestion:PagedDataResponse_Status_'
          description: A list of assets that are part of the ingestion job
      required:
      - status
      title: JobStatus
    ingestion:PagedPageDetailsResponse:
      type: object
      properties:
        current_page:
          type: integer
          description: Current page number
        last_page:
          type:
          - integer
          - 'null'
          description: Max page number based on limit and total number of items
        limit:
          type: integer
          description: Number of items to return
        offset:
          type: integer
          description: Starting index to return
        total:
          type:
          - integer
          - 'null'
          description: Total number of items
      required:
      - current_page
      - last_page
      - limit
      - offset
      - total
      description: Pagination metadata
      title: PagedPageDetailsResponse
    ingestion:InternalAssetMetadataUpdate:
      type: object
      properties:
        asset_id:
          type: string
          format: uuid
        source_path:
          type:
          - string
          - 'null'
        asset_type:
          $ref: '#/components/schemas/ingestion:ExplicitExternalAssetType'
        metadata:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/ingestion:InternalAssetMetadataUpdateMetadata'
      required:
      - asset_id
      - source_path
      - asset_type
      title: InternalAssetMetadataUpdate
    ingestion:AssetJobDetail:
      type: object
      properties:
        asset:
          $ref: '#/components/schemas/ingestion:IngestJobAsset'
        asset_id:
          type:
          - string
          - 'null'
          format: uuid
        error:
          type:
          - string
          - 'null'
      required:
      - asset
      title: AssetJobDetail
    ingestion:LatestEvent:
      type: object
      properties:
        event_type:
          oneOf:
          - $ref: '#/components/schemas/ingestion:EventName'
          - type: 'null'
        event_entity:
          oneOf:
          - $ref: '#/components/schemas/ingestion:EventEntity'
          - type: 'null'
        timestamp_dt:
          type:
          - string
          - 'null'
          format: date-time
      title: LatestEvent
    ingestion:IngestJobType:
      type: string
      enum:
      - unspecified
      - assets
      - file
      - bucket
      - metadata
      title: IngestJobType
    ingestion:ExistingAssetMetadataUpdate:
      type: object
      properties:
        asset_id:
          type:
          - string
          - 'null'
          format: uuid
        source_path:
          type:
          - string
          - 'null'
        asset_type:
          $ref: '#/components/schemas/ingestion:ExplicitExternalAssetType'
        metadata:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/ingestion:ExistingAssetMetadataUpdateMetadata'
      required:
      - asset_type
      title: ExistingAssetMetadataUpdate
    ingestion:DatasetIngestionInfo:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ingestion:IngestJobStatusEnum'
        ingest_job_id:
          type: string
          description: The ID of the ingestion job
        ingestion_dt:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time of the ingestion job
      required:
      - status
      - ingest_job_id
      - ingestion_dt
      title: DatasetIngestionInfo
    ingestion:IngestJobStatusResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ingestion:JobStatus'
      required:
      - data
      title: IngestJobStatusResponse
    ingestion:StatusSummary:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ingestion:AssetStatusEnum'
        asset_id:
          type: string
          format: uuid
        dataset_id:
          type: string
          format: uuid
        asset_type:
          type: string
        source_path:
          type:
          - string
          - 'null'
        ingestion_dt:
          type:
          - string
          - 'null'
          format: date-time
      required:
      - status
      - asset_id
      - dataset_id
      - asset_type
      title: StatusSummary
    ingestion:BucketSpec:
      type: object
      properties:
        bucket:
          type: string
        prefix:
          type: string
          default: /
        provider:
          $ref: '#/components/schemas/ingestion:ExternalCloudStorageProvider'
      required:
      - bucket
      title: BucketSpec
    ingestion:EventEntity:
      type: string
      enum:
      - unspecified
      - request
      - image
      - video
      - audio
      - shot
      - visual_keyframe
      - audio_keyframe
      - audio_segment
      - metadata
      - csv_file
      - json_file
      - s3_prefix
      - composite
      description: "The kind of entity that the status event applies to.\n\nDetermines what collection of IDs show up in the event, e.g.:\n    - request (fewest):\n        - request_id\n        - ingest_job_id\n        - dataset_id\n        - org_id\n    - audio_keyframe (most):\n        - coactive_image_id\n        - coactive_audio_segment_id\n        - coactive_shot_id\n        - coactive_video_id\n        - request_id\n        - ingest_job_id\n        - dataset_id\n        - org_id"
      title: EventEntity
    ingestion:MetadataUpdateJobDetails:
      type: object
      properties:
        accepted:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:InternalAssetMetadataUpdate'
        invalid_assets:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:ExistingAssetMetadataUpdate'
      required:
      - accepted
      - invalid_assets
      title: MetadataUpdateJobDetails
    ingestion:ExistingAssetMetadataUpdateMetadata:
      oneOf:
      - type: boolean
      - type: integer
      - type: number
        format: double
      - type: string
      - type: string
        format: date-time
      title: ExistingAssetMetadataUpdateMetadata
    ingestion:AssetsJobDetails:
      type: object
      properties:
        assets:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:AssetJobDetail'
      required:
      - assets
      title: AssetsJobDetails
    ingestion:Status_get_dataset_assets_status_api_v1_ingestion_datasets__dataset_id__assets_status_post_Response_200:
      oneOf:
      - $ref: '#/components/schemas/ingestion:PagedAssetsStatusResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_dataset_assets_status_api_v1_ingestion_datasets__dataset_id__assets_status_post_Response_200
    ingestion:DatasetIngestionStatusResponse:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/ingestion:PagedMetaResponse'
          description: Metadata for the set of data returned
        data:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:DatasetIngestionInfo'
          description: The paginated data
      required:
      - meta
      - data
      title: DatasetIngestionStatusResponse
    ingestion:IngestJobAssetMetadata:
      oneOf:
      - type: boolean
      - type: integer
      - type: number
        format: double
      - type: string
      - type: string
        format: date-time
      title: IngestJobAssetMetadata
    ingestion:Status_get_image_asset_status_api_v1_ingestion_images__asset_id__status_get_Response_200:
      oneOf:
      - $ref: '#/components/schemas/ingestion:ImageAssetStatusResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_image_asset_status_api_v1_ingestion_images__asset_id__status_get_Response_200
    ingestion:ValidationError:
      type: object
      properties:
        loc:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:ValidationErrorLocItems'
        msg:
          type: string
        type:
          type: string
      required:
      - loc
      - msg
      - type
      title: ValidationError
    ingestion:PagedDataResponse_Status_:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/ingestion:PagedMetaResponse'
          description: Metadata for the set of data returned
        data:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:Status'
          description: The paginated data
      required:
      - meta
      - data
      title: PagedDataResponse_Status_
    ingestion:PagedAssetsStatusSummaryResponse:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/ingestion:PagedMetaResponse'
          description: Metadata for the set of data returned
        data:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:StatusSummary'
          description: The paginated data
      required:
      - meta
      - data
      title: PagedAssetsStatusSummaryResponse
    ingestion:FileJobDetails:
      type: object
      properties:
        file:
          $ref: '#/components/schemas/ingestion:CreateIngestJobFromFileRequest'
      required:
      - file
      title: FileJobDetails
    ingestion:Status_get_job_status_api_v1_ingestion_jobs__ingest_job_id__status_get_Response_200:
      oneOf:
      - $ref: '#/components/schemas/ingestion:IngestJobStatusResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_job_status_api_v1_ingestion_jobs__ingest_job_id__status_get_Response_200
    ingestion:HTTPValidationError:
      type: object
      properties:
        detail:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:ValidationError'
      title: HTTPValidationError
    ingestion:GetManyIngestJobsResponse:
      type: object
      properties:
        jobs:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:GetOneIngestJobResponse'
      required:
      - jobs
      title: GetManyIngestJobsResponse
    ingestion:ExternalFileType:
      type: string
      enum:
      - unspecified
      - csv
      - json
      title: ExternalFileType
    ingestion:GetOneIngestJobResponse:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
        org_id:
          type: string
        dataset_id:
          type: string
          format: uuid
        connection_name:
          type:
          - string
          - 'null'
        job_type:
          $ref: '#/components/schemas/ingestion:IngestJobType'
        details:
          oneOf:
          - $ref: '#/components/schemas/ingestion:GetOneIngestJobResponseDetails'
          - type: 'null'
        source_type:
          oneOf:
          - $ref: '#/components/schemas/ingestion:AssetType'
          - type: 'null'
        file_path:
          type:
          - string
          - 'null'
        created_dt:
          type:
          - string
          - 'null'
          format: date-time
        updated_dt:
          type:
          - string
          - 'null'
          format: date-time
        started_dt:
          type:
          - string
          - 'null'
          format: date-time
        finished_dt:
          type:
          - string
          - 'null'
          format: date-time
        status:
          $ref: '#/components/schemas/ingestion:IngestJobStatusEnum'
        total_assets:
          type:
          - integer
          - 'null'
        processed_assets:
          type: integer
          default: 0
        errored_assets:
          type: integer
          default: 0
        error_details:
          type:
          - string
          - 'null'
        request_id:
          type:
          - string
          - 'null'
      required:
      - org_id
      - dataset_id
      - job_type
      - details
      - file_path
      - total_assets
      title: GetOneIngestJobResponse
    ingestion:PagedAssetsStatusResponse:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/ingestion:PagedMetaResponse'
          description: Metadata for the set of data returned
        data:
          type: array
          items:
            $ref: '#/components/schemas/ingestion:Status'
          description: The paginated data
      required:
      - meta
      - data
      title: PagedAssetsStatusResponse
    ingestion:Status_get_video_asset_status_api_v1_ingestion_videos__asset_id__status_get_Response_200:
      oneOf:
      - $ref: '#/components/schemas/ingestion:VideoAssetStatusResponse'
      - $ref: '#/components/schemas/ingestion:EmptyResponse'
      title: Status_get_video_asset_status_api_v1_ingestion_videos__asset_id__status_get_Response_200
    ingestion:IngestJobAsset:
      type: object
      properties:
        source_path:
          type: string
        metadata:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/ingestion:IngestJobAssetMetadata'
        asset_type:
          $ref: '#/components/schemas/ingestion:ExternalAssetType'
      required:
      - source_path
      title: IngestJobAsset
    ingestion:PagedMetaResponse:
      type: object
      properties:
        page:
          $ref: '#/components/schemas/ingestion:PagedPageDeta

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