> ## Documentation Index
> Fetch the complete documentation index at: https://bifrost-dev.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get complexity classifier status

> Returns the runtime status of the semantic complexity classifier (disabled, warming, ready, or failed), including warmup progress and whether a previous generation is still serving. When the llm fallback block is configured, also returns its readiness and the shipped default classification prompt.



## OpenAPI

````yaml /openapi/openapi.json get /api/routing/complexity-analyzer-status
openapi: 3.1.0
info:
  title: Bifrost API
  description: >
    Bifrost HTTP Transport API for AI model inference and gateway management.


    This API provides a unified interface for interacting with multiple AI
    providers

    including OpenAI, Anthropic, Bedrock, Gemini, and more through a single API,

    along with comprehensive management APIs for configuring and monitoring the
    gateway.


    ## API Structure


    ### Unified Inference API (`/v1/*`)

    The primary API using Bifrost's unified format. Model parameters use the
    format

    `provider/model` (e.g., `openai/gpt-4`, `anthropic/claude-3-opus`).


    ### Async Inference API (`/v1/async/*`)

    Submit inference requests for asynchronous execution. Returns a job ID
    immediately

    and allows polling for results. Supports all inference types except batches,
    files,

    and containers.


    ### Provider Integration APIs

    Native provider-format APIs for drop-in compatibility:

    - `/openai/*` - OpenAI-compatible API

    - `/anthropic/*` - Anthropic-compatible API

    - `/genai/*` - Google GenAI (Gemini) compatible API

    - `/bedrock/*` - AWS Bedrock compatible API

    - `/cohere/*` - Cohere compatible API


    ### Framework Integration APIs

    Multi-provider proxy endpoints for AI frameworks:

    - `/litellm/*` - LiteLLM proxy with all provider formats

    - `/langchain/*` - LangChain compatible endpoints

    - `/pydanticai/*` - PydanticAI compatible endpoints


    ### Management APIs (`/api/*`)

    APIs for managing and monitoring the Bifrost gateway:

    - `/api/config` - Configuration management

    - `/api/providers` - Provider and API key management

    - `/api/plugins` - Plugin management

    - `/api/governance/*` - Virtual keys, teams, customers, budgets, rate
    limits, routing rules, and pricing overrides

    - `/api/logs` - Log search and analytics

    - `/api/mcp/*` - MCP (Model Context Protocol) client management

    - `/api/session/*` - Authentication and session management

    - `/api/cache/*` - Cache management

    - `/health` - Health check endpoint


    ## Fallbacks

    Requests can include fallback models that will be tried if the primary model
    fails.
  version: 1.0.0
  contact:
    name: Contact Us
    url: https://getmaxim.ai/bifrost
  license:
    name: Apache 2.0
    url: https://opensource.org/licenses/Apache-2.0
