AI Endpoints - Catalog API

View as Markdown

Learn how to use the Catalog API to browse the OVHcloud AI Endpoints catalog and inspect the metadata and supported features of each model

Introduction

https://oai.endpoints.kepler.ai.cloud.ovh.net/v1 is the base endpoint used to call AI Endpoints models (see the AI Endpoints - Getting started and AI Endpoints - Responses API guides). This article does not cover that endpoint; instead, it covers the separate Catalog API, a discovery service for browsing available models and their metadata.

The catalog URL https://catalog.endpoints.ai.ovh.net/rest/v1/models_v2 provides information and metadata about AI Endpoints models. This API allows you to list models, supported features, pricing, and metadata specific to each model.

Warning

The Catalog API is a discovery endpoint, not a text-generation endpoint. It returns metadata for models and capabilities rather than generated content.

This API may also change, including through breaking changes.

Objective

This documentation shows how to query the Catalog API, read model metadata, and filter the response client-side, with examples in Python, JavaScript, and cURL.

Requirements

The examples in this guide can be used with any of the following environments:

Python
JavaScript
cURL

A Python environment with the requests library.

pip install requests

Authentication

Unlike the v1/responses and v1/chat/completions routes, the catalog endpoint is public and does not require an API key. You can query it directly, without an Authorization header.

If you also plan to call the models it lists, follow the AI Endpoints - Getting started guide to obtain an API key for those calls.

Listing all models

A single GET returns the whole catalog as a JSON array. The endpoint takes no query parameters.

Python
JavaScript
cURL
import requests

url = "https://catalog.endpoints.ai.ovh.net/rest/v1/models_v2"

response = requests.get(url)
response.raise_for_status()

catalog = response.json()
print(catalog)

Model metadata

Each entry in the array exposes the following fields:

  • id, name, description
  • available: whether the model can currently be called. Some entries are listed with available: false, so check this field before routing traffic to a model.
  • category: the model family, one of Large Language Models (LLM), Visual LLM, Reasoning LLM, Code LLM, Embeddings, Image Generation, LLM Guard, Speech To Text, or Text To Speech
  • tags: short labels such as Reasoning, Multimodal, Code Assistant, or Moderation
  • metadata.model_specs.capabilities: input_modality and output_modality, arrays such as ["text", "image"], plus the reasoning, function_calling, and streaming booleans
  • metadata.publishing_information: publisher, series, licence_name, model_publication_date
  • metadata.usage_information.pricing: price and unit for prompt and completion usage
  • metadata.usage_information.rate_limit: request-rate limits, split into rate_limit_api (with an API key), rate_limit_api_anonymous (without one), and rate_limit_playground

Use the capability fields to pick a model before calling the v1/responses route: an input_modality containing image for vision use cases, function_calling for tool calling, and reasoning for reasoning modes.

Filtering the catalog

Every call returns the full catalog, so filtering, searching, and sorting happen on the returned array. The examples below keep only vision-capable models, then look up a single entry by id.

Python
JavaScript
cURL
import requests

url = "https://catalog.endpoints.ai.ovh.net/rest/v1/models_v2"

response = requests.get(url)
response.raise_for_status()
catalog = response.json()

vision_models = [
    model for model in catalog
    if "image" in model["metadata"]["model_specs"]["capabilities"]["input_modality"]
]
print(vision_models)

model = next((m for m in catalog if m["id"] == "gpt-oss-20b"), None)
print(model)

Conclusion

Use the Catalog API to discover the available models and check their capabilities, features, pricing, and rate limits before calling the runtime API.

Go further

Using the Catalog API is required in Deploy Langfuse on OVHcloud MKS for LLM observability and AI cost tracking. That article pulls the metadata.usage_information.pricing block from the catalog to register each model's price with Langfuse, which then computes the cost of your AI Endpoints calls automatically.

For training or technical assistance implementing our solutions, contact your sales representative or visit our Professional Services page to request a quote and have your project analyzed by our experts.

Feedback

Please send us your questions, feedback, and suggestions to improve the service:

Was this page helpful?