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

# Get batch detail

> Get a batch by id with an inline lean items[] for polling.

``items[]`` is always the joined ``batch_items × runs`` handle
projection (see :class:`models.batch.BatchItemHandle`) so customers
don't need a second request to address each item. For the full
per-item projection (input/output/cost/timestamps), use the
paginated ``GET /batches/{id}/items`` endpoint.



## OpenAPI

````yaml /api/openapi.public.json get /v1/batches/{id}
openapi: 3.1.0
info:
  title: Runflow API
  version: 0.1.0
  description: >-
    Public Runflow API. Run AI image and video models, manage media, inspect run
    history, and configure webhooks. Auth: HTTP Bearer.


    This document is the customer integration surface only. Admin and internal
    operations plus generic system reference-data tables are intentionally
    omitted.
servers:
  - url: https://api.runflow.io
    description: Production
security:
  - HTTPBearer: []
tags:
  - name: Models
    description: >-
      Browse the model catalog and dispatch model runs. The primary surface for
      running AI image and video generation.
  - name: Runs
    description: >-
      Inspect, cancel, and re-run model executions. Fetch logs, node-runs, and
      callback delivery history.
  - name: Media
    description: >-
      Upload images and videos as inputs. Organize assets into folders.
      Three-step presigned upload flow for large files.
  - name: Batches
    description: >-
      Run a model on multiple inputs in one request. Includes per-item status
      and a single callback when the batch completes.
  - name: Evaluations
    description: >-
      Submit an image generated anywhere for automated quality evaluation, then
      read a pass verdict, a 0-1 score, and structured issues. No Runflow run
      required.
  - name: Webhooks
    description: >-
      Subscribe to platform events. Inspect delivery history, redeliver failed
      callbacks, manage signing secrets.
  - name: Account
    description: Read your account identity and credit balance.
  - name: Status
    description: Health and readiness probes for the API.
paths:
  /v1/batches/{id}:
    get:
      tags:
        - Batches
      summary: Get batch detail
      description: |-
        Get a batch by id with an inline lean items[] for polling.

        ``items[]`` is always the joined ``batch_items × runs`` handle
        projection (see :class:`models.batch.BatchItemHandle`) so customers
        don't need a second request to address each item. For the full
        per-item projection (input/output/cost/timestamps), use the
        paginated ``GET /batches/{id}/items`` endpoint.
      operationId: getBatch
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Batch Id
        - name: X-Organization-Id
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: X-Organization-Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/models__batch__Batch__FullValidator'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: >-
            Forbidden — inspect response body `code` for the specific reason
            (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED,
            ORGANIZATION_MEMBERSHIP_REQUIRED, ROLE_UNRESOLVED,
            IMPERSONATION_READ_ONLY)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - HTTPBearer: []
components:
  schemas:
    models__batch__Batch__FullValidator:
      properties:
        id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Id
        org_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Org Id
        target_type_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Target Type Code
        target_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Target Type
        target_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Target Id
        status_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Code
        source_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Code
        items_total:
          anyOf:
            - type: integer
            - type: 'null'
          title: Items Total
        items_succeeded:
          anyOf:
            - type: integer
            - type: 'null'
          title: Items Succeeded
        items_failed:
          anyOf:
            - type: integer
            - type: 'null'
          title: Items Failed
        items_cancelled:
          anyOf:
            - type: integer
            - type: 'null'
          title: Items Cancelled
        input:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          title: Input
        resolved_template_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Resolved Template Id
        dispatch_provider_link_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Dispatch Provider Link Id
        cost:
          anyOf:
            - type: string
              pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
            - type: 'null'
          title: Cost
        output:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Output
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
        callback_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Callback Url
        duration_ms:
          anyOf:
            - type: integer
            - type: 'null'
          title: Duration Ms
        failure_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Failure Code
        failure_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Failure Message
        failure_stage_code:
          anyOf:
            - type: string
            - type: 'null'
          title: Failure Stage Code
        created_by:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Created By
        created_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Created At
        started_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Started At
        completed_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Completed At
        links:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Links
        items:
          anyOf:
            - items:
                $ref: '#/components/schemas/BatchItemHandle'
              type: array
            - type: 'null'
          title: Items
      type: object
      title: FullValidator
      description: Response shape.
    ErrorResponse:
      properties:
        code:
          type: string
          title: Code
        message:
          type: string
          title: Message
        errors:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          title: Errors
      type: object
      required:
        - code
        - message
      title: ErrorResponse
      description: Standard error envelope — matches exception handler output.
    BatchItemHandle:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        sequence_index:
          type: integer
          title: Sequence Index
        client_ref:
          anyOf:
            - type: string
            - type: 'null'
          title: Client Ref
        run_id:
          type: string
          format: uuid
          title: Run Id
        status_code:
          type: string
          title: Status Code
      type: object
      required:
        - id
        - sequence_index
        - run_id
        - status_code
      title: BatchItemHandle
      description: |-
        Lean per-item correlation handle for POST /batches responses and
        ``GET /batches/{id}`` inline items. For the full per-item projection
        (input/output/cost/timestamps), use ``GET /batches/{id}/items``.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````