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

# Retrieve a model

> One entry of [List models](/api-reference/inference/models/list-models). Model IDs contain a slash
(`primalabs-ai/DeepSeek-V4.1-Flash-1017`), so the path is the ID as is:
`/models/primalabs-ai/DeepSeek-V4.1-Flash-1017`.




## OpenAPI

````yaml /api-reference/inference/openapi.yaml get /models/{owner}/{model}
openapi: 3.1.0
info:
  title: PrimaLabs Inference API
  version: 1.0.0
  description: >
    Serverless LLM inference on PrimaLabs. The API is OpenAI-compatible: point
    any

    OpenAI SDK at the base URL below and pass a PrimaLabs API key as the bearer

    token. Anthropic (`/messages`) and OpenAI Responses (`/responses`) formats
    are

    also accepted as passthroughs.


    This is a **curated** spec covering the endpoints we serve; it is maintained
    by

    hand. The current model list is published at

    https://docs.primalabs.ai/inference/models.
servers:
  - url: https://api.primalabs.ai/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Chat
    description: OpenAI-compatible chat completions — the primary endpoint.
  - name: Completions
    description: Legacy text completions.
  - name: Models
    description: The models your key can call, with context, pricing and capabilities.
  - name: Account
    description: Your account's balance.
  - name: Passthrough
    description: Anthropic and OpenAI Responses formats, forwarded as-is.
paths:
  /models/{owner}/{model}:
    get:
      tags:
        - Models
      summary: Retrieve a model
      description: >
        One entry of [List models](/api-reference/inference/models/list-models).
        Model IDs contain a slash

        (`primalabs-ai/DeepSeek-V4.1-Flash-1017`), so the path is the ID as is:

        `/models/primalabs-ai/DeepSeek-V4.1-Flash-1017`.
      operationId: retrieveModel
      parameters:
        - name: owner
          in: path
          required: true
          description: The part of the model ID before the slash.
          schema:
            type: string
            example: primalabs-ai
        - name: model
          in: path
          required: true
          description: The part of the model ID after the slash.
          schema:
            type: string
            example: DeepSeek-V4.1-Flash-1017
      responses:
        '200':
          description: The model.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Model'
              example:
                id: primalabs-ai/DeepSeek-V4.1-Flash-1017
                object: model
                created: 1677610602
                owned_by: primalabs-ai
                context_length: 1048576
                pricing:
                  prompt: '0.000001'
                  completion: '0.000002'
                  input_cache_read: '0.0000001'
                mode: null
                supported_endpoints:
                  - /v1/chat/completions
                  - /v1/messages
                  - /v1/responses
                supports_function_calling: true
                supports_reasoning: true
                supports_vision: true
                supports_prompt_caching: true
                supports_response_schema: true
                max_output_tokens: 1048576
                input_modalities:
                  - text
                  - image
                reasoning_toggle:
                  /v1/messages: true
                  /v1/responses: true
                  /v1/chat/completions: true
                reasoning_effort_accepted:
                  /v1/responses:
                    - none
                    - low
                    - high
                    - xhigh
                    - max
                  /v1/chat/completions:
                    - none
                    - low
                    - high
                    - xhigh
                    - max
                output_modalities:
                  - text
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          description: |
            No such model, or your key cannot call it. The two look the same.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error:
                  message: >-
                    The model 'primalabs-ai/does-not-exist' does not exist or
                    you do not have access to it.
                  type: invalid_request_error
                  param: model
                  code: model_not_found
components:
  schemas:
    Model:
      type: object
      description: >
        A model your key can call. The capability fields (`supports_*`,
        `input_modalities`,

        `reasoning_*`, `max_output_tokens`) are present only once they have been
        checked

        against the live model; see [Model
        capabilities](/inference/models#model-capabilities).
      properties:
        id:
          type: string
          example: primalabs-ai/DeepSeek-V4.1-Flash-1017
        object:
          type: string
          example: model
        created:
          type: integer
        owned_by:
          type: string
          example: primalabs-ai
        context_length:
          type:
            - integer
            - 'null'
          description: The context window in tokens, or `null` when it is not known.
          example: 1048576
        pricing:
          type: object
          description: >
            USD per token, as decimal strings. A price that is not set is
            `null`. The

            example values are placeholders, not current rates.
          properties:
            prompt:
              type:
                - string
                - 'null'
              example: '0.000001'
            completion:
              type:
                - string
                - 'null'
              example: '0.000002'
            input_cache_read:
              type:
                - string
                - 'null'
              example: '0.0000001'
        mode:
          type:
            - string
            - 'null'
          description: >-
            The model's mode, when one is set. `null` for the chat models in the
            catalog.
        supported_endpoints:
          type:
            - array
            - 'null'
          description: >-
            The endpoints you can call this model on. One that failed its check
            is left out. `null` when the model has no endpoint list.
          items:
            type: string
          example:
            - /v1/chat/completions
            - /v1/messages
            - /v1/responses
        supports_function_calling:
          type: boolean
        supports_response_schema:
          type: boolean
        supports_vision:
          type: boolean
        supports_reasoning:
          type: boolean
        supports_prompt_caching:
          type: boolean
        input_modalities:
          type: array
          items:
            type: string
            enum:
              - text
              - image
              - audio
              - video
          example:
            - text
            - image
        output_modalities:
          type: array
          items:
            type: string
          example:
            - text
        reasoning_toggle:
          type: object
          description: Per endpoint, whether that endpoint's switch turns thinking off.
          additionalProperties:
            type: boolean
          example:
            /v1/chat/completions: true
            /v1/messages: true
            /v1/responses: true
        reasoning_effort_accepted:
          type: object
          description: >-
            Per endpoint, the effort values that endpoint's own parameter
            accepts without a `400` (`reasoning_effort` on chat completions,
            `reasoning.effort` on responses).
          additionalProperties:
            type: array
            items:
              type: string
          example:
            /v1/chat/completions:
              - none
              - low
              - high
              - xhigh
              - max
            /v1/responses:
              - none
              - low
              - high
              - xhigh
              - max
        reasoning_effort_effective:
          type: array
          description: >
            The `reasoning_effort` values that change the answer; every other
            accepted value

            behaves like one of these. See [Effort
            levels](/inference/models#effort-levels).
          items:
            type: string
        max_output_tokens:
          type: integer
          example: 1048576
      additionalProperties: true
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            type:
              type: string
            param:
              type:
                - string
                - 'null'
            code:
              type: string
  responses:
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              message: Authentication Error, Invalid proxy server token passed.
              type: token_not_found_in_db
              param: key
              code: '401'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Your PrimaLabs API key, sent as `Authorization: Bearer <key>`.'

````

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