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

# Listar modelos

> Devuelve el catálogo público de modelos actual.

Usa este endpoint para obtener el catálogo público de modelos actual.

El catálogo incluye los alias latest a nivel de proveedor antes de los IDs de modelo concretos:

* `openai-latest`
* `claude-latest`
* `google-latest`

Usa un alias latest cuando quieras que Capriole AI elija nuestro modelo insignia recomendado para ese proveedor. Usa un ID de modelo concreto cuando necesites una versión exacta.

| Elección de modelo                                  | Ideal para                                                                               |
| --------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| `openai-latest`, `claude-latest`, `google-latest`   | Configurar una vez y dejar que Capriole AI te mantenga en el modelo insignia recomendado |
| IDs de modelo concretos como `openai/gpt-5.6-terra` | Fijar una versión exacta de modelo                                                       |

Los alias latest se resuelven así en `POST /v1/chat` y `POST /v1/chat/completions`:

| Alias latest    | Se resuelve a                   |
| --------------- | ------------------------------- |
| `openai-latest` | `openai/gpt-5.6-terra`          |
| `claude-latest` | `anthropic/claude-fable-5`      |
| `google-latest` | `google/gemini-3.1-pro-preview` |

| Endpoint                         | Alias latest                                      |
| -------------------------------- | ------------------------------------------------- |
| `POST /v1/chat`                  | `openai-latest`, `claude-latest`, `google-latest` |
| `POST /v1/chat/completions`      | `openai-latest`, `claude-latest`, `google-latest` |
| `POST /v1/responses`             | `openai-latest`                                   |
| `POST /v1/messages`              | `claude-latest`                                   |
| `POST /v1/messages/count_tokens` | `claude-latest`                                   |

Los endpoints de Anthropic Messages también aceptan IDs concretos de Claude Messages sin prefijo, como `claude-fable-5`, `claude-opus-5`, `claude-opus-4-8`, `claude-opus-4-7`, `claude-opus-4-6` y `claude-sonnet-4-6`.

En `POST /v1/messages` y `POST /v1/messages/count_tokens`, `claude-latest` se resuelve a `claude-fable-5`, igual que el alias latest de Chat y Chat Completions.

Usa los IDs de alias sin prefijo que se muestran arriba. Prefijos de proveedor como `openai/openai-latest` son patrones de selector del lado del cliente, no IDs de modelo de Capriole AI.


## OpenAPI

````yaml api-reference/openapi.json GET /v1/models
openapi: 3.1.0
info:
  title: Capriole AI API
  description: >-
    Public API for model discovery, text chat, and protocol-compatible model
    endpoints.
  version: 1.0.0
servers:
  - url: https://api.caprioletech.com
security: []
paths:
  /v1/models:
    get:
      summary: List public models
      description: Returns the current public model catalog.
      operationId: listModels
      responses:
        '200':
          description: Public model list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPublicModelsResponse'
              examples:
                default:
                  value:
                    data:
                      - id: openai-latest
                      - id: openai/gpt-5.6-terra
                      - id: openai/gpt-5.6-luna
                      - id: openai/gpt-5.5
                      - id: openai/gpt-5.4-mini
                      - id: claude-latest
                      - id: anthropic/claude-fable-5
                      - id: anthropic/claude-opus-5
                      - id: anthropic/claude-opus-4-8
                      - id: anthropic/claude-opus-4-7
                      - id: anthropic/claude-opus-4-6
                      - id: anthropic/claude-sonnet-4-6
                      - id: google-latest
                      - id: google/gemini-3.1-pro-preview
                      - id: google/gemini-3.5-flash
                      - id: xai/grok-4.5
                      - id: zai/glm-5.2
                      - id: moonshot/kimi-k3
        '429':
          $ref: '#/components/responses/RateLimitErrorResponse'
        '500':
          $ref: '#/components/responses/InternalServerErrorResponse'
components:
  schemas:
    ListPublicModelsResponse:
      type: object
      required:
        - data
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/PublicModelItem'
    PublicModelItem:
      type: object
      required:
        - id
      properties:
        id:
          type: string
          description: Model identifier
    DetailError:
      type: object
      required:
        - detail
      properties:
        detail:
          type: string
          description: Error detail from the API
  responses:
    RateLimitErrorResponse:
      description: Rate limit error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DetailError'
          examples:
            rateLimitExceeded:
              value:
                detail: 'Rate limit exceeded: 100 per 1 minute'
    InternalServerErrorResponse:
      description: Internal server error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DetailError'
          examples:
            internalServerError:
              value:
                detail: An internal server error occurred. Please try again later.

````