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

# v1.4.10

> v1.4.10 changelog - 2026-03-03

<Tabs>
  <Tab title="NPX">
    ```bash theme={null}
    npx -y @maximhq/bifrost --transport-version v1.4.10
    ```
  </Tab>

  <Tab title="Docker">
    ```bash theme={null}
    docker pull maximhq/bifrost:v1.4.10
    docker run -p 8080:8080 maximhq/bifrost:v1.4.10
    ```
  </Tab>
</Tabs>

<Update label="Bifrost(HTTP)" description="1.4.10">
  ## ✨ Features

  * **Response Header Forwarding** - Forward provider response headers back to clients for all providers
  * **Streaming Compression** - Added streaming compression support for provider responses
  * **Bedrock Invoke & Count Tokens** - Added bedrock invoke support and count tokens for bedrock provider
  * **Async Rerank** - Added async support for rerank requests
  * **Dashboard Graphs** - Added new dashboard graphs and graph fixes
  * **Gzip for Azure Speech** - Added gzip compression for azure speech streams
  * **Grayswan Guardrails** - Added grayswan guardrails configuration
  * **E2E Tests** - Added e2e tests for API
  * **Azure Managed Identity** - option to provider key form (DefaultAzureCredential when no API key or Entra ID)
  * **Bedrock STS AssumeRole** - support (role\_arn, external\_id, session\_name) in key config for cross-account access

  ## 🐞 Fixed

  * **Parallel Tool Call Deltas** - Route parallel tool call argument deltas by id/index to prevent argument merging during streaming (thanks [@KTS-o7](https://github.com/KTS-o7)!)
  * **Count Tokens Route** - Count tokens route fixed to match OpenAI schema
      <Warning>
        **Breaking change.** The count tokens route has moved from `/v1/count_tokens` to `/v1/responses/input_tokens`, and the request body field has been renamed from incorrect `messages` to `input`. Please update your clients accordingly.
      </Warning>
  * **Cached Tokens Handling** - Standardized cached tokens handling for all providers
      <Note>
        **Breaking change.** Cache tokens moved from usage top-level into `prompt_tokens_details` (Chat) and `input_tokens_details` (Responses), with standardized keys. If you have persisted data (logs, analytics, or custom storage), migrate: (1) move `usage.cache_read_input_tokens` → `usage.prompt_tokens_details.cached_read_tokens` or `usage.input_tokens_details.cached_read_tokens`; (2) move `usage.cache_creation_input_tokens` → `usage.prompt_tokens_details.cached_write_tokens` or `usage.input_tokens_details.cached_write_tokens`.
      </Note>
  * **Team update** fixes team update flow by handling nil customer id
  * **Bedrock Integration Routing** - Added missing routing logic for bedrock integration
  * **Nil Tool Properties** - Handle nil properties in tool function parameters
  * **Logprobs JSON Tag** - Fixed logprobs JSON tag in BifrostResponseChoice (thanks [@robechun](https://github.com/robechun)!)
  * **Provider Deletion** - Fixed delete providers bug, empty provider list bug, and deleting provider not loaded in memory
  * **Data Connectors** - Fixed enabling/disabling data connectors
  * **OpenRouter Keys** - Added proper status check for openrouter keys
  * **Governance Virtual Key** - Added governance wrong virtual key check
  * **Pricing Config** - Normalized framework pricing config
  * **Model Limit Validation** - Fixed model limit form validation
  * **Dashboard Height** - Minor dashboard height fix
</Update>

<Update label="Core" description="1.4.6">
  * feat: added response header forwarding for providers
  * feat: added streaming compression support for providers
  * feat: added bedrock invoke and count tokens support
  * feat: added gzip compression for azure speech streams
  * feat: add Azure DefaultAzureCredential support - use managed identity when no API key or Entra ID credentials provided
  * feat: add Bedrock STS AssumeRole support (role\_arn, external\_id, session\_name) in key config for cross-account access
  * fix: standardized cached tokens handling across all providers
      <Note>
        **Breaking change.** Cache tokens moved from usage top-level into `ChatPromptTokensDetails` (`prompt_tokens_details`) and `ResponsesResponseInputTokens` (`input_tokens_details`), with standardized keys. If you have persisted data (logs, analytics, or custom storage), migrate: (1) move `usage.cache_read_input_tokens` → `usage.prompt_tokens_details.cached_read_tokens` or `usage.input_tokens_details.cached_read_tokens`; (2) move `usage.cache_creation_input_tokens` → `usage.prompt_tokens_details.cached_write_tokens` or `usage.input_tokens_details.cached_write_tokens`.
      </Note>
  * fix: handle nil properties in tool function parameters
  * fix: fixed logprobs JSON tag in BifrostResponseChoice (thanks [@robechun](https://github.com/robechun)!)
  * fix: added proper status check for openrouter keys
</Update>

<Update label="Framework" description="1.2.25">
  * feat: added response header forwarding support
  * feat: added new dashboard graphs and graph fixes
  * feat: added bedrock invoke streaming support
  * fix: standardized cached tokens handling
  * fix: preserve parallel tool call deltas during streaming (thanks [@KTS-o7](https://github.com/KTS-o7)!)
  * fix: added proper status check for openrouter keys
  * chore: bump core to 1.4.6
</Update>

<Update label="governance" description="1.4.26">
  * feat: added governance wrong virtual key check
  * feat: added streaming compression support
  * fix: added bedrock integration support for routing in governance
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="jsonparser" description="1.4.25">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="litellmcompat" description="0.0.15">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="logging" description="1.4.25">
  * feat: added response header forwarding support
  * feat: added new dashboard graphs
  * fix: count tokens route fixes
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="maxim" description="1.5.24">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="mocker" description="1.4.25">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="otel" description="1.1.25">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="semanticcache" description="1.4.24">
  * fix: DefaultCacheKey dropped during JSON unmarshal (thanks [@Georgehe4](https://github.com/Georgehe4)!)
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>

<Update label="telemetry" description="1.4.26">
  * chore: bump core to 1.4.6 and framework to 1.2.25
</Update>
