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

# Model Catalog SDK Reference

> SDK reference for the Model Catalog API, available in Node.js and Python.

## Model Catalog

### List Model Catalog

Returns every model orq offers, optionally filtered, searched and sorted. Deprecated models are never listed; fetch one directly by id to inspect it. Unset `limit` returns the whole catalog. Use `starting_after` or `ending_before` to page through the collection.

<CodeGroup>
  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  from orq_ai_sdk import Orq
  import os

  with Orq(
      api_key=os.getenv("ORQ_API_KEY", ""),
  ) as orq:

      res = orq.model_catalog.list()

      # Handle response
      print(res)

  ```

  ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import { Orq } from "@orq-ai/node";

  const orq = new Orq({
    apiKey: process.env["ORQ_API_KEY"] ?? "",
  });

  async function run() {
    const result = await orq.modelCatalog.list();

    console.log(result);
  }

  run();
  ```
</CodeGroup>

<Expandable title="Parameters">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "limit": Optional[int],
        "starting_after": Optional[str],
        "ending_before": Optional[str],
        "provider": List[str],  # optional
        "endpoint": List[str],  # optional
        "input_modality": List[str],  # optional
        "output_modality": List[str],  # optional
        "location": List[str],  # optional
        "feature": List[str],  # optional
        "supported_parameter": List[str],  # optional
        "tier": List[str],  # optional
        "offering_of": Optional[str],
        "search": Optional[str],
        "sort_by": Optional[str],
        "order": Optional[str],
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      limit?: number;
      startingAfter?: string;
      endingBefore?: string;
      provider?: string[];
      endpoint?: string[];
      inputModality?: string[];
      outputModality?: string[];
      location?: string[];
      feature?: string[];
      supportedParameter?: string[];
      tier?: string[];
      offeringOf?: string;
      search?: string;
      sortBy?: string;
      order?: string;
    }
    ```
  </CodeGroup>
</Expandable>

<Expandable title="Response">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "object": str,
        "data": [{
            "id": str,
            "created": str,
            "deprecation": Optional[str],
            "name": str,
            "description": str,
            "provider": {
                "id": str,
                "logo": str,
            },
            "endpoints": List[str],
            "modalities": {
                "input": List[str],
                "output": List[str],
            },
            "offering_of": str,
            "pricing": Dict[str, Any],  # optional
            "supported_parameters": List[str],
            "supported_tiers": List[str],
            "context_window": Optional[str],
            "location": List[str],
            "artificial_intelligence": Dict[str, Any],  # optional
            "features": List[str],
            "deprecated": bool,
        }],
        "has_more": bool,
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      object: string;
      data: {
        id: string;
        created: string;
        deprecation?: string;
        name: string;
        description: string;
        provider: {
          id: string;
          logo: string;
        };
        endpoints: string[];
        modalities: {
          input: string[];
          output: string[];
        };
        offeringOf: string;
        pricing?: Record<string, unknown>;
        supportedParameters: string[];
        supportedTiers: string[];
        contextWindow?: string;
        location: string[];
        artificialIntelligence?: Record<string, unknown>;
        features: string[];
        deprecated: boolean;
      }[];
      hasMore: boolean;
    }
    ```
  </CodeGroup>
</Expandable>

### List Offerings

Returns every provider offering of one base model, identified by `&lt;developer&gt;/&lt;stem&gt;` (for example `anthropic/claude-opus-4-7`). Deprecated models are never listed.

<CodeGroup>
  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  from orq_ai_sdk import Orq
  import os

  with Orq(
      api_key=os.getenv("ORQ_API_KEY", ""),
  ) as orq:

      res = orq.model_catalog.list_offerings(model="Cruze")

      # Handle response
      print(res)

  ```

  ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import { Orq } from "@orq-ai/node";

  const orq = new Orq({
    apiKey: process.env["ORQ_API_KEY"] ?? "",
  });

  async function run() {
    const result = await orq.modelCatalog.listOfferings({
      model: "Cruze",
    });

    console.log(result);
  }

  run();
  ```
</CodeGroup>

