April 2026 Summaries
16 posts from OpenRouter
Filter
Month:
Year:
Post Summaries
Back to Blog
April's release spotlight by Brian Thomas highlights significant advancements, including video generation, enhanced workspace management, and a TypeScript SDK for transforming models into agents. The video generation feature supports multiple models and integrates seamlessly with other modalities like text and audio under a unified API. The new workspaces feature allows users to organize projects into isolated environments, enhancing multi-project management. The TypeScript SDK introduces a function, callModel, that streamlines tool calling and cost tracking for over 300 models, while new skills enable the creation of coding agents with terminal UIs or CLI tools. Additional updates include reranker models for better search relevance, model fusion for combined outputs, prompt history for auditing and iteration, and benchmarks for model comparison. The release also introduces major model updates, including OpenAI's GPT-5.5 and Anthropic's Claude Opus 4.7, which push the boundaries of current AI capabilities.
Apr 30, 2026
587 words in the original blog post.
Brian Thomas introduces a new response caching feature that allows users to cache identical requests made to the OpenRouter platform, leading to faster response times and zero token billing for repeated calls. When caching is enabled by adding a specific header or setting a preset configuration, OpenRouter generates a cache key by hashing the request details, enabling the immediate return of cached responses if identical requests have been made previously. This feature, which supports both streaming and non-streaming requests across various data types, significantly reduces response times from seconds to milliseconds without affecting the client code. While standard-sized requests are cacheable, very large multimodal payloads are not eligible. The caching mechanism is independent of prompt caching and skips the provider entirely, making it particularly beneficial for agent retries, test suites, and repeated context processing. The cache is specific to each API key, ensuring various endpoints like chat completions, responses, messages, and embeddings can utilize it, although some legacy endpoints are not supported yet. The feature is currently in beta and being monitored for performance, while cache activity is easily trackable through the Activity log.
Apr 30, 2026
648 words in the original blog post.
April's release highlights include advancements in video generation, workspaces for multi-project isolation, and a TypeScript SDK that enables any model to function as an agent. Users can now generate videos from text or images via a unified API, supporting multiple models with built-in job tracking and discovery features. Workspaces allow developers and enterprise teams to organize projects into separate environments with distinct API keys and observability features. The Agent SDK with callModel facilitates multi-turn tool calling and cost tracking across over 300 models, offering tools like create-agent-tui and create-headless-agent for building coding agents. Additional updates include reranker models for search relevance, model fusion for combining outputs, enhanced prompt history for auditing and replaying prompts, and knowledge cutoff dates for checking model currency. The release also features major model launches, such as OpenAI's GPT-5.5 and Anthropic's Claude Opus 4.7, indicating significant advancements in model capabilities.
Apr 30, 2026
535 words in the original blog post.
Response caching is a feature designed to dramatically reduce response times and costs by storing and reusing identical API call results, allowing for faster and free subsequent requests. By adding the X-OpenRouter-Cache: true header, users can enable caching for various requests like chat completions, messages, and embeddings, with cached responses returning in milliseconds instead of seconds. This process involves hashing the request details into a cache key, ensuring that if an identical request is made before expiration, the cached response is served without additional provider calls or token consumption. The feature supports both streaming and non-streaming requests and includes multimodal inputs, although very large payloads are excluded. Response caching differs from prompt caching by skipping the provider entirely, delivering the full response from OpenRouter's edge cache. It is particularly beneficial in scenarios such as agent retries, test suites, and repeated context processing, where cached responses provide efficiency and cost-effectiveness. Currently available across most generation endpoints, the feature is in beta, with performance monitoring ongoing to finalize the API surface.
Apr 30, 2026
662 words in the original blog post.
OpenRouter has partnered with Stripe Projects to enable users to set up an OpenRouter account from the command line, facilitating a seamless integration process without the need for a browser. By using the Stripe CLI, users can create an account, generate an API key, and manage billing through Stripe, thereby simplifying the process of accessing over 300 models across text, image, video, and audio formats. This setup supports both new and existing OpenRouter accounts, with credentials securely stored and scoped to each project to prevent unauthorized access. The Stripe Projects CLI also offers integration with multiple service providers, ensuring that users can manage their entire application stack from a single tool, with all credentials and billing centralized through Stripe. This approach not only streamlines onboarding and collaboration among team members but also maintains a consistent and auditable source of truth for both agents and human users.
Apr 29, 2026
540 words in the original blog post.
OpenRouter, in collaboration with Stripe Projects, allows users to set up an account via a single command in the command line, streamlining the process of account creation, API key generation, and billing setup through Stripe. By installing the Stripe CLI and using the command `stripe projects add openrouter/api`, users can provision an OpenRouter account, link it to their existing Stripe identity, and generate a secure API key stored in an encrypted vault, which is then synced to their environment files. This integration supports over 300 models, enabling applications to access various text, image, video, and audio models without needing to navigate through multiple interfaces. Existing OpenRouter users can link their accounts to Stripe Projects for improved credential management, while the CLI tool also allows for easy integration with other service providers in a streamlined manner, ensuring that credentials remain secure and auditable across different environments.
Apr 29, 2026
545 words in the original blog post.
Anthropic's introduction of a new tokenizer in Claude Opus 4.7 has led to an increase in the number of native tokens produced, resulting in a 12-27% rise in costs for prompts over 2K tokens, although short prompts saw improved cost efficiency due to significantly shorter completions. The tokenizer inflation, which causes Opus 4.7 to generate 32-45% more native tokens than Opus 4.6, is somewhat mitigated by prompt caching, which absorbs a substantial portion of the additional token cost. The study, based on OpenRouter's request logs, compared the usage of Opus 4.6 and 4.7 within a specific user cohort, revealing that the increased native token count from the new tokenizer, combined with completion length changes and cache absorption, contributed differently to cost impacts across various prompt sizes.
Apr 27, 2026
1,064 words in the original blog post.
Anthropic's Claude Opus 4.7 introduces an enhanced tokenizer that improves input comprehension but results in a higher token count, thereby increasing costs by 12–27% for inputs over 2,000 tokens, despite unchanged pricing per million tokens. The new tokenizer produces 32–45% more native tokens compared to Opus 4.6, with greater inflation for smaller prompts. However, prompt caching mitigates much of this inflation by discounting cached tokens by 90%, significantly reducing the cost impact, especially for longer prompts where up to 93% of extra tokens end up in the cache. Completion lengths vary with prompt size, as Opus 4.7 generates 62% fewer tokens for short prompts under 2,000 tokens, while longer prompts see a modest increase in token length. The study, based on over a million requests, uses OpenRouter as a consistent baseline for measuring tokenizer changes and normalizes costs by focusing on OpenRouter token counts.
Apr 27, 2026
1,093 words in the original blog post.
The Agent SDK from OpenRouter is a model-agnostic TypeScript toolkit designed to facilitate the construction of multi-turn agent workflows by executing an agentic loop across over 300 models. This loop involves calling a model, processing its output to execute tool requests, and iteratively feeding results back until a task's completion, while managing input validation, streaming, cost tracking, and stop conditions. The SDK allows developers to define tools with Zod schemas and ensures clear error messaging when models provide invalid inputs. It also supports composable stop conditions to prevent infinite loops and offers streaming capabilities to display progress over multiple steps. The SDK's model-agnostic nature enables seamless transitions between different models without altering agent code, while cost tracking features provide insight into expenses per agent run. Additionally, the SDK includes tool approval processes for real-world action-oriented agents, pausing execution for user decisions before resuming.
Apr 24, 2026
751 words in the original blog post.
The text discusses two skills, create-agent-tui and create-headless-agent, designed for building custom agent harnesses using the Agent SDK, which is compatible with any model on OpenRouter. The create-agent-tui skill scaffolds a terminal UI with customizable features, while create-headless-agent creates a headless agent for CLI tools and other backend applications, both generating complete TypeScript projects. These tools offer detailed customization options including tool display styles, input styles, loader animations, and ASCII banners, allowing users to tailor their projects to specific needs. The generated projects consist of two layers of code: an inner layer managed by the Agent SDK, which handles the agent loop and tool execution, and an outer layer generated by the skills that includes configuration and session management. The skills utilize established patterns from top production agent architectures and offer features like safe retries on transient API errors and structured output validation. These tools are particularly valuable for those seeking fine-grained control over their agents, integrating minimal harnesses into products, or enhancing their understanding of agent functionality and debugging.
Apr 24, 2026
1,149 words in the original blog post.
The Agent SDK, developed by OpenRouter, is a model-agnostic TypeScript software development kit designed to enhance chat completions by enabling multi-turn agent workflows, effectively transforming them into agentic behaviors. This involves a sophisticated loop that includes calling a model, executing tools based on structured tool calls, validating inputs and outputs, and repeating the process until completion. The SDK simplifies the creation of such workflows by managing input validation, streaming, cost tracking, and stop conditions, allowing developers to focus on specific application logic. It supports over 300 models on OpenRouter and offers features like streaming progress updates, cost tracking, and tool approval for real-world actions. By using callModel, developers can control the loop's execution with custom stop conditions to prevent endless loops and manage costs, while ensuring clean tool execution and error handling through Zod schemas. The SDK's flexibility allows users to switch between different models without altering their agent code, making it a versatile tool for building complex agent workflows.
Apr 24, 2026
742 words in the original blog post.
The text provides a comprehensive guide on building custom agent harnesses using the Agent SDK, emphasizing two skills: "create-agent-tui," which scaffolds a customizable terminal UI, and "create-headless-agent," designed for CLI tools and pipelines without a terminal UI. These tools enable users to generate TypeScript projects tailored to their needs, allowing fine-grained control over appearance, functionality, and integration with OpenRouter models. The process involves obtaining an OpenRouter API key, installing the desired skill, and generating a project that can be customized further, including adding domain-specific tools or adjusting configurations. The Agent SDK simplifies the process by managing the agentic loop, tool validation, streaming, and cost tracking, allowing users to focus on application-specific elements. Both skills rely on a two-layer architecture where the inner layer, the Agent SDK, handles core functionalities while the outer layer includes configuration and session management. The text also highlights production-ready features such as safe retry mechanisms and structured output validation, drawing from established agent architectures to ensure robustness and flexibility.
Apr 24, 2026
1,140 words in the original blog post.
OpenRouter's introduction of workspaces provides users with the ability to organize projects into separate environments, each equipped with its own set of API keys, routing defaults, guardrails, and observability features. This feature is particularly beneficial for developers managing multiple projects, enterprises operating across various teams, and agents handling different environments such as staging and production. Workspaces allow for independent configuration of settings like API keys, provider routing, and plugins, while maintaining shared account-level visibility for activity logs, billing, and privacy restrictions. Organization administrators have comprehensive control over all workspaces, including the ability to manage API keys, guardrails, and membership roles, though individual workspaces can enforce stricter policies within the boundaries set by account-level rules. Existing setups reside in a Default workspace, and users can create new workspaces through the dashboard or programmatically via the management API.
Apr 22, 2026
729 words in the original blog post.
Workspaces in OpenRouter provide a structured way to manage and organize projects, teams, or agents by allowing users to create separate environments with individual API keys, routing defaults, guardrails, and observability settings. This feature is beneficial for developers handling multiple projects, enterprises coordinating across various teams, or agents managing different environments like staging and production. Each workspace operates independently with specific configurations for API keys, routing, plugins, and member access, while overarching account-level settings such as billing, activity logs, and privacy restrictions apply across all workspaces. Workspace members have the ability to manage their own settings and view roles, while organization admins hold comprehensive control over all workspaces, including the power to create or delete them and manage member access. Workspaces inherit general data policies from the account level but can enforce stricter internal guardrails. Management keys can be utilized across workspaces for administrative tasks, and upon removal of a member from a workspace, their created API keys must be deleted, although their access to other workspaces remains unchanged. Existing OpenRouter setups default to a single workspace, and users have the option to provide feedback or ask questions through platforms like X, Discord, and LinkedIn.
Apr 22, 2026
664 words in the original blog post.
OpenRouter has launched a video generation feature that integrates video into its existing platform, which already supports text, images, audio, and more. This new API allows users to access various video models, such as Seedance, Veo, Wan, and Sora, enabling text-to-video and image-to-video functionalities. The platform standardizes parameters across models, simplifying the fragmented video API landscape and supporting asynchronous video generation by treating it as a job-based process. Users can programmatically discover model capabilities and utilize model-specific features through passthrough parameters. OpenRouter offers a unified API that automatically routes requests to the appropriate endpoints based on parameters, accommodating differences in model capabilities, such as video duration. A new Playground tab on model pages allows users to preview model outputs, and the multimodal workflow facilitates the integration of LLMs and image models to create detailed video prompts. An open-source demo application showcases this workflow, and feedback is encouraged via Discord, where users can also gain early access to future developments.
Apr 15, 2026
586 words in the original blog post.
Video generation has been integrated into OpenRouter, offering a unified API that simplifies access to various video models such as Seedance, Veo, Wan, and Sora. This platform enables seamless text-to-video and image-to-video conversions, alongside other media types, under a single governance and billing system. The API addresses the fragmentation in video generation by normalizing parameters like resolution and duration, and offering asynchronous generation with job tracking, capability discovery, and passthrough parameters for model-specific features. The system automatically routes requests to the correct endpoints and provides a comprehensive endpoint to inspect model capabilities, thus facilitating adaptation without errors. OpenRouter also supports multimodal workflows, allowing integration with other generative models like LLMs and image models, enhancing the creative process with precise control over video attributes. A demo app and code on GitHub illustrate the potential of these multimodal capabilities, inviting user feedback and participation in future developments.
Apr 15, 2026
562 words in the original blog post.