diff --git a/changelog/2026/march.mdx b/changelog/2026/march.mdx new file mode 100644 index 00000000..f4ca8dd0 --- /dev/null +++ b/changelog/2026/march.mdx @@ -0,0 +1,189 @@ +--- +title: "March" +--- + +March brings stronger enterprise controls: **vault-backed credentials**, **gateway limits** that match how teams plan spend, and **guardrails** that align with your existing security stack. + +Alongside those themes, we’ve shipped significant upgrades across the platform, gateway, observability, guardrails, and provider ecosystem, empowering teams with more robust, enterprise-ready infrastructure. + +See what’s new: + +## Summary + +| Area | Updates | +| --- | --- | +| **Platform** | Secret References; weekly rate and budget windows (**rpw**) and endpoint-scoped rate limits | +| **Observability** | GCS log storage via GCP WIF from AWS; analytics for archived workspaces and workspace slugs in filters | +| **Guardrails** | Zscaler AI Guard; Akto Agentic Security; Bedrock Guardrails `customHost`; required metadata key–value guardrails | +| **Models and providers** | DeepInfra; DeepSeek; Vertex metadata labels, enterprise web search, AWS–GCP WIF; Azure AI Foundry rerank; Bedrock batch embeddings | + +## Platform + +### Secret References + +Instead of entering keys directly in Portkey, use Secret References to point Portkey at credentials stored in your external vault (AWS Secrets Manager, Azure Key Vault, or HashiCorp Vault). Map integrations and virtual keys with `secret_mappings` so Portkey fetches values at runtime. + + + Creating Secret References + + +This keeps sensitive material in infrastructure you already control and audit. + +[See how to configure Secret References](/product/enterprise-offering/secret-references) + +### Weekly and endpoint-scoped rate limits + +You can now set budget and usage limits on **weekly** windows (**rpw**), so caps align with how teams plan and review spend week over week, not just minute-by-minute or monthly aggregates. + + Weekly policies + + +You can also scope limits by **endpoint type**, so different API surfaces (for example chat completions, embeddings, or admin-style routes) can carry different limits instead of one global rule across everything. + +[Budget & rate limit policies](/product/enterprise-offering/budget-policies) + +## Observability + +### Log storage: GCP workload identity from AWS + +When the gateway runs in AWS but you write logs to Google Cloud Storage, configure `GCP_WIF_AUDIENCE` and `GCP_WIF_SERVICE_ACCOUNT_EMAIL` so the gateway authenticates through GCP Workload Identity Federation (`gcs_assume` style flows), without long-lived GCP keys sitting in AWS. + +This keeps cross-cloud log delivery out of static secrets in config or images. + +[See hybrid GCP deployment & `gcs_assume` log storage](/self-hosting/hybrid-deployments/gcp) + +### Analytics for archived workspaces + +Organization admins and owners can include archived workspaces in analytics graphs, groups, and summaries. Saved filters also accept workspace slugs alongside IDs. + +This keeps reporting and automation stable as teams wind down or rename workspaces. + +[See analytics export](/product/enterprise-offering/otel/analytics) + +## Guardrails + +### Zscaler AI Guard + +Connect Zscaler AI Guard so Zscaler Detections Policies apply to LLM inputs and outputs through `beforeRequestHook` and `afterRequestHook`, with a required `policyId` and optional `timeout` (default 10000 ms). + +This reuses the same policy class your security org already operates. + +[See how to connect Zscaler AI Guard](/integrations/guardrails/zscaler) + +### Akto Agentic Security + +Add Akto as a guardrails partner to scan LLM inputs and outputs for threats such as prompt injection and sensitive data leakage, with hooks and a configurable timeout (default 5000 ms). + +This aligns agentic traffic with how you scan other production services. + +[See how to add Akto](/integrations/guardrails/akto) + +### Bedrock Guardrails custom host + +Set `customHost` on the Bedrock guardrail plugin so checks hit private or regional Bedrock-compatible endpoints, not only default public URLs. + +This keeps guardrail evaluation on private or regional endpoints your network and security policies already trust, instead of the default public Bedrock URLs. + +[See how to configure Bedrock Guardrails](/integrations/guardrails/bedrock-guardrails) + +### Required metadata key–value guardrails + +You can configure guardrails to enforce required metadata on every request. If any required field is missing or invalid, the gateway blocks the request before it ever reaches the model. + +[Learn more](/product/guardrails) + +## Why customers choose Portkey! + + Weekly policies + + +## Models and providers + + + +## Bug fixes and improvements + +- **OpenTelemetry:** GenAI semantic spans follow semconv **1.40.0** for inference and embeddings, with OTEL exporter support for guardrail flows and custom resource attributes—making downstream APM and tracing easier to standardize on. +- **Header forwarding:** the gateway no longer forwards `x-portkey-forward-headxers`, preventing header-forwarding loops and obscured provenance in chained setups. +- **Streaming usage:** usage metadata is passed through for the Responses API and DeepSeek (and related routes) so streaming responses stay consistent for cost and usage reporting. +- **Together AI:** cost logging for video generation requests. +- **Anthropic / OpenAI-style image routes:** `strict` tool parameters and `response_format` handling for non–DALL·E image models where applicable. +- **Budget tracking:** fixes to avoid double-counting and data loss in the budget pipeline (where applicable in this release window). + +## Resources + +### Which AI Model are companies actually Paying For in 2026? + +Over 1 trillion AI tokens pass through Portkey every day, **The Neon Show** talks with **Rohit Agarwal (Portkey)** about which models enterprises actually pay for in production and what changes after the prototype ships. + + + +- **Blog:** [LLM Deployment Pipeline Explained Step by Step](https://portkey.ai/blog/llm-deployment/) +- **Blog:** [What is AI lifecycle management?](https://portkey.ai/blog/what-is-ai-lifecycle-management) +- **Blog:** [MCP vs Function Calling](https://portkey.ai/blog/mcp-vs-function-calling) +- **Blog:** [1 Trillion Tokens and the Death of the Chatbot](https://portkey.ai/blog/1-trillion-tokens-and-the-death-of-the-chatbot) + +## Community Contributors + +Shoutout to Pinji Chen (Tsinghua University) for identifying an edge case with custom host and header forwarding;grateful for contributors who help us improve! + +## Support + + + +Open an issue on GitHub + + +Get support in our Discord + + + diff --git a/docs.json b/docs.json index aee7f148..acf772b7 100644 --- a/docs.json +++ b/docs.json @@ -1275,6 +1275,7 @@ { "group": "2026", "pages": [ + "changelog/2026/march", "changelog/2026/february", "changelog/2026/january" ] diff --git a/images/changelog/test-litellm.png b/images/changelog/test-litellm.png new file mode 100644 index 00000000..6bfea66b Binary files /dev/null and b/images/changelog/test-litellm.png differ diff --git a/images/changelog/weekly-policies.png b/images/changelog/weekly-policies.png new file mode 100644 index 00000000..d0ba0df4 Binary files /dev/null and b/images/changelog/weekly-policies.png differ