v3

latestOpenAPI 3.1.02026-07-311,4541,5202.3 MB
models

Llm Models Models List

GET/POST /api/llm_models/models/ (platform - shows global + custom) GET/POST /api/llm-models/custom-models/ (public API - shows ONLY custom)

Unified endpoint for models.

GET: List models - Platform: global + org's custom (same for superadmin - no cross-org listing) - Public (custom-models path): ONLY org's custom models Filter with standard syntax: { "filters": { "affiliation_category": { "value": ["CUSTOM"] } } }

POST: - Without 'model_name' in body: Filter/list models (backward compatible) - With 'model_name' in body: Create model - organization_id=null + superadmin: Create global model - Otherwise: Create custom model for target org (superadmin can specify organization_id)

Note: Uses SuperAdminMixin for consistency, but queryset is intentionally the same for both regular users and superadmins (global + org's custom pattern).

get/llm_models/models/

Query parameters

pageinteger

A page number within the paginated result set.

page_sizeinteger

Number of results to return per page.

Headers

Authorizationstring required

JWT access token or Respan API key

Response

countinteger required
nextstring uri nullable
previousstring uri nullable
total_countinteger
current_filtersFilterParamDictPydantic

Pydantic model for FilterParamDict. A dictionary that maps metric names to their filter parameters.

Each key is a metric name (str), and each value can be:

  • A single MetricFilterParamPydantic (one condition)
  • A List[MetricFilterParamPydantic] (multiple conditions for same metric)
  • A FilterBundlePydantic (nested filter bundle with connector)

Note: Uses extra="allow" for dynamic metric name fields. The pydantic_extra annotation tells Pydantic what types to expect for extra fields, and generates typed additionalProperties in JSON Schema.

filters_dataPaginatedPublicModelListListFiltersData