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

# List available models

> Returns the models and concrete builds offered by this deployment.



## OpenAPI

````yaml /openapi/galileo-v1.yaml get /v1/models
openapi: 3.1.0
info:
  title: Galileo API
  version: 0.1.0
  summary: Evaluate generated videos with Galileo.
  description: |
    Submit generated videos for visual-glitch and prompt-misalignment analysis.
    Evaluation jobs run asynchronously. Retrieve a job until its status reaches
    `completed`, `partial`, or `failed`.
  contact:
    name: Physion Labs support
    email: support@physionlabs.ai
  license:
    name: Proprietary
    identifier: LicenseRef-Proprietary
servers:
  - url: https://api.physionlabs.ai
    description: Production
  - url: https://api-dev.physionlabs.ai
    description: Development
security:
  - bearerAuth: []
tags:
  - name: Platform
    description: Service health and account metadata.
  - name: Evaluations
    description: Submit videos and retrieve Galileo results.
  - name: Videos
    description: Upload a video once and reference it from evaluations.
paths:
  /v1/models:
    get:
      tags:
        - Platform
      summary: List available models
      description: Returns the models and concrete builds offered by this deployment.
      operationId: listModels
      responses:
        '200':
          description: Available models and builds.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelList'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    ModelList:
      type: object
      required:
        - object
        - builds
        - default_build
        - data
      properties:
        object:
          type: string
          const: list
        builds:
          type: array
          items:
            $ref: '#/components/schemas/ModelBuild'
        default_build:
          type:
            - string
            - 'null'
          description: >-
            The build an evaluation gets when it names no `model_version`, or
            NULL when that is the cluster's to state — see `Model.version`.
            Describes the deployment; it is not what a run is filed under.
        data:
          type: array
          items:
            $ref: '#/components/schemas/Model'
    ModelBuild:
      type: object
      required:
        - id
        - label
        - version
      properties:
        id:
          $ref: '#/components/schemas/ModelId'
        label:
          type: string
        version:
          type:
            - string
            - 'null'
          description: >-
            The build the model runs, or NULL when that is not ours to state.

            Null is the current answer for `galileo` and will stay so while it
            is the default: the version belongs to the cluster serving it, and
            answering from our side would mean publishing a number nobody
            checked. Nothing keys a run on this -- an evaluation carries its own
            `model_version`, taken from the submission that resolved it, and
            that is the one to read.
        note:
          type: string
    Model:
      type: object
      required:
        - id
        - object
        - version
        - detectors
        - input
      properties:
        id:
          $ref: '#/components/schemas/ModelId'
        object:
          type: string
          const: model
        version:
          type:
            - string
            - 'null'
          description: >-
            The build the model runs, or NULL when that is not ours to state.

            Null is the current answer for `galileo` and will stay so while it
            is the default: the version belongs to the cluster serving it, and
            answering from our side would mean publishing a number nobody
            checked. Nothing keys a run on this -- an evaluation carries its own
            `model_version`, taken from the submission that resolved it, and
            that is the one to read.
        detectors:
          type: array
          items:
            $ref: '#/components/schemas/GlitchType'
        input:
          type: object
          required:
            - formats
            - max_duration_sec
            - max_file_bytes
            - aspect_ratios
          properties:
            formats:
              type: array
              items:
                type: string
            max_duration_sec:
              type: number
              minimum: 0
            max_file_bytes:
              type: integer
              minimum: 1
            aspect_ratios:
              type: array
              items:
                type: string
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/Error'
        quota:
          $ref: '#/components/schemas/RateLimitWindow'
    ModelId:
      type: string
      enum:
        - galileo
        - gemini
      default: galileo
    GlitchType:
      type: string
      enum:
        - visual_glitch
        - prompt_misalignment
    Error:
      type: object
      required:
        - type
        - code
        - message
        - request_id
      properties:
        type:
          $ref: '#/components/schemas/ErrorType'
        code:
          $ref: '#/components/schemas/ErrorCode'
        message:
          type: string
        request_id:
          type: string
    RateLimitWindow:
      type: object
      required:
        - limit
        - used
        - remaining
        - reset_at
        - reset_in_sec
        - window_sec
        - unlimited
      properties:
        limit:
          type: integer
          minimum: 0
        used:
          type: integer
          minimum: 0
        remaining:
          type: integer
          minimum: 0
        reset_at:
          type:
            - integer
            - 'null'
          minimum: 0
        reset_in_sec:
          type:
            - integer
            - 'null'
          minimum: 0
        window_sec:
          type: integer
          minimum: 1
        unlimited:
          type: boolean
    ErrorType:
      type: string
      enum:
        - invalid_request_error
        - authentication_error
        - rate_limit_error
        - api_error
    ErrorCode:
      type: string
      enum:
        - invalid_body
        - unknown_model
        - missing_video
        - missing_prompt
        - prompt_too_long
        - invalid_glitch_types
        - video_too_long
        - invalid_video
        - not_found
        - not_implemented
        - insufficient_credits
        - missing_api_key
        - invalid_api_key
        - unauthenticated
        - rate_limited
        - concurrency_limit
        - internal_error
        - model_unavailable
        - model_output_invalid
        - model_timeout
        - run_abandoned
  responses:
    Unauthorized:
      description: The API key is missing, invalid, or revoked.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: The API encountered an unexpected error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Galileo API key
      description: Use a key created in the Playground. Keys begin with `gk_`.

````