> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voltai.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Ingestion Job Progress

> Check the progress of an async ingestion job by job_id. Works for both ZIP and S3 folder ingestion.



## OpenAPI

````yaml /api-reference/knowledge-agent/source-api.json get /sources/ingestion-progress/{job_id}/
openapi: 3.0.3
info:
  title: Arcturus Source API
  version: 1.0.0
  description: API for managing sources and topics
servers:
  - url: https://api-prod.voltai.ai/source/api/
    description: Production
security: []
tags:
  - name: Sources
    description: Source CRUD operations
  - name: Sources - Bulk Actions
    description: Bulk operations on sources
  - name: Topics
    description: Topic CRUD operations
  - name: Topics - Tree & Sources
    description: Topic hierarchy and source listings
  - name: Topics - Bulk Actions
    description: Bulk operations on topics
  - name: Sources - Bulk Ingest
    description: Bulk ingestion of sources
paths:
  /sources/ingestion-progress/{job_id}/:
    get:
      tags:
        - Sources
      summary: Get Ingestion Job Progress
      description: >-
        Check the progress of an async ingestion job by job_id. Works for both
        ZIP and S3 folder ingestion.
      operationId: sources_ingestion_progress
      parameters:
        - in: query
          name: organization_name
          schema:
            type: string
          description: Organization name (required for multi-tenant API keys)
          required: true
        - in: path
          name: job_id
          schema:
            type: string
            format: uuid
          description: >-
            The job ID returned by the bulk-ingest-zip or bulk-ingest-s3-folder
            endpoint
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IngestionProgressResponse'
          description: Current progress of the ingestion job.
        '404':
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
          description: Job not found or expired.
      security:
        - cookieAuth: []
        - ApiKeyAuth: []
components:
  schemas:
    IngestionProgressResponse:
      type: object
      description: Progress of an async ingestion job (ZIP or S3 folder).
      properties:
        job_id:
          type: string
          format: uuid
        status:
          type: string
          description: >-
            Current job status: discovering, ingesting, completed,
            completed_with_errors, or failed.
        source:
          type: string
          description: >-
            Human-readable label describing the ingestion origin (e.g. an S3
            folder URL or a ZIP filename).
        total:
          type: integer
          nullable: true
          description: >-
            Total number of source items discovered. Null while status is
            "discovering".
        succeeded:
          type: integer
          description: Number of successfully ingested items.
        failed:
          type: integer
          description: Number of items that failed ingestion.
        pending:
          type: integer
          nullable: true
          description: >-
            Number of items still pending ingestion. Null while status is
            "discovering".
        errors:
          type: array
          items:
            type: string
          description: List of error messages (capped at 50).
      required:
        - job_id
        - status
        - source
        - total
        - succeeded
        - failed
        - pending
        - errors
  securitySchemes:
    cookieAuth:
      type: apiKey
      in: cookie
      name: sessionid
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: >-
        API key for authentication. Get your API key from the organization
        settings.

````