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

# List egocentric batches

> List egocentric batches with the Egocentric API.

List batches belonging to your organization, newest first by default. Use `order=asc` for oldest first. Use `created_after` to include items created at or after the specified timestamp.

When `has_more` is `true`, pass `last_id` as `after` to continue with the same filters and order. The default and maximum page size are both 100. See [pagination](https://docs.perceptron.inc/services/egocentric.md#list-batches-and-jobs).

For authentication, limits, and HTTP errors, see the [workflow](https://docs.perceptron.inc/services/egocentric.md) and [error guide](https://docs.perceptron.inc/services/egocentric-limits-and-errors.md).


## OpenAPI

````yaml api-reference/openapi.json GET /v1/egocentric/batches
openapi: 3.1.0
info:
  title: Perceptron API
  contact:
    name: Perceptron API Support
    email: support@perceptron.inc
  version: 1.0.0
servers:
  - url: https://api.perceptron.inc
security: []
tags:
  - name: Chat Completions
    description: Chat completions API (OpenAI-compatible)
  - name: Detection
    description: Native Perceptron image detection API
  - name: Models
    description: Model listing and metadata API
  - name: Files
    description: File upload, listing, retrieval, and deletion API
  - name: Egocentric
    description: Video annotation batches, jobs and results
paths:
  /v1/egocentric/batches:
    get:
      tags:
        - Egocentric
      summary: List egocentric batches
      description: List your batches in creation order.
      operationId: list_batches
      parameters:
        - name: limit
          in: query
          description: Maximum items per page; defaults to 100.
          required: false
          schema:
            type: integer
            format: int32
            maximum: 100
            minimum: 1
        - name: after
          in: query
          description: Return items after this identifier in the same order.
          required: false
          schema:
            type: string
        - name: order
          in: query
          description: Creation-time order; defaults to desc, newest first.
          required: false
          schema:
            $ref: '#/components/schemas/EgocentricSortOrder'
        - name: created_after
          in: query
          description: Include items created at or after this RFC 3339 time.
          required: false
          schema:
            type: string
            format: date-time
      responses:
        '200':
          description: Batch page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse_EgocentricBatch'
        '400':
          description: Invalid request or query parameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PerceptronErrorResponse'
        '401':
          description: Authentication required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PerceptronErrorResponse'
        '429':
          description: Request or submission limit reached
          headers:
            Retry-After:
              schema:
                type: string
              description: >-
                Seconds to wait before retrying; omitted for insufficient
                credits.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PerceptronErrorResponse'
        '500':
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PerceptronErrorResponse'
        '503':
          description: Temporarily unavailable
          headers:
            Retry-After:
              schema:
                type: string
              description: >-
                Seconds to wait before retrying; omitted for insufficient
                credits.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PerceptronErrorResponse'
      security:
        - ApiKeyAuth: []
components:
  schemas:
    EgocentricSortOrder:
      type: string
      title: Egocentric creation order
      description: >-
        Creation-time order: desc returns newest first, and asc returns oldest
        first.
      enum:
        - asc
        - desc
    ListResponse_EgocentricBatch:
      type: object
      description: One page of batches or jobs.
      required:
        - object
        - data
        - first_id
        - last_id
        - has_more
      properties:
        data:
          type: array
          items:
            type: object
            description: Progress, options, and timing for a batch of videos.
            required:
              - object
              - id
              - job_count
              - options
              - counts
              - done
              - created_at
              - started_at
              - execution_finished_at
              - finished_at
            properties:
              counts:
                $ref: '#/components/schemas/JobCounts'
                description: Job counts by public state, including zero counts.
              created_at:
                type: string
                format: date-time
                description: UTC time the batch was accepted.
              done:
                type: boolean
                description: True once every job has completed or failed.
              execution_finished_at:
                type:
                  - string
                  - 'null'
                format: date-time
                description: >-
                  Latest actual execution end once every job has a known end or
                  is confirmed never to have run.

                  Null if any end is unknown or no job ran.
              finished_at:
                type:
                  - string
                  - 'null'
                format: date-time
                description: Time the last job finished; null until done is true.
              id:
                $ref: '#/components/schemas/BatchId'
                description: Unique batch identifier.
              job_count:
                type: integer
                format: int32
                description: Number of submitted inputs and jobs.
                maximum: 1000
                minimum: 1
              object:
                type: string
                description: Object type, always egocentric.batch.
                example: egocentric.batch
              options:
                $ref: '#/components/schemas/EgocentricOptionsV1'
                description: >-
                  Options applied to every job, with defaults filled in at
                  acceptance.
              started_at:
                type:
                  - string
                  - 'null'
                format: date-time
                description: >-
                  Earliest known actual execution start across its jobs; null if
                  no start is known.
          description: Items on this page in the requested order.
        first_id:
          type: string
          description: First item's identifier, or an empty string for an empty page.
        has_more:
          type: boolean
          description: Whether more items follow this page in the same order.
        last_id:
          type: string
          description: >-
            Last item's identifier; pass it as after for the next page. Empty
            for an empty page.
        object:
          type: string
          description: Object type, always list.
          example: list
    PerceptronErrorResponse:
      type: object
      description: Native Perceptron error response format.
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/PerceptronErrorDetail'
    JobCounts:
      type: object
      description: Number of jobs in each public state; the counts add up to job_count.
      required:
        - queued
        - submitted
        - processing
        - completed
        - failed
      properties:
        completed:
          type: integer
          format: int32
          description: Jobs that finished successfully.
          minimum: 0
        failed:
          type: integer
          format: int32
          description: Jobs that finished without a result.
          minimum: 0
        processing:
          type: integer
          format: int32
          description: Jobs whose execution has started and that are not yet finished.
          minimum: 0
        queued:
          type: integer
          format: int32
          description: Jobs preparing inputs or waiting for capacity.
          minimum: 0
        submitted:
          type: integer
          format: int32
          description: Jobs accepted for execution and waiting to run.
          minimum: 0
    BatchId:
      type: string
    EgocentricOptionsV1:
      type: object
      description: Options used for annotation, including defaults applied at acceptance.
      required:
        - hand_tracking
        - hand_activity
      properties:
        hand_activity:
          type: boolean
          description: Whether hand activity annotations are included.
        hand_tracking:
          $ref: '#/components/schemas/HandTrackingOptions'
          description: >-
            Disabled, or enabled with the output format fixed when the batch was
            accepted.
      additionalProperties: false
    PerceptronErrorDetail:
      type: object
      description: Native Perceptron error detail.
      required:
        - message
      properties:
        code:
          type:
            - string
            - 'null'
        message:
          type: string
        param:
          type:
            - string
            - 'null'
        type:
          type:
            - string
            - 'null'
    HandTrackingOptions:
      oneOf:
        - type: boolean
          title: Hand tracking disabled
          enum:
            - false
        - type: object
          title: Hand tracking settings
          required:
            - output
          properties:
            output:
              type: string
              description: |-
                Hand tracking format: 2d includes per-frame boxes and keypoints;
                3d also includes a mesh and 3D joints.
              enum:
                - 2d
                - 3d
          additionalProperties: false
      description: >-
        Disabled hand tracking, or enabled hand tracking with an explicit output
        format.
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      description: Bearer token authentication using your Perceptron API key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.