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

# List the models one provider serves

> The models a key pinned to `provider` can still call.

Scoped to providers that can be pinned, because that is the question this
answers — a slug outside that set is a 404 rather than an empty list, which
would read as "pinned and serves nothing".



## OpenAPI

````yaml /api/openapi.json get /v1/providers/{provider}/models
openapi: 3.1.0
info:
  title: MeshAPI
  description: One key, all AI models.
  version: 0.1.0
servers:
  - url: https://api.meshapi.ai
security:
  - BearerAuth: []
paths:
  /v1/providers/{provider}/models:
    get:
      tags:
        - Providers
      summary: List the models one provider serves
      description: >-
        The models a key pinned to `provider` can still call.


        Scoped to providers that can be pinned, because that is the question
        this

        answers — a slug outside that set is a 404 rather than an empty list,
        which

        would read as "pinned and serves nothing".
      operationId: list_provider_models
      parameters:
        - name: provider
          in: path
          required: true
          schema:
            type: string
            title: Provider
        - in: header
          name: X-Mesh-Version
          required: false
          schema:
            type: string
            enum:
              - 2026-08
              - 2026-09
            default: 2026-08
          example: 2026-09
          description: >-
            Dated version of the API contract to pin this request to. Omit it
            and the request is served under `2026-08` — the oldest supported
            version, so an existing integration is never moved by a release. A
            malformed or unsupported value is rejected with `400
            invalid_api_version` rather than falling back silently. The version
            actually served is echoed as `X-Mesh-Version` on every response,
            including errors.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderModelsOut'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '503':
          description: >-
            The calling key's policy names a brand wildcard and the catalog
            brand map is not loaded yet — retry
          content:
            application/json:
              example:
                error:
                  code: model_policy_unavailable
                  message: Model policy cannot be evaluated right now. Please retry.
                request_id: req_01ARZ3NDEKTSV4RRFFQ69G5FAV
      security:
        - BearerAuth: []
components:
  schemas:
    ProviderModelsOut:
      properties:
        provider:
          type: string
          title: Provider
        model_ids:
          items:
            type: string
          type: array
          title: Model Ids
          description: >-
            The LISTED models this provider serves, sorted — the same set `GET
            /v1/models` shows you, so the two agree. A model requested outside
            what the provider serves is refused with 400
            `model_not_available_on_pinned_provider` rather than rerouted.
      type: object
      required:
        - provider
        - model_ids
      title: ProviderModelsOut
      description: The models one provider serves.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Enter your MeshAPI key (`rsk_...`) or, for the admin-keys endpoints, a
        dashboard session token — sent as `Authorization: Bearer <token>`.

````