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

# Get a robot run

> Returns a completed run's manifest. Each file's `path`, `size` and `sha256`, and the episode card it was completed with.



## OpenAPI

````yaml /api-reference/openapi.yaml get /v1/robot/runs/{robot}/{run}
openapi: 3.1.0
info:
  title: Abstract API
  version: 1.0.0
  summary: Robot action models and LLMs behind one API key.
  description: >
    `POST /v1/chat/completions` serves the robot action models. `POST
    /v1/responses` and

    `GET /v1/responses/{response_id}` serve the LLM models through the OpenAI
    Responses API.

    `GET /v1/models` lists the LLM model ids.


    The robot models also run over a WebSocket at
    `wss://api.abstract.inc/v1/responses`.

    OpenAPI does not describe it. See [Sessions over
    WebSocket](/robots/sessions).


    `/v1/robot/runs` stores your robot runs (episode logs, the Rerun recording
    with the

    camera video) under your account, and lists, downloads and deletes them.
    Only the key's

    account reaches its runs. An account stores up to 100 GiB of runs;

    `GET /v1/robot/runs/usage` shows what it holds.
  contact:
    name: Abstract
    url: https://abstract.inc
servers:
  - url: https://api.abstract.inc
security:
  - bearerAuth: []
tags:
  - name: Robot models
  - name: Robot runs
  - name: LLM models
paths:
  /v1/robot/runs/{robot}/{run}:
    get:
      tags:
        - Robot runs
      summary: Get a robot run
      description: >-
        Returns a completed run's manifest. Each file's `path`, `size` and
        `sha256`, and the episode card it was completed with.
      operationId: getRobotRun
      parameters:
        - $ref: '#/components/parameters/Robot'
        - $ref: '#/components/parameters/Run'
      responses:
        '200':
          description: The run's manifest.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RobotRunManifest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          description: '`run_not_found`: no completed run by that name in your account.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: '`invalid_request`: a name, path, query or body breaks its format.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: '`storage_unavailable` or `auth_unavailable`. Retry with backoff.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    Robot:
      name: robot
      in: path
      required: true
      description: Your robot's name, for example `t800`.
      schema:
        type: string
        pattern: ^[a-z0-9][a-z0-9._-]{0,63}$
    Run:
      name: run
      in: path
      required: true
      description: The run's name, its start time as `YYYYMMDD-HHMMSS`.
      schema:
        type: string
        pattern: ^\d{8}-\d{6}$
  schemas:
    RobotRunManifest:
      type: object
      required:
        - robot
        - run
        - files
        - episode
        - completed_at
      properties:
        robot:
          type: string
        run:
          type: string
        files:
          type: array
          items:
            $ref: '#/components/schemas/RobotRunFile'
        episode:
          type: object
        completed_at:
          type: string
          format: date-time
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - message
            - type
            - code
          properties:
            message:
              type: string
              description: For people. It can change.
            type:
              type: string
            param:
              type:
                - string
                - 'null'
              description: The request field at fault, when one is.
            code:
              type: string
              description: Branch on this. See [Errors and limits](/errors).
    RobotRunFile:
      type: object
      required:
        - path
        - size
        - sha256
      properties:
        path:
          type: string
        size:
          type: integer
        sha256:
          type: string
          pattern: ^[0-9a-f]{64}$
  responses:
    Unauthorized:
      description: '`missing_api_key` or `invalid_api_key`.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              message: Invalid API key.
              type: invalid_request_error
              code: invalid_api_key
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Your Abstract API key. Get it with `abstract login`, pass it as
        `$(abstract token)`.

````

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