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

# List account-wide batches

> List every batch across all definitions for the caller's account, newest first, with opaque cursor pagination (data family — D-01/D-04). Filter by `status`, `definition_id`, `source`, and `since` (a `created_at >=` lower bound); page forward by passing the previous response's `next_cursor`. `total` is always null on this endpoint (D-01) — read `next_cursor != null` to know more rows exist. Only the caller's account batches are ever returned.



## OpenAPI

````yaml /openapi.json get /batches
openapi: 3.1.0
info:
  title: GetDialed Flows API
  version: 0.1.0
servers:
  - url: https://api.getdialed.ai/flows
    description: Production
security: []
paths:
  /batches:
    get:
      tags:
        - batches
      summary: List account-wide batches
      description: >-
        List every batch across all definitions for the caller's account, newest
        first, with opaque cursor pagination (data family — D-01/D-04). Filter
        by `status`, `definition_id`, `source`, and `since` (a `created_at >=`
        lower bound); page forward by passing the previous response's
        `next_cursor`. `total` is always null on this endpoint (D-01) — read
        `next_cursor != null` to know more rows exist. Only the caller's account
        batches are ever returned.
      operationId: list_all_batches_batches_get
      parameters:
        - name: status
          in: query
          required: false
          schema:
            anyOf:
              - enum:
                  - pending
                  - scheduled
                  - running
                  - completed
                  - partially_failed
                  - failed
                  - cancelled
                type: string
              - type: 'null'
            title: Status
        - name: definition_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Definition Id
        - name: source
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Source
        - name: since
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                format: date-time
              - type: 'null'
            title: Since
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 500
            minimum: 1
            default: 50
            title: Limit
        - name: cursor
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Cursor
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Page_BatchResponse_'
        '400':
          description: >-
            The `cursor` query param is malformed (bad base64/JSON, wrong shape,
            or non-ISO timestamp) — rejected by the shared hardened codec before
            the query runs
          content:
            application/json:
              example:
                detail: Invalid cursor
        '401':
          description: Missing or invalid authentication
          content:
            application/json:
              example:
                detail: Authentication required
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '429':
          description: Rate limit exceeded — retry after the Retry-After header
          headers:
            Retry-After:
              description: Seconds to wait before retrying
              schema:
                type: integer
          content:
            application/json:
              example:
                detail: 'Rate limit exceeded: 100 per 1 minute'
      security:
        - APIKeyHeader: []
        - HTTPBearer: []
components:
  schemas:
    Page_BatchResponse_:
      properties:
        items:
          items:
            $ref: '#/components/schemas/BatchResponse'
          type: array
          title: Items
        total:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total
        limit:
          type: integer
          title: Limit
        skip:
          type: integer
          title: Skip
        next_cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Next Cursor
      type: object
      required:
        - items
        - limit
        - skip
      title: Page[BatchResponse]
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    BatchResponse:
      properties:
        id:
          type: string
          title: Id
        definition_id:
          type: string
          title: Definition Id
        org_id:
          type: string
          title: Org Id
        trigger_id:
          type: string
          title: Trigger Id
        trigger_type:
          type: string
          title: Trigger Type
        trigger_source:
          anyOf:
            - type: string
            - type: 'null'
          title: Trigger Source
        schedule_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Schedule Id
        metadata:
          additionalProperties: true
          type: object
          title: Metadata
        status:
          type: string
          enum:
            - pending
            - scheduled
            - running
            - completed
            - partially_failed
            - failed
            - cancelled
          title: Status
        record_count:
          type: integer
          title: Record Count
        input_data:
          additionalProperties: true
          type: object
          title: Input Data
        records:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Records
        scheduled_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Scheduled 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
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - definition_id
        - org_id
        - trigger_id
        - trigger_type
        - metadata
        - status
        - record_count
        - input_data
        - records
        - scheduled_at
        - started_at
        - completed_at
        - created_at
        - updated_at
      title: BatchResponse
      example:
        completed_at: '2026-07-09T18:00:05Z'
        created_at: '2026-07-09T17:59:59Z'
        definition_id: def_a1b2c3d4
        id: batch_55667788
        input_data:
          list_name: callbacks
        metadata:
          campaign: spring-2026
        org_id: org_a1b2c3d4
        record_count: 2
        records:
          - phone: '+15555550100'
          - phone: '+15555550101'
        started_at: '2026-07-09T18:00:00Z'
        status: completed
        trigger_id: trigger_44556677
        trigger_type: api_call
        updated_at: '2026-07-09T18:00:05Z'
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
    HTTPBearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````