<Expandable title="Parameters">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "model": str,  # required
        "limit": Optional[int],
        "starting_after": Optional[str],
        "ending_before": Optional[str],
        "provider": List[str],  # optional
        "endpoint": List[str],  # optional
        "input_modality": List[str],  # optional
        "output_modality": List[str],  # optional
        "location": List[str],  # optional
        "feature": List[str],  # optional
        "supported_parameter": List[str],  # optional
        "tier": List[str],  # optional
        "search": Optional[str],
        "sort_by": Optional[str],
        "order": Optional[str],
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      model: string;  // required
      limit?: number;
      startingAfter?: string;
      endingBefore?: string;
      provider?: string[];
      endpoint?: string[];
      inputModality?: string[];
      outputModality?: string[];
      location?: string[];
      feature?: string[];
      supportedParameter?: string[];
      tier?: string[];
      search?: string;
      sortBy?: string;
      order?: string;
    }
    ```
  </CodeGroup>
</Expandable>

<Expandable title="Response">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "object": str,
        "data": [{
            "id": str,
            "created": str,
            "deprecation": Optional[str],
            "name": str,
            "description": str,
            "provider": {
                "id": str,
                "logo": str,
            },
            "endpoints": List[str],
            "modalities": {
                "input": List[str],
                "output": List[str],
            },
            "offering_of": str,
            "pricing": Dict[str, Any],  # optional
            "supported_parameters": List[str],
            "supported_tiers": List[str],
            "context_window": Optional[str],
            "location": List[str],
            "artificial_intelligence": Dict[str, Any],  # optional
            "features": List[str],
            "deprecated": bool,
        }],
        "has_more": bool,
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      object: string;
      data: {
        id: string;
        created: string;
        deprecation?: string;
        name: string;
        description: string;
        provider: {
          id: string;
          logo: string;
        };
        endpoints: string[];
        modalities: {
          input: string[];
          output: string[];
        };
        offeringOf: string;
        pricing?: Record<string, unknown>;
        supportedParameters: string[];
        supportedTiers: string[];
        contextWindow?: string;
        location: string[];
        artificialIntelligence?: Record<string, unknown>;
        features: string[];
        deprecated: boolean;
      }[];
      hasMore: boolean;
    }
    ```
  </CodeGroup>
</Expandable>

### Retrieve a Model Catalog

Retrieves a single catalog entry by its id, `&lt;provider&gt;/&lt;model&gt;` (for example `openai/gpt-4o`). Unlike the list endpoints this also resolves deprecated models; check `deprecated` and `deprecation` on the response.

<CodeGroup>
  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  from orq_ai_sdk import Orq
  import os

  with Orq(
      api_key=os.getenv("ORQ_API_KEY", ""),
  ) as orq:

      res = orq.model_catalog.get(id="<id>")

      # Handle response
      print(res)

  ```

  ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import { Orq } from "@orq-ai/node";

  const orq = new Orq({
    apiKey: process.env["ORQ_API_KEY"] ?? "",
  });

  async function run() {
    const result = await orq.modelCatalog.get({
      id: "<id>",
    });

    console.log(result);
  }

  run();
  ```
</CodeGroup>

<Expandable title="Parameters">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "id": str,  # required
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      id: string;  // required
    }
    ```
  </CodeGroup>
</Expandable>

<Expandable title="Response">
  <CodeGroup>
    ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
        "model": {
            "id": str,
            "created": str,
            "deprecation": Optional[str],
            "name": str,
            "description": str,
            "provider": {
                "id": str,
                "logo": str,
            },
            "endpoints": List[str],
            "modalities": {
                "input": List[str],
                "output": List[str],
            },
            "offering_of": str,
            "pricing": Dict[str, Any],  # optional
            "supported_parameters": List[str],
            "supported_tiers": List[str],
            "context_window": Optional[str],
            "location": List[str],
            "artificial_intelligence": Dict[str, Any],  # optional
            "features": List[str],
            "deprecated": bool,
        },
    }
    ```

    ```typescript Node.js theme={"theme":{"light":"github-light","dark":"github-dark"}}
    {
      model: {
        id: string;
        created: string;
        deprecation?: string;
        name: string;
        description: string;
        provider: {
          id: string;
          logo: string;
        };
        endpoints: string[];
        modalities: {
          input: string[];
          output: string[];
        };
        offeringOf: string;
        pricing?: Record<string, unknown>;
        supportedParameters: string[];
        supportedTiers: string[];
        contextWindow?: string;
        location: string[];
        artificialIntelligence?: Record<string, unknown>;
        features: string[];
        deprecated: boolean;
      };
    }
    ```
  </CodeGroup>
</Expandable>
