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

# List models

> The model catalog on the OpenRouter-compatible /api/v1 base. Needs no key.


## OpenAPI

```yaml openapi.json get /api/v1/models
openapi: 3.1.0
info:
  title: Ocean One API
  version: 2.3.1
servers:
  - url: https://api.plungeai.com
paths:
  /api/v1/models:
    get:
      operationId: get-api-v1-models
      tags:
        - Compat
      summary: Model catalog (proxied to inference-gateway) — the priced list routing candidates are drawn from.
      security: []
      responses:
        "200":
          description: OpenRouter's model list (guide 5.6)
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CompatModelList"
        "405":
          description: "method_not_allowed — the path serves one method: the Allow header names it, plus OPTIONS"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CompatError"
          headers:
            Allow:
              description: The method this path serves, plus OPTIONS
              schema:
                type: string
components:
  schemas:
    CompatError:
      type: object
      description: "OpenRouter's error envelope, worn by every /api/v1 error (guide 5.0, 5.7): a numeric `code` equal to the HTTP status, the Ocean detail in `metadata`. No X-Error-Code header."
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
              description: The HTTP status
            message:
              type: string
            metadata:
              type: object
              properties:
                error_type:
                  type: string
                  description: "OpenRouter's error type: authentication, payment_required, rate_limit_exceeded, not_found, invalid_request, …"
                ocean_code:
                  type: string
                  description: The /v1 envelope's string error.code
                ocean_type:
                  type: string
                request_id:
                  type: string
                  description: Equals the x-request-id header
              required:
                - error_type
                - ocean_code
                - request_id
              additionalProperties: true
          required:
            - code
            - message
            - metadata
          additionalProperties: true
      required:
        - error
    CompatModelList:
      type: object
      description: "GET /api/v1/models — OpenRouter's list shape (guide 5.6): no `object`; `links` and `total_count` beside `data`."
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              canonical_slug:
                type: string
              name:
                type: string
              created:
                type: integer
              description:
                type: string
              context_length:
                type:
                  - integer
                  - "null"
              architecture:
                type: object
              pricing:
                type: object
                description: USD per token, as decimal strings
                properties:
                  prompt:
                    type: string
                  completion:
                    type: string
                  input_cache_read:
                    type: string
                  input_cache_write:
                    type: string
                required:
                  - prompt
                  - completion
              top_provider:
                type: object
              per_request_limits:
                type:
                  - object
                  - "null"
              supported_parameters:
                type: array
                items:
                  type: string
              default_parameters:
                type:
                  - object
                  - "null"
              links:
                type: object
                properties:
                  details:
                    type: string
              supported_voices:
                type:
                  - array
                  - "null"
            required:
              - id
              - canonical_slug
              - name
              - pricing
        links:
          type: object
          properties:
            next:
              type:
                - string
                - "null"
        total_count:
          type: integer
      required:
        - data
        - links
        - total_count
```