servers:
  - url: '{baseUrl}'
    description: Your Bifrost instance
    variables:
      baseUrl:
        default: http://localhost:8080
        description: Base URL of your Bifrost instance (e.g. https://bifrost.mycompany.com)
security:
  - BearerAuth: []
  - BasicAuth: []
  - ApiKeyAuth: []
tags:
  - name: Models
    description: Model listing and information
  - name: Chat Completions
    description: Chat-based text generation
  - name: Text Completions
    description: Text completion generation
  - name: Responses
    description: OpenAI Responses API compatible endpoints
  - name: OCR
    description: Optical character recognition for documents and images
  - name: Rerank
    description: Document reranking by relevance to a query
  - name: Embeddings
    description: Text embedding generation
  - name: Images
    description: Image generations, editing, and variations
  - name: Videos
    description: Video generation and management
  - name: Audio
    description: Speech synthesis and transcription
  - name: Count Tokens
    description: Token counting utilities
  - name: Batch
    description: Batch processing operations
  - name: Files
    description: File management operations
  - name: Containers
    description: Container management operations
  - name: Async Jobs
    description: Asynchronous job submission and retrieval endpoints
  - name: Realtime
    description: Realtime WebSocket and WebRTC endpoints
  - name: OpenAI Integration
    description: OpenAI-compatible API endpoints (/openai/*)
  - name: Azure Integration
    description: Azure OpenAI integration endpoints
  - name: Anthropic Integration
    description: Anthropic-compatible API endpoints (/anthropic/*)
  - name: GenAI Integration
    description: Google GenAI (Gemini) compatible API endpoints (/genai/*)
  - name: Bedrock Integration
    description: AWS Bedrock compatible API endpoints (/bedrock/*)
  - name: Cohere Integration
    description: Cohere compatible API endpoints (/cohere/*)
  - name: LiteLLM Integration
    description: LiteLLM proxy endpoints with multi-provider support (/litellm/*)
  - name: LangChain Integration
    description: LangChain compatible endpoints with multi-provider support (/langchain/*)
  - name: PydanticAI Integration
    description: >-
      PydanticAI compatible endpoints with multi-provider support
      (/pydanticai/*)
  - name: Health
    description: Health check endpoints
  - name: Configuration
    description: Configuration management endpoints
  - name: Session
    description: Session and authentication endpoints
  - name: Providers
    description: Provider management endpoints
  - name: Plugins
    description: Plugin management endpoints
  - name: MCP
    description: Model Context Protocol endpoints
  - name: Governance
    description: Virtual keys, teams, and customers management
  - name: Routing
    description: Routing rules and complexity analyzer configuration
  - name: Logging
    description: Log search and management endpoints
  - name: Cache
    description: Cache management endpoints
  - name: Vault
    description: Vault secret management endpoints
  - name: Skills
    description: Skills Repository management, marketplace, and download endpoints
  - name: Audit Logs
    description: >-
      CADF-compliant audit log search, export, and signature verification
      endpoints
  - name: Webhooks
    description: Webhook endpoint management and signed async-job delivery history
  - name: Notifications
    description: >-
      Role-targeted dashboard notifications, delivered over the dashboard
      WebSocket
paths:
  /api/routing/complexity-analyzer-status:
    get:
      tags:
        - Routing
      summary: Get complexity classifier status
      description: >-
        Returns the runtime status of the semantic complexity classifier
        (disabled, warming, ready, or failed), including warmup progress and
        whether a previous generation is still serving. When the llm fallback
        block is configured, also returns its readiness and the shipped default
        classification prompt.
      operationId: getComplexityAnalyzerStatus
      responses:
        '200':
          description: Complexity classifier status retrieved successfully
          content:
            application/json:
              schema:
                type: object
                description: >-
                  Runtime status of the semantic complexity classifier and, when
                  configured, the LLM fallback classifier. Never contains
                  phrases, embeddings, or provider secrets.
                properties:
                  state:
                    type: string
                    enum:
                      - disabled
                      - warming
                      - ready
                      - failed
                    description: >-
                      disabled = no embedding configuration; warming = reference
                      phrases are being embedded; ready = serving the current
                      configuration; failed = the desired configuration failed
                      to warm
                  loaded:
                    type: integer
                    description: Reference phrases embedded so far in the current warmup
                  total:
                    type: integer
                    description: Total reference phrases to embed in the current warmup
                  serving_previous:
                    type: boolean
                    description: >-
                      When true with state=failed, the previous generation is
                      still serving while the new one failed to warm
                  failure_reason:
                    type: string
                    enum:
                      - authentication
                      - model_unavailable
                      - rate_limited
                      - timeout
                      - provider_unavailable
                      - vector_store_unavailable
                      - invalid_response
                      - unknown
                    description: >-
                      Category of a warmup failure when state=failed. Provider
                      and backend error bodies stay in server logs; this bounded
                      vocabulary is what status clients receive.
                  error:
                    type: string
                    description: Warmup failure detail when state=failed
                  cached_phrases:
                    type: integer
                    description: >-
                      How many phrase vectors the gateway currently holds in
                      process for the configured provider and model. The cache
                      is in-process only, since vectors cannot be read back out
                      of a vector store, so a restart empties it while the saved
                      phrases look unchanged. Zero means the next save re-embeds
                      every phrase regardless of what changed.
                  storage_mode:
                    type: string
                    enum:
                      - embedded
                      - vector_store
                    description: >-
                      Where exemplar vectors are actually kept, which is not
                      always what was configured.
                      semantic.vector_store=vector_store degrades to embedded
                      whenever no top-level vector store is configured, so this
                      reports what is in force rather than what was asked for.
                      Absent until a store has been resolved.
                  namespace:
                    type: string
                    description: >-
                      The fingerprinted namespace the serving generation
                      queries, for example BifrostComplexityRouter_<hash>. The
                      backend holds no phrase text, so this is the only handle
                      on the records the classifier owns in a shared vector
                      store. Absent while nothing is serving.
                  llm:
                    type: object
                    description: >-
                      Always present in the response. state is disabled when no
                      llm block is configured.
                    properties:
                      state:
                        type: string
                        enum:
                          - disabled
                          - ready
                        description: >-
                          disabled = no llm configuration; ready = the llm block
                          is configured. The classifier has no warmup, so it is
                          ready as soon as it is saved.
                  llm_default_prompt:
                    type: string
                    description: >-
                      The shipped classification guidance, served so a
                      configuration client can seed its prompt editor and offer
                      a reset without holding a copy that drifts from the
                      gateway's. Always present in the response, regardless of
                      whether an llm block is configured.
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BifrostError'
        '503':
          description: Config store not available
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BifrostError'
components:
  schemas:
    BifrostError:
      type: object
      description: Error response from Bifrost
      properties:
        event_id:
          type: string
        type:
          type: string
        is_bifrost_error:
          type: boolean
        status_code:
          type: integer
        error:
          $ref: '#/components/schemas/ErrorField'
        extra_fields:
          $ref: '#/components/schemas/BifrostErrorExtraFields'
    ErrorField:
      type: object
      properties:
        type:
          type: string
        code:
          type: string
        message:
          type: string
        param:
          type: string
        event_id:
          type: string
    BifrostErrorExtraFields:
      type: object
      properties:
        provider:
          $ref: '#/components/schemas/ModelProvider'
        model_requested:
          type: string
        request_type:
          type: string
    ModelProvider:
      type: string
      description: AI model provider identifier
      enum:
        - anthropic
        - azure
        - bedrock
        - bedrock_mantle
        - cerebras
        - cohere
        - deepseek
        - gemini
        - groq
        - mistral
        - ollama
        - opencode-go
        - opencode-zen
        - openai
        - parasail
        - perplexity
        - sgl
        - vertex
        - openrouter
        - elevenlabs
        - huggingface
        - nebius
        - xai
        - replicate
        - vllm
        - runway
        - runware
        - fireworks
        - sarvam
        - wafer
        - databricks
        - github-copilot
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >
        Bearer token authentication. Use your provider API key or Bifrost
        authentication token.

        Virtual keys (prefixed with `sk-bf-`) can also be passed here.
    BasicAuth:
      type: http
      scheme: basic
      description: |
        Basic authentication using username and password.
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: |
        API key authentication via the `x-api-key` header.
        Virtual keys (prefixed with `sk-bf-`) can also be passed here.

````