> ## 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.

# Robot runs usage

> What your account's runs hold against its quota, and this month's metering. Storage is measured over time in GiB-months of 730 hours. Runs are metered, not charged.



## OpenAPI

````yaml /api-reference/openapi.yaml get /v1/robot/runs/usage
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/usage:
    get:
      tags:
        - Robot runs
      summary: Robot runs usage
      description: >-
        What your account's runs hold against its quota, and this month's
        metering. Storage is measured over time in GiB-months of 730 hours. Runs
        are metered, not charged.
      operationId: getRobotRunsUsage
      responses:
        '200':
          description: The account's usage.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RobotRunsUsage'
              example:
                bytes: 9349120
                files: 9
                quota_bytes: 107374182400
                reserved_bytes: 0
                month: 2026-10
                stored_gib_months: 0.000412
                peak_bytes: 9349120
                uploaded_bytes: 9349120
                writes: 9
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          description: '`storage_unavailable` or `auth_unavailable`. Retry with backoff.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    RobotRunsUsage:
      type: object
      required:
        - bytes
        - files
        - quota_bytes
        - month
        - stored_gib_months
        - peak_bytes
        - uploaded_bytes
        - writes
      properties:
        bytes:
          type: integer
          description: Bytes your runs' files hold now.
        files:
          type: integer
          description: Files your runs hold now.
        quota_bytes:
          type: integer
          description: The most your account's runs may hold.
        reserved_bytes:
          type: integer
          description: Quota held for unfinished uploads and temporary publication copies.
        month:
          type: string
          description: The calendar month (UTC) the next four figures cover, as YYYY-MM.
        stored_gib_months:
          type: number
          description: Storage held over the month so far
          in GiB-months of 730 hours.: null
        peak_bytes:
          type: integer
          description: The most your runs held this month.
        uploaded_bytes:
          type: integer
          description: Bytes uploaded this month
          replaced files included.: null
        writes:
          type: integer
          description: Files uploaded this month.
    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).
  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